plot highest sidelobe level from the beampattern
3 views (last 30 days)
Show older comments
Angle=0*(pi/180);%angle of interest
D=500;%distance between ref. node and destination.
x1=600;%ref. node value.
y1=400;%ref. node value.
xd=x1+(D*cos(Angle)); %destination value.
yd=y1+(D*sin(Angle)); %destination value.
N=100;%number of elements.
freq=3e9;
c=3e8;
lambda=c/freq;
d_s=.1*lambda%inter-element spacing between sensor.
for n=1:N
x(n)=(x1+(n*(d_s)));%x axes value for N elements.
z(n)=y1;%y axes value for N elements.
d(n)= sqrt((yd-y1)^2+(xd-x(n))^2);%distance between destination and sensor.
t(n)= ((2*pi)/lambda)*(d(1)-d(n));%phase lag corresponding to the reference node.
c(n)=exp(-i*t(n));%weight
count=0;
for angle=0:360
count=count+1;
Xd=x1+(D*cos(angle*pi/180));
Yd=y1+(D*sin(angle*pi/180));
d1(n,count)= sqrt((Yd-y1)^2+(Xd-x(n))^2);
%d1(n,count)=sqrt(((y1+(D*sin(angle*pi/180)))-y1)^2 + (x1+(D*cos(angle*pi/180))-(x1+(n*(d_s))))^2);%distance between destination and sensor
k(n,count)=((2*pi)/lambda)*(d1(n,count)); %phase lag for each sensor.
y(n,count)=(exp(-i*k(n,count))*c(n)); %weight multiplication to correct the phase lag.
end
end
Y=sum(y);
YY=abs(Y);
figure(3);
plot(YY)
this is my code to plot the beampattern of an uniform array...now using the beampattern produced, i need to obtain the highest sidelobe level and plot it in a different graph. how do i do this?
0 Comments
Answers (0)
See Also
Categories
Find more on Array Geometries and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!