// tlagrange.dsp - test Lagrange interpolation in Faust
import("filter.lib");
N = 16; % Allocated delay-line length
% Compare various orders:
D = 5.4;
process = 1-1' <: fdelay1(N,D),
fdelay2(N,D),
fdelay3(N,D),
fdelay4(N,D),
fdelay5(N,D);
// To see results:
// [in a shell]:
// faust2octave tlagrange.dsp
// [at the Octave command prompt]:
// plot(db(fft(faustout,1024)(1:512,:)));
// Alternate example for testing a range of 4th-order cases
// (change name to "process" and rename "process" above):
process2 = 1-1' <: fdelay4(N, 1.5),
fdelay4(N, 1.6),
fdelay4(N, 1.7),
fdelay4(N, 1.8),
fdelay4(N, 1.9),
fdelay4(N, 2.0),
fdelay4(N, 2.1),
fdelay4(N, 2.2),
fdelay4(N, 2.3),
fdelay4(N, 2.4),
fdelay4(N, 2.499),
fdelay4(N, 2.5);
|