Plotting a doppler frequency hyperbola

7 views (last 30 days)
I am trying to plot a doppler frequency isodop hyperbola from the given eqiation h^2 = x^2*[(fdo/fd)^2 -1] -y^2 where fd is doppler frequency shift for signal at radar and fdo is doppler frequency shift for target in direction of motion. fd ranges from .4 Khz to 5.6 Khz in increments of .4 Khz. fdo is constnact at 6 KHz. I plotted the hyperbola function and I get the hyperbola curves but only for starting frequency of .4 KHz. I am trying to have it sweep through from .4 KHz to 5.6 KHz with increments of .4 KHz but I cannot seem to do it. I tried using linspace(.4,5.6,.4)*1e3 but that is not working. Any suggestions of what I may add to my existing code to accomplisfh this? Also, is there a way to plot only one line per freqnecy instead of multiple lines per frequency? I am open to any advice this forum may give me. Below is the current code I have.
fd = 400;
h = @(x,y) sqrt((x.^2).*((6000/fd).^2-1)-(y.^2));
figure(1);
fcontour(h);
set(gca, 'XLim',[0 40]);
set(gca, 'YLim',[-10 10]);
Thank you,
Jose

Accepted Answer

VBBV
VBBV on 1 Feb 2022
fd = linspace(400,5600,14); % Hz
for i = 1:length(fd)
h = @(x,y) sqrt((x.^2).*((6000/fd(i)).^2-1)-(y.^2));
subplot(4,4,i)
fcontour(h,[0 40 -10 10]);
title(['fd =',num2str(fd(i))])
end
you could try using for loop as above
  1 Comment
Jose Iglesias
Jose Iglesias on 1 Feb 2022
Thank you so much. Is there a way to plot all the frequencies into one pic like what is seen in the attached pic with one line per frequency?

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by