perhaps the following helps, attempt to compare fft and czt:
Fs = 100e6;
fSz = 5000;
A=[1 .1 .01]
f=[5e6 15e6 25e6]
hsin1 = dsp.SineWave(A(1), f(1), 0, 'SamplesPerFrame', fSz, 'SampleRate', Fs);
hsin2 = dsp.SineWave(A(2), f(2), 0, 'SamplesPerFrame', fSz, 'SampleRate', Fs);
hsin3 = dsp.SineWave(A(3), f(3), 0, 'SamplesPerFrame', fSz, 'SampleRate', Fs);
hsin4 = dsp.SineWave(A4, f4(1), 0, 'SamplesPerFrame', fSz, 'SampleRate', Fs);
hsb = dsp.SpectrumAnalyzer;
hsb.SampleRate = Fs;
hsb.SpectralAverages = 1;
hsb.PlotAsTwoSidedSpectrum = false;
hsb.RBWSource = 'Auto';
hsb.PowerUnits = 'dBW';
hsb.Position = [749 227 976 721];
for idx = 1:1e4
y1 = step(dsp.SineWave(A(1), f(1), nph1, 'SamplesPerFrame', fSz, 'SampleRate', Fs));
y2 = step(dsp.SineWave(A(2), f(2), nph2, 'SamplesPerFrame', fSz, 'SampleRate', Fs));
y3 = step(dsp.SineWave(A(3), f(3), nph3, 'SamplesPerFrame', fSz, 'SampleRate', Fs));
y4 = step(dsp.SineWave(A4, f4(idx), nph4, 'SamplesPerFrame', fSz, 'SampleRate', Fs));
this is what's displayed when noise .0001*randn(fSz,1)
when you replace .0001*randn(fSz,1) with 0.1*randn(fSz,1);
Now attempt to compare fft to czt:
w = exp(-j*2*pi*(f2-f1)/(m*Fs));
a = exp(j*2*pi*f1/Fs);
Y2 = czt(y_log(ii,:),m,w,a);
While FFT goes from 0 to whatever max frequency, CZT can be customized to zoom on a narrow frequency range.
I chose f1=17e6 and f2=32e6 around 3rd tone while the fft is flat between 200 and 400 (200 and 400 are not frequencies but fft frequency numerals)
note that a=1 means it does not spiral away or inwards z plane circle radius 1, just zooming on a freq range.
While the FFT catches no 3rd tone
the czt caught something where 3rd (upper) tone expected
Now, back to your original question, is the ICZT possible? so far haven't found any source mentioning any implementation, probably because you need to know arc coefficients in advance, that if not known, have to be swept, and may not hit them at all even if trying to sweep the right arc coefficients range.
Rewording, to reverse the CZT you have to reverse this:
However, using default values, it is, knowing in advance the length of the sample
the fft of the back-to-time with -CZT gives 2 tones, which is not clear to tell the frequency, but at least you know there is something there anyway.
my guess: To catch the 4th tone, you may have to sweep different ramps around 3rd tone, and hopefully one of the ramps will show up the 4th tone, but it would take some time to implement such test.
closing joke: If you catch the USS Saratoga leaving Seattle port, don't want to know ;)
If you find this answer of any help solving this question, please click on the thumbs-up vote link,
thanks in advance