update several posts, add matlab code to figs
This commit is contained in:
@@ -130,6 +130,48 @@ $$\begin{equation}
|
||||
|
||||
{width=1000px}
|
||||
|
||||
{% note primary MATLAB Code%}
|
||||
|
||||
``` matlab fig2_22.m
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Figure 2.22
|
||||
% Effect of element spacing on beam pattern
|
||||
% Lillian Xu
|
||||
% Last updated by K. Bell 7/22/01, 10/4/01
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
clear all
|
||||
close all
|
||||
|
||||
N=10;
|
||||
n=(-(N-1)/2:(N-1)/2)';
|
||||
w=ones(N,1)/N;
|
||||
u=-3:0.01:3;
|
||||
|
||||
d=[2/3 1/2];
|
||||
theta=[30 90];
|
||||
figure
|
||||
s = ['(a)';'(b)'];
|
||||
for m=1:2
|
||||
beam=(w.*exp(1i*2*pi*n*d(m)*sin(theta(m)/180*pi)))' ...
|
||||
*exp(1i*2*pi*n*d(m)*u);
|
||||
subplot(2,1,m);
|
||||
plot(u,20*log10(abs(beam)));
|
||||
hold on
|
||||
axis([-3 3 -25 5])
|
||||
ylabel('Beam pattern (dB)')
|
||||
xlabel('$u$','Interpreter','latex')
|
||||
text(0,-32,s(m,:),'HorizontalAlignment','center')
|
||||
% title(['N=',num2str(N),', d=',num2str(d(m),2),' lambda, theta-Bar=', ...
|
||||
% num2str(theta(m)),' degrees'])
|
||||
grid on
|
||||
end
|
||||
|
||||
set(gcf,'Position',[0 0 800 600])
|
||||
```
|
||||
|
||||
{% endnote %}
|
||||
|
||||
  通常,为了避免栅瓣进入可视区域,需要有
|
||||
|
||||
$$\begin{equation}
|
||||
@@ -161,6 +203,38 @@ $$\begin{equation}
|
||||
|
||||
{width=800px}
|
||||
|
||||
{% note primary MATLAB Code %}
|
||||
|
||||
``` matlab fig2_23.m
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Figure 2.23
|
||||
% Beam pattern for 10-element uniform array (d=lambda/2)
|
||||
% scanned to 30 degrees (60 degrees from broadside)
|
||||
% Xin Zhang 1/20/99
|
||||
% Last updated by K. Bell 6/25/01
|
||||
% Functions called: polardb
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
clear all
|
||||
close all
|
||||
|
||||
N = 10;
|
||||
n = (-(N-1)/2:(N-1)/2).';
|
||||
theta = pi*(-1:0.001:1);
|
||||
u = cos(theta);
|
||||
d = 1/2;
|
||||
vv = exp(1i*2*pi*d*n*u);
|
||||
theta_T = 30/180*pi;
|
||||
w = 1/N*ones(N,1).*exp(1i*n*pi*cos(theta_T));
|
||||
B = w'*vv;
|
||||
B = 10*log10(abs(B).^2);
|
||||
figure
|
||||
h=polardb(theta,B,-40);
|
||||
hold off
|
||||
```
|
||||
|
||||
{% endnote %}
|
||||
|
||||
  为了研究在 $\theta$ 空间的半功率带宽情况,我们利用式 $\eqref{SteeredBeamPatternInAngleDomain}$ 和 [$N \geqslant 10$ 时半功率带宽的估算式][],可以得到在 $u$ 空间的左右半功率点分别为
