Dispersion Filter-Design

In the context of a digital waveguide string model, dispersion
associated with stiff strings can be supplied by an *allpass
filter* in the basic feedback loop. Methods for designing dispersion
allpass filters were summarized in §6.11.3. In this
section, we are mainly concerned with how to *specify* the
desired dispersion allpass filter for piano strings.

Perceptual studies regarding the audibility of inharmonicity in stringed instrument sounds [212] indicate that the just noticeable coefficient of inharmonicity is given approximately by

where is the fundamental frequency of the string vibration in hertz, and --the so-called

For a stiff string with Young's modulus , radius , length , and tension , the coefficient of inharmonicity is predicted from theory [145, p. 65],[212] to be

where is the string cross-sectional area, and is the radius of gyration of the string cross-section (see §B.4.9).

In general, when designing dispersion filters for vibrating string models, it is highly cost-effective to obtain an allpass filter which correctly tunes only the lowest-frequency partial overtones, where the number of partials correctly tuned is significantly less than the total number of partials present, as in [387].

Application of the method of [2] to piano-string dispersion-filter design is reported in [1].

A Faust implementation of a closed-form expression
[370] for dispersion allpass coefficients as a
function of inharmonicity coefficient
may be found in the function
`piano_dispersion_filter` within `effect.lib`.

[How to cite this work] [Order a printed hardcopy] [Comment on this page via email]

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University