I am working with an FMCW Radar Simulation, where I have generated 3 targets with slant ranges: 156m,137m 118m
The distances can be computed based on the formula,
Distance = (Bin_idx/Nrg * Fs) * (c / 2) / chirp_rate where, Nrg = 30000 samples along range, Fs = 25 MHz chirp_rate = 3 THz/s c = 3e8 m/s
Before Applying Stolt interpolation, I verified the ranges of Stolt interpolation was correct. However, after the Stolt interpolation, I noticed the 3 targets shifted to new range frequency bins. I am not sure why this occurs.
bin indices: 2832, 3295, 3762
bin indices: 5916, 6882, 7858
I have used this code section on pulsed radar simulation, and it does not cause any shifting. But I will include my Stolt Interpolation code in case there is a mistake with my implementation of it, which results in different observations for FMCW radars.
# Stolt interpolation
kstart = np.ceil(KYY[0,:].min())
kend = np.floor(KYY[Naz//2,:].max())
KYq = np.linspace(kstart, kend, int(Nrg)) # query points, create a uniformly sampled points
S_st = np.zeros((len(KYY), len(KYq)), dtype = 'complex_')
for i in range(Naz):
S_st[i,:] = np.interp(KYq, KYY[i,:], S_mf[i,:],
left = 0, right = 0)