|
||||
|
||||
$$\begin{equation}
|
||||
@@ -196,6 +270,61 @@ $$\begin{equation} \label{HPBWOfUWLA}
|
||||
|
||||
{width=1000px}
|
||||
|
||||
{% note primary MATLAB Code %}
|
||||
|
||||
``` matlab fig2_24.m
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Figure 2.24
|
||||
% HPBW versus steering angle
|
||||
% Lillian Xu
|
||||
% Modified by Xin Zhang
|
||||
% Last updated by L. Xu 11/30/00, K. Bell 7/22/01, 10/4/01, 10/17/01
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
clear all;
|
||||
close all;
|
||||
|
||||
Nd_set=[1000:-5:700 700:-0.5:200 200:-0.05:20 15:-0.005:1];
|
||||
theta_deg=[2.5 5 10 20 30 45 90];
|
||||
%theta_deg=[2.5 5 10 20 30 45 60 90];
|
||||
theta_set=theta_deg*pi/180;
|
||||
figure
|
||||
for num=1:size(theta_set,2)
|
||||
theta=theta_set(num);
|
||||
bw=0;
|
||||
for num1=1:size(Nd_set,2)
|
||||
Nd=Nd_set(num1);
|
||||
r=cos(theta)+0.443/Nd;
|
||||
if abs(r)<=1
|
||||
bw(num1)=acos(r)-acos(cos(theta)-0.443/Nd);
|
||||
end
|
||||
end
|
||||
loglog(Nd_set(1:size(bw,2)),abs(bw*180/pi));
|
||||
hold on
|
||||
rightpoint=abs(bw(1)*180/pi);
|
||||
text(1040,rightpoint,[num2str(theta_deg(num)),'$^\circ$'],Interpreter='latex'); % used to be 7
|
||||
end
|
||||
axis([1 1000 0.04 100])
|
||||
xlabel('$Nd/\lambda$','Interpreter','latex')
|
||||
ylabel('3-dB beamwidth in degrees')
|
||||
|
||||
scanlimit=-acos(1-2*0.443./Nd_set);
|
||||
loglog(Nd_set,abs(scanlimit*180/pi),'--')
|
||||
|
||||
Endfire = 2*acos(1-0.433./Nd_set);
|
||||
loglog(Nd_set,abs(Endfire*180/pi))
|
||||
rightpoint=abs(Endfire(1)*180/pi);
|
||||
text(1040,rightpoint,'$\theta=0^\circ$',Interpreter='latex'); % used to be 7
|
||||
%title('HPBW versus steering angle: standard linear array with uniform weighting')
|
||||
text(12,35,'Endfire')
|
||||
text(12,14.4,'Scan limit')
|
||||
text(12,1.8,'Broadside')
|
||||
grid on;
|
||||
set(gcf,'Position',[0 0 800 500])
|
||||
```
|
||||
|
||||
{% endnote %}
|
||||
|
||||
  当波束调向到正侧向的附近($\bar{\theta}_\mathrm{T}$ 的值很小)且 $Nd \gg \lambda$ 时,$\theta_\mathrm{H}$ 很小,利用小角度展开形式得到
|
||||
|
||||
$$\begin{equation} \label{HPBWWithSmallAngle}
|
||||
@@ -220,6 +349,38 @@ $$\begin{equation} \label{HPBWOfEndfireUWLA}
|
||||
|
||||
{width=800px}
|
||||
|
||||
{% note primary MATLAB Code %}
|
||||
|
||||
``` matlab fig2_26.m
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% Figure 2.26
|
||||
% Beam pattern of a standard 10-element linear array
|
||||
% with uniform amplitude weighting at end-fire
|
||||
% Xin Zhang 1/20/99
|
||||
% Last updated by K. Bell 6/25/01
|
||||
% Functions called: polardb
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
|
||||
clear all
|
||||
close all
|
||||
|
||||
N = 10;
|
||||
n = (-(N-1)/2:(N-1)/2).';
|
||||
theta = pi*(-1:0.001:1);
|
||||
u = cos(theta);
|
||||
d = 1/2;
|
||||
vv = exp(1i*2*pi*d*n*u);
|
||||
theta_T = 0/180*pi;
|
||||
w = 1/N*ones(N,1).*exp(1i*n*pi*cos(theta_T));
|
||||
B = w'*vv;
|
||||
B = 10*log10(abs(B).^2);
|
||||
figure
|
||||
h=polardb(theta,B,-40);
|
||||
hold off
|
||||
```
|
||||
|
||||
{% endnote %}
|
||||
|
||||
可以把式 $\eqref{HPBWOfEndfireUWLA}$ 写成
|
||||
|
||||
$$\begin{equation}
|
||||
|
||||
Reference in New Issue
Block a user