Optimizers in the NAF Study Model - edwardkort/WWIDesigner GitHub Wiki

Introduction

This page summarizes the optimizer tools that the NAF study model provides. Each optimizer varies specific aspects of the instrument geometry, to produce an instrument that plays as closely as possible to the selected tuning. The NAF study model currently supports the optimizers listed below.

Unless specified below, optimizers minimize the difference in cents between the target frequency and the frequency predicted by the NAF model, for all notes in the tuning file that have a target frequency. When optimizing the tuning of more than one note, the optimizer minimizes the sum of the squares of the differences, multiplied by the optimization weight of the note.

Fipple factor

Determines the fipple factor value for a given instrument. Ideally, this optimization should be run with a flute with no holes. However, if the flute and corresponding tuning file have holes, the optimizer will use the note/fingering with the lowest frequency to minimize the difference between this measured frequency in the tuning file and the prediction of the NAF model. Total number of dimensions: 1.

Used in calibrating the NAF model for a given instrument. The tuning file must specify actual, measured frequencies for the instrument, rather than target frequencies. And the instrument file must also specify actual, measured dimensions.

Grouped-hole position & size

Varies the total bore length and spacing between holes, and the sizes of holes, to minimize the tuning error. Hole-spacing groups (a set of adjacent holes with the same inter-hole spacing) are set in the interface. Total number of dimensions = 1 for no holes, and varies with the number of holes and groups.

Hole size & position

Varies the total bore length and spacing between holes, and the sizes of holes, to minimize the tuning error. The spacing between holes are varied independently of each other. Total number of dimensions = 2 * number of holes + 1.

Hole size only

Varies the sizes of all holes to minimize the tuning error. Total number of dimensions = number of holes.

Single taper, grouped hole

Introduces a three-section bore with a taper. Keeps the diameter at the bottom bore point and the position of the top bore point constant. Varies the following dimensions:

  • Diameter of the top section, relative to the diameter of the bottom section.
  • Position of the start of the taper, relative to the total bore length.
  • Length of the taper, relative to the bore length below the taper.
  • Total bore length.
  • Spacing between holes, with hole-spacing groups set in the interface.
  • Hole sizes.

Total number of dimensions = 4 for no holes, and varies with the number of holes and groups.

Single taper, hemi-head, grouped hole

Identical to the Single taper, grouped hole optimizer, but also introduces a hemispherical head at the top of the bore, with a radius equal to the radius of the top section.

Single taper, hemi-head, no hole grouping

Identical to the Single taper, no hole grouping optimizer, but also introduces a hemispherical head at the top of the bore, with a radius equal to the radius of the top section.

Single taper, no hole grouping

Introduces a three-section bore with a taper in the middle section. Keeps the diameter at the bottom bore point and the position of the top bore point constant. Varies the following dimensions:

  • Diameter of the top section, relative to the diameter of the bottom section.
  • Position of the start of the taper, relative to the total bore length.
  • Length of the taper, relative to the bore length below the taper.
  • Total bore length.
  • Spacing between holes, varied independently of each other.
  • Hole sizes.

Total number of dimensions = 2 * number of holes + 4.