⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 均匀面阵方向图.m

📁 matlab,线阵
💻 M
字号:
%  绘制水平面放置的平面阵的方向图 P34 图2.3.4(a)
clc; 
clear all; 
close all;

Row_N = 16; % 行阵元数
Col_N = 16; % 列阵元数
k = 0.5;    % k = d/lambda 
DOA_theta = 90;    % 方位角
DOA_fi = 0;      % 俯仰角 

% 形成方位角为theta,俯仰角位fi的波束的权值
Row_n = [0 : Row_N-1];      Col_n = [0 : Col_N-1];
W_Row = exp(-j*2*pi*k*Row_n'*cos(DOA_theta*pi/180)*cos(DOA_fi*pi/180)); 
W_Col = exp(-j*2*pi*k*Col_n'*sin(DOA_theta*pi/180)*cos(DOA_fi*pi/180)); 
% W_Col = exp(-j*2*pi*k*Col_n'*sin(DOA_fi*pi/180));   % 竖直放置

W_Row = chebwin(Row_N, 20) .* W_Row;    % 行加切比雪夫权
W_Col = chebwin(Col_N, 30) .* W_Col;    % 列加切比雪夫权
W = kron(W_Row, W_Col);                 % 合成的权值  N*N x 1

% 绘制水平面放置的平面阵的方向图
theta = linspace(0,180,180);
fi = linspace(0,90,90);
for i_theta = 1 : length(theta) 
    for i_fi = 1 : length(fi) 
        row_temp = exp(-j*2*pi*k*Row_n'*cos(theta(i_theta)*pi/180)*cos(fi(i_fi)*pi/180)); % 行导向矢量  N x 1
        col_temp = exp(-j*2*pi*k*Col_n'*sin(theta(i_theta)*pi/180)*cos(fi(i_fi)*pi/180)); % 列导向矢量  N x 1
%         col_temp = exp(-j*2*pi*k*Col_n'*sin(fi(i_fi)*pi/180));   % 竖直放置
        Y(i_theta,i_fi) = W'*kron(row_temp, col_temp);      % 合成的导向矢量  N*N x 1
    end
end

Y= abs(Y); Y = Y/max(max(Y));
Y = 20*log10(Y);
Y = (Y+60) .* ((Y+60)>0) - 60;  % 切图
% Z = Y + 60;
% Z = Z .* (Z > 0);
% Y = Z - 60;
figure;     mesh(fi, theta, Y);     view([66, 33]);
title('水平面放置时的面阵方向图'); 
axis([0 90 0 180 -60 0]);
xlabel('俯仰角/(\circ)');      ylabel('方位角(\circ)');     zlabel('P/dB');
figure;     contour(fi, theta, Y);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -