function tDFiltInt (LogFile)
% $Id: tDFiltInt.m,v 1.6 2009/06/23 15:46:54 pkabal Exp $
addpath ('..');
if (nargin == 0)
LogFile = [];
end
StopDiaryFile = StartDiaryFile(LogFile, 'tDFiltInt.ref');
fprintf ('==================================\n');
fprintf ('INT1: N=21 x4 interpolation filter, 0.3-0.4\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [1 1 0];
h = DFiltInt (4, 21, PSD);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT2: N=21 x4 interpolation filter, Delay = 9\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [1 1 0];
h = DFiltInt (4, 21, PSD, 9);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT3: N=21 x4 interpolation filter, Delay = 9.5\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [1 1 0];
h = DFiltInt (4, 21, PSD, 9.5);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT4: N=22 x4 interpolation filter, Delay = 9.75\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [10 10 0];
h = DFiltInt (4, 22, PSD, 9.75);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT5: N=22 x4 interpolation filter, spectrum transition 0.3-0.4\n');
clear PSD;
PSD.f = [0 3 4];
PSD.psd = [10 10 0];
h = DFiltInt (4, 22, PSD, 10.5, 10);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT6: N=23 x4 interpolation filter, spectrum transition 0.3-0.4\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [1 1 0];
h = DFiltInt (4, 23, PSD);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT7: N=31 x5 interpolation filter, spectrum to 0.25\n');
clear PSD;
PSD.f = [0 0.25];
PSD.psd = [100 100]; % Constant power spectrum
h = DFiltInt (5, 31, PSD);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT8: N=6, 1-step predictor\n');
clear PSD;
PSD.f = [0 0.25];
PSD.psd = [1 1];
h = DFiltInt (1, 6, PSD, -1);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT9: N=6, polyphase component of x5 interpolation filter\n');
clear PSD;
PSD.f = [0 0.25];
PSD.psd = [1 1];
h = DFiltInt (1, 6, PSD, 2.8);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT10: N=31 x5 interpolation filter, dc + spectrum to 0.25\n');
clear PSD;
PSD.f = [0 0.25];
PSD.psd = [100 100];
PSD.fcos = 10; % Aliased to dc
PSD.Pcos = 10000;
h = DFiltInt (5, 31, PSD);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INT11: N=31 x8 interpolation filter, N too large - nearly zero error\n');
clear PSD;
PSD.f = [0 0.055 0.06 0.065];
PSD.psd = [1 1 0.5 0];
h = DFiltInt (8, 31, PSD);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INF01: N=21 x4 interpolation filter, 0.3-0.36-0.4, g = -2\n');
clear PSD;
PSD.f = [0 0.3 0.36 0.4];
PSD.psd = [1 1 0.4 0];
h = DFiltInt (4, 21, PSD, [], 1, -2);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INF02: N=5, g=[0.125 1 0.125]\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [1 1 0];
h = DFiltInt (1, 5, PSD, [], 1, [0 0.125 1 0.125 0]);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INF03: N=5, Delay=1.25, g=[0.125 1 0.125]\n');
clear PSD;
PSD.f = [0 0.3 0.4];
PSD.psd = [1 1 0];
h = DFiltInt (1, 5, PSD, 1.5, 1, [0.125 1 0.125]);
PrMatrix (h');
fprintf ('==================================\n');
fprintf ('INF04: N=9, Delay=0, g=a^n\n');
clear PSD;
PSD.f = [0 0.5];
PSD.psd = [1 1]; % Constant power spectrum
a = 0.8;
Ng = 20;
g = a.^(0:Ng-1);
h = DFiltInt (1, 9, PSD, 0, 1, g);
PrMatrix (h');
% ----------
StopDiaryFile();
return