MATLAB Answers

How to obtain the coordinate of the maximum value in the Cross ambiguity function

15 views (last 30 days)
John Lee
John Lee on 19 Feb 2021
Commented: John Lee on 19 Feb 2021
I am trying to find delay and doppler shift between two received signals by using the cross ambiguity function as follows.
prf = [1/1e-3 1/1e-3];
Fs = 1/1e-5;
[afmag,dly,dpp] = ambgfun(r1,r2,Fs,prf); % two received signals: r1 and r2
So, I obtain 2D array of afmag besides dly and dpp.
I think the coordiate where afmag is the maximum is what I want.
I may be able to find afmag, but I am not sure how to find the corresponding "dly" and "dpp" at that point of "afmag".
So, I want to know the maximum value of "afmag", the values of "dly" and "dpp" at that maximum point.
Thank you for your help.

Answers (1)

David Goodmanson
David Goodmanson on 19 Feb 2021
Hi John,
Not having the phased array system toolbox I don't know how the plot axes are oriented, but I think one of the two possibilities below should work, assuming the basic idea is correct. You would have to check on a plot.
[afmag,dly,dpp] = ambgfun(r1,r2,Fs,prf); % two received signals: r1 and r2
[~,k] = max(afmag(:))
[i j] = ind2sub(size(afmag),k)
% either this
dly0 = dly(i)
dpp0 = dpp(j)
% or this
dly0 = dly(j)
dpp0 = dpp(i)
  1 Comment
John Lee
John Lee on 19 Feb 2021
Thanks, David,
Yes, but the problem is that we are not sure it is correct.
I don't know how to verify it because how the plot axes are oriented as you said.
Thnk you, anyway.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!