dankedir
2011-05-01, 11:29
clear;
R=10;%曲率半径
a=3.25;%圆面半径
b0=4.5;
f=2.5e6;
c=1.54e6;
b=c/f;%波长
k=2*pi/b;%角波数
x=1;
z=2;%x与z的值在循环中有变化的,这里取特殊值
syms R1 angle ;%积分变量
r0=sqrt(x*x+z*z);
r=sqrt(r0*r0-2*abs(x)*R1*sqrt(1-R1*R1/(4*R*R))*cos(angle)+R1*R1*(1-z/R));
y=int(R1*exp(-i*k*r)/r,R1,0,4.5);
p=int(y,angle,0,2*pi);
最后就是需要通过二重积分得到p的值,可是我这样写运行一直出问题,而且还死机。
我这是刚接触matlab,不太懂得很多,麻烦各位好心人帮帮忙,毕设很急的~~~
万分感谢~~~
R=10;%曲率半径
a=3.25;%圆面半径
b0=4.5;
f=2.5e6;
c=1.54e6;
b=c/f;%波长
k=2*pi/b;%角波数
x=1;
z=2;%x与z的值在循环中有变化的,这里取特殊值
syms R1 angle ;%积分变量
r0=sqrt(x*x+z*z);
r=sqrt(r0*r0-2*abs(x)*R1*sqrt(1-R1*R1/(4*R*R))*cos(angle)+R1*R1*(1-z/R));
y=int(R1*exp(-i*k*r)/r,R1,0,4.5);
p=int(y,angle,0,2*pi);
最后就是需要通过二重积分得到p的值,可是我这样写运行一直出问题,而且还死机。
我这是刚接触matlab,不太懂得很多,麻烦各位好心人帮帮忙,毕设很急的~~~
万分感谢~~~