1:设置 matlab 画图格式
clear;clc; % load("array.mat"); % Bestallarray=array; % rllofcircle(Bestallarray) %求阵列方向图以及峰值旁瓣电平 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%优化结果展示%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Bestallarray=polarPosition(); rll=rllofcircle(Bestallarray) %-----导出方向图 N_sam=; %采样点数 ,在ovalRSLLofCircle中是100 % u=-*MULTI:(/N_sam)*MULTI:(-/N_sam)*MULTI; %u=sin(sita)*cos(fai),U轴 u=-:/N_sam:-/N_sam;%u=sin(sita)*cos(fai),U轴 v=-:/N_sam:-/N_sam; %v=sin(sita)*sin(fai),V轴 u1=-:/N_sam:;%u=sin(sita)*cos(fai),U轴 v1=-:/N_sam:; %v=sin(sita)*sin(fai),V轴 [X,Y]=meshgrid(u,v); [X1,Y1]=meshgrid(u1,v1); FF=zeros(N_sam,N_sam);%采样矩阵 lamda=;%波长 fun_x=find(Bestallarray~=); %得到的结果为一列向量,有阵元的位置索引值,维数一般比quartered_matrix低,就是把 %没有阵元的位置去掉 q_position=[real(Bestallarray(fun_x)) imag((Bestallarray(fun_x)))]; %得到的结果为二维列向量,第一列幅值,第二列相位,行数和fun_x一样 %-----下面这段代码就是方向图的计算 公式()和()只是转换为在直角坐标下面计算 :N_sam :N_sam -(u(n))^)% 数学推导合理性保证,限定在单位圆内部 temp=; :length(fun_x)%把所有阵元的用上的,所以应该是整个圆平面 temp=temp+exp(j**pi*q_position(a,)*(cos(q_position(a,))*u(n)+sin(q_position(a,))*v(m))); %q_position(a,)=半径,q_position(a,)=角度0-2pi end FF(n,m)=temp;%加上圆心 else end end end FF(find(FF==))=eps; %eps是非常小的一个数 ff=*log10(abs(FF)/max(max(abs(FF))));%%归一化 bottom=-;%设置底平台电平 ff(find(ff<=-))=bottom;%最低电平设置为-80db %when fai= ---ff(m,:) ---u axis %when fai= ---ff(:,m) ---v axis when fai=----u=v m=ceil(find(ff==max(max(ff)))/N_sam);%在一个100*100的矩阵中找到最大值的位置 fai0=ff(m,:); fai90=ff(:,m); % %-----uv图 % figure % % plot(u(::end),fai0(::end),); % plot(u,fai0,'--g','LineWidth',0.8); % hold on % % plot(v(::end),fai90(::end),); % plot(v,fai90,); % legend('u=0','v=0'); % % %ylabel('F(u,v)/dB'); % %xlabel('μ,ν'); % % figure_FontSize=; % % set(get(gca,'XLabel'),'FontSize',figure_FontSize); % % set(get(gca,'YLabel'),'FontSize',figure_FontSize); % % ),'FontSize',figure_FontSize); % % ); % % xlabel('\theta'); % % ylabel('Radiation pattern (dB)'); % ylabel('阵列响应/dB'); % xlabel('{\itu},{\itv}'); % text(,) % text(,) % % ); % 设置坐标轴字体大小 % %-----方向图 % figure % mesh(X,Y,ff);%画出曲面图 % shading interp; % % colormap(gray); % % plot(Array(:,)',Array(:,2)','*'); % %-----导出最优阵列 % % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % % Bestallarray=Array; % xlabel('{\itu}=sin\theta cos φ'); % ylabel('{\itv}=sin\theta sin φ'); % % zlabel('Radiation pattern(dB)'); % zlabel('阵列响应/dB'); % % % ); % 设置坐标轴字体大小 % % % %-----第一象限方向图 % figure % mesh(X1,Y1,ff(:(length(u)/+),:(length(u)/+)));%画出曲面图 % shading interp; % % colormap(gray); % % plot(Array(:,)',Array(:,2)','*'); % %-----导出最优阵列 % % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % % Bestallarray=Array; % xlabel(); % ylabel(); % % zlabel('Radiation pattern(dB)'); % zlabel(); % % ); % 设置坐标轴字体大小 %-----uv图 figure plot(u,fai0,'--b','LineWidth',0.8); hold on plot(v,fai90,); % % plot(u(::end),fai0(::end),); % plot(u,fai0,'--g','LineWidth',0.8); lg=legend('{\itu}=0','{\itv}=0'); ) %设置legend的字体大小 %ylabel('F(u,v)/dB'); %xlabel('μ,ν'); figure_FontSize=; set(get(gca,'XLabel'),'FontSize',figure_FontSize); set(get(gca,'YLabel'),'FontSize',figure_FontSize); ),'FontSize',figure_FontSize); ); % xlabel('\theta'); % ylabel('Radiation pattern (dB)'); ylabel(); xlabel(); text() text() %-----方向图 figure mesh(X,Y,ff);%画出曲面图 shading interp; % colormap(gray); % plot(Array(:,)',Array(:,2)','*'); %-----导出最优阵列 % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % Bestallarray=Array; xlabel(); ylabel(); % zlabel('Radiation pattern(dB)'); zlabel(); %-----第一象限方向图 figure mesh(X1,Y1,ff(:(length(u)/+),:(length(u)/+)));%画出曲面图 shading interp; % colormap(gray); % plot(Array(:,)',Array(:,2)','*'); %-----导出最优阵列 % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % Bestallarray=Array; xlabel(); ylabel(); % zlabel('Radiation pattern(dB)'); zlabel();
2:
clear;clc; % load("array.mat"); % Bestallarray=array; % rllofcircle(Bestallarray) %求阵列方向图以及峰值旁瓣电平 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%优化结果展示%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Bestallarray=polarPosition(); rll=rllofcircle(Bestallarray) %-----导出方向图 N_sam=; %采样点数 ,在ovalRSLLofCircle中是100 % u=-*MULTI:(/N_sam)*MULTI:(-/N_sam)*MULTI; %u=sin(sita)*cos(fai),U轴 u=-:/N_sam:-/N_sam;%u=sin(sita)*cos(fai),U轴 v=-:/N_sam:-/N_sam; %v=sin(sita)*sin(fai),V轴 u1=-:/N_sam:;%u=sin(sita)*cos(fai),U轴 v1=-:/N_sam:; %v=sin(sita)*sin(fai),V轴 [X,Y]=meshgrid(u,v); [X1,Y1]=meshgrid(u1,v1); FF=zeros(N_sam,N_sam);%采样矩阵 lamda=;%波长 fun_x=find(Bestallarray~=); %得到的结果为一列向量,有阵元的位置索引值,维数一般比quartered_matrix低,就是把 %没有阵元的位置去掉 q_position=[real(Bestallarray(fun_x)) imag((Bestallarray(fun_x)))]; %得到的结果为二维列向量,第一列幅值,第二列相位,行数和fun_x一样 %-----下面这段代码就是方向图的计算 公式()和()只是转换为在直角坐标下面计算 :N_sam :N_sam -(u(n))^)% 数学推导合理性保证,限定在单位圆内部 temp=; :length(fun_x)%把所有阵元的用上的,所以应该是整个圆平面 temp=temp+exp(j**pi*q_position(a,)*(cos(q_position(a,))*u(n)+sin(q_position(a,))*v(m))); %q_position(a,)=半径,q_position(a,)=角度0-2pi end FF(n,m)=temp;%加上圆心 else end end end FF(find(FF==))=eps; %eps是非常小的一个数 ff=*log10(abs(FF)/max(max(abs(FF))));%%归一化 bottom=-;%设置底平台电平 ff(find(ff<=-))=bottom;%最低电平设置为-80db %when fai= ---ff(m,:) ---u axis %when fai= ---ff(:,m) ---v axis when fai=----u=v m=ceil(find(ff==max(max(ff)))/N_sam);%在一个100*100的矩阵中找到最大值的位置 fai0=ff(m,:); fai90=ff(:,m); % %-----uv图 % figure % % plot(u(::end),fai0(::end),); % plot(u,fai0,'--g','LineWidth',0.8); % hold on % % plot(v(::end),fai90(::end),); % plot(v,fai90,); % legend('u=0','v=0'); % % %ylabel('F(u,v)/dB'); % %xlabel('μ,ν'); % % figure_FontSize=; % % set(get(gca,'XLabel'),'FontSize',figure_FontSize); % % set(get(gca,'YLabel'),'FontSize',figure_FontSize); % % ),'FontSize',figure_FontSize); % % ); % % xlabel('\theta'); % % ylabel('Radiation pattern (dB)'); % ylabel('阵列响应/dB'); % xlabel('{\itu},{\itv}'); % text(,) % text(,) % % ); % 设置坐标轴字体大小 % %-----方向图 % figure % mesh(X,Y,ff);%画出曲面图 % shading interp; % % colormap(gray); % % plot(Array(:,)',Array(:,2)','*'); % %-----导出最优阵列 % % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % % Bestallarray=Array; % xlabel('{\itu}=sin\theta cos φ'); % ylabel('{\itv}=sin\theta sin φ'); % % zlabel('Radiation pattern(dB)'); % zlabel('阵列响应/dB'); % % % ); % 设置坐标轴字体大小 % % % %-----第一象限方向图 % figure % mesh(X1,Y1,ff(:(length(u)/+),:(length(u)/+)));%画出曲面图 % shading interp; % % colormap(gray); % % plot(Array(:,)',Array(:,2)','*'); % %-----导出最优阵列 % % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % % Bestallarray=Array; % xlabel(); % ylabel(); % % zlabel('Radiation pattern(dB)'); % zlabel(); % % ); % 设置坐标轴字体大小 %-----uv图 figure plot(u,fai0,'--b','LineWidth',0.7); hold on plot(v,fai90,); % % plot(u(::end),fai0(::end),); % plot(u,fai0,'--g','LineWidth',0.8); lg=legend('{\itu}=0','{\itv}=0'); % ) % %设置legend的字体大小,'FontWeight','bold' 给字体加粗 ) %设置legend的字体大小 %ylabel('F(u,v)/dB'); %xlabel('μ,ν'); figure_FontSize=; set(get(gca,'XLabel'),'FontSize',figure_FontSize); set(get(gca,'YLabel'),'FontSize',figure_FontSize); ),'FontSize',figure_FontSize); ); % xlabel('\theta'); % ylabel('Radiation pattern (dB)'); ylabel('阵列响应/dB','fontsize',figure_FontSize); xlabel('{\itu},{\itv}','Fontname', 'Times New Roman','fontsize',figure_FontSize); text(0.34,-8.4,'采样点数:1024','horiz','left','color','b','fontsize',figure_FontSize) text(0.34,-10.5,'PSLL:-13.33dB','horiz','left','color','b','fontsize',figure_FontSize) %-----方向图 figure mesh(X,Y,ff);%画出曲面图 shading interp; % colormap(gray); % plot(Array(:,)',Array(:,2)','*'); %-----导出最优阵列 % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % Bestallarray=Array; pos=axis; % xlabel( -]); % 设置坐标轴位置 xlabel( -]); % 设置坐标轴位置 ylabel(]); % 设置坐标轴位置 % ylabel('v=sin\theta sin φ','fontsize',figure_FontSize); % zlabel('Radiation pattern(dB)'); zlabel('阵列响应/dB','fontsize',figure_FontSize); ,,,], 'color','w') %-----第一象限方向图 figure mesh(X1,Y1,ff(:(length(u)/+),:(length(u)/+)));%画出曲面图 shading interp; % colormap(gray); % plot(Array(:,)',Array(:,2)','*'); %-----导出最优阵列 % [Array]=ArrayGroup(Population_Init,circle_num,,element_space); % Bestallarray=Array; % xlabel('u=sin\theta cos φ','Fontname', 'Times New Roman','fontsize',figure_FontSize); % ylabel('v=sin\theta sin φ','fontsize',figure_FontSize); xlabel( -]); % 设置坐标轴位置 ylabel( -]); % 设置坐标轴位置 % zlabel('Radiation pattern(dB)'); zlabel('阵列响应/dB','fontsize',figure_FontSize);