whan1367510
2009-12-30, 09:14
本人初学,这个问题一直解决不了!本人写的代码如下:
clc;
clf;
clear all;
m=linspace(0,pi/2,30); %仰角
n=linspace(0,2*pi,30);%方位角
[m,n]=meshgrid(m,n);
temp=0;
dx=2/100; %对半径的微分
dy=2*pi/100;%对角度的微分
for h=1:100
for g=1:100
temp=temp+exp((h-0.5)*dx*sin(m).*cos(n-(g-0.5)*dy)*j)*(h-0.5)*dx*dx*dy;
end
end
r=abs(temp);
% u=10*sin(m).*cos(n);
% v=10*sin(m).*sin(n);
%[x,y,z]=sph2cart(n,m,r);
x=r.*sin(m).*cos(n);
y=r.*sin(m).*sin(n);
z=r.*cos(m);
mesh(x,y,r);
这是一个均匀幅度和相位的圆口径的辐射方向图,可是我算出的结果与书中的不一样,可是发现不了我的程序有问题,可能是我的数值积分的算法有问题,希望各位帮我看看!谢谢啊 !
clc;
clf;
clear all;
m=linspace(0,pi/2,30); %仰角
n=linspace(0,2*pi,30);%方位角
[m,n]=meshgrid(m,n);
temp=0;
dx=2/100; %对半径的微分
dy=2*pi/100;%对角度的微分
for h=1:100
for g=1:100
temp=temp+exp((h-0.5)*dx*sin(m).*cos(n-(g-0.5)*dy)*j)*(h-0.5)*dx*dx*dy;
end
end
r=abs(temp);
% u=10*sin(m).*cos(n);
% v=10*sin(m).*sin(n);
%[x,y,z]=sph2cart(n,m,r);
x=r.*sin(m).*cos(n);
y=r.*sin(m).*sin(n);
z=r.*cos(m);
mesh(x,y,r);
这是一个均匀幅度和相位的圆口径的辐射方向图,可是我算出的结果与书中的不一样,可是发现不了我的程序有问题,可能是我的数值积分的算法有问题,希望各位帮我看看!谢谢啊 !