why conj is used in this example?(Scan_Radar_Using_a_Uniform_Rectangular_Array)
Ältere Kommentare anzeigen
when i learn example in matlab: Scan_Radar_Using_a_Uniform_Rectangular_Array.
I have a question,why conj is used in this code?

In order to understand this question.I have tried phased.SteeringVector and phased.PhaseShiftBeamformer function. When scan_angle is 45(deg),the pattern excited by weights obtained by these functions is showned below.At the same time, it shows that when conj is used , the main lobe is directed to -45(deg).

In this way,why conj is used in the example to detect target?(Scan_Radar_Using_a_Uniform_Rectangular_Array)
Antworten (1)
Honglei Chen
am 8 Mai 2017
0 Stimmen
The confusion probably comes from the fact that the weights in radiator and pattern plot get treated slightly different.
In a beam pattern plot, the convention is to do an inner product of the steering vector and the signal vector, therefore the conjugate is automatically applied during the inner product stage.
However, in radiator, the weights are what gets directly applied to the signal. At each element, you can think of that a weight gets multiplied to the signal, it may or may not be the steering vector. so it needs a conjugate to point to the right direction.
HTH
10 Kommentare
Xiaodi Lin
am 8 Mai 2017
Honglei Chen
am 9 Mai 2017
How do you generate xr_doa?
Xiaodi Lin
am 9 Mai 2017
Honglei Chen
am 9 Mai 2017
If you don't mind, could you share the script? It's hard to come up what's wrong by just looking at the code. thanks
Xiaodi Lin
am 9 Mai 2017
Honglei Chen
am 10 Mai 2017
You can send it to me via my author page or just upload it here. You can always delete it afterwards
Xiaodi Lin
am 10 Mai 2017
Honglei Chen
am 11 Mai 2017
Your file turns out to be just one line and I don't know how to break it down. Could you resend it with correct format? Or maybe attach or upload? Thanks
Honglei Chen
am 17 Mai 2017
This is because you passed the signal through the dechirp. If you look at the help of dechirp, it shows that the signal gets conjugated. So if you want to use dechirped signal to do the DOA estimation, you need to conjugate it again, like
xr_doa = conj(xr_doa_up);
Alternatively, you can just use the signal before the dechirp, like
[y_doa,doas] = step(hdoa,xt);
HTH
Xiaodi Lin
am 19 Mai 2017
Kategorien
Mehr zu Range and Doppler Estimation finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



