chebyshev Beam size control
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
function Chebyshev_real = Chebyshev_real(N,ste)
R_dB=30;
R=10^(R_dB/20);
N=10;
m=N-1;
x0=cosh((1/m)*acosh(R));
u=sind(-89:0.05:89);
% u=-1:2/1800:1;
psi=pi*u;
x=x0*cos((psi-ste*pi/180*pi)/2);
% x=x0*cos(psi/2);
T_real(1,:)=ones(1,length(x));
T_real(2,:)=x;
if m>1
for i=3:m+1
T_real(i,:)=2*x.*T_real(i-1,:)-T_real(i-2,:);
end
else
end
B=(1/R)*T_real(m+1,:); % 1/R 은 normalize
plot(asind(u),10*log10((abs(B)).^2),'LineWidth',1.5)
[mx_a,id_a] = max(20*log10(abs(B)));
beam_rec_pos_deg = asind(u(id_a)); % beamformed position in deg
% P = mx_a;
xlim([-90 90])
ylim([-50 0])
% xlabel("\theta")
% ylabel("Normalized Pattern [dB]")
% title("Dolph-Chebyshev Beam Pattern")
% grid on
Chebyshev_real = B;
% save("Chev_30dB_m5deg_89","Chev_30dB_m5degree")
in this case I would like to weight 10 elements for this situation.
The weight is 10*1, but the Chevyshev beam is 1*3561.
Can't you just form the same shape with 10*3561 to multiply the weights?
0 Kommentare
Antworten (1)
Avadhoot
am 17 Apr. 2024
From your question I understand that you have calculated the Chebyshev beam output but you want it in a specific form so that you can multiply it with your weights. The current dimension of the output is 1x3561 but you have a 10x1 array to multiply it with so you need to extend the Chebyshev beam to match the dimensions. In this case you can just extend your matrix so that it will be of the required dimension i.e 10x3561. Refer to the below line of code to understand how to do it.
expanded_Chebyshev = repmat(Chebyshev_real, 10, 1);
This line of code uses "repmat" to replicate the "Chebyshev_real" array 10 times along the vertical axis, resulting in a 10x3561 matrix. Each row of "expanded_Chebyshev" will be identical and contain the original Chebyshev weights calculated for your beam pattern.
For more information on the "repmat" function, refer to the below documentation:
I hope this helps.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Beamforming and Direction of Arrival Estimation finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!