matlab求绝对值时一直运行,不出结果
代码:
clear;
r1=1;
r2=2^0.5;
R=1;
u1=1;
u2=-1;
us=0;
uz1=us-u1;
uz2=us-u2;
ud=1.27;
Ud=abs(ud);
a0=asin(0.4);
s0=1/(4*(sin(a0/2))^2);
syms s;
ss=s+2*s0;
syms m;
l=m;
L=abs(l);
v=-10:0.1:10;
a1=0;
b1=2*pi;
syms x1;
y=exp(1i.*v.cos(x1));
result=int(y,a1,b1);
J0=1/(2pi).*result;
y1=J0.(1/2UdL(ss-l^2/4)^0.5);
w=asin((1-(s+2s0))/(L(ss-l^2/4)^0.5));
a2=pi/2-w;
b2=pi/2+w;
syms x2;
y=cos(1/2UdL*(ss-l^2/4)^0.5cos(x2));
result=int(y,a2,b2);
y2=1/piresult;
if11=le(l.^2/4,ss);
if12=le(ss,l-L*(1-L/2));
if1=and(if11,if12);
if21=le(1-L*(1-L/2),ss);
if22=le(ss,1);
if2=and(if21,if22);
f3=y1if1+y2if2;
a3=0-2s0;
b3=1-2s0;
y=f3exp(1i(uz1+ud/2)s);
result1=int(y,s,a3,b3);
y=f3exp(1i*(uz2+ud/2)s);
result2=int(y,s,a3,b3);
y=f3exp(1i*(uz1-ud/2)s);
result3=int(y,s,a3,b3);
y=f3exp(1i*(uz2-ud/2)*s);
result4=int(y,s,a3,b3);
a4=-2;
b4=2;
y=(r1.*result1-r2.*result2)/m.sin(v.m);
result=int(y,m,a4,b4);
A=r1sinc(uz1+ud/2)+r2sinc(uz2+ud/2)+2/pi.*result;
Ia=abs(A);
IA=(Ia).^2;
y=(r1.*result3-r2.*result4)/m.sin(v.m);
result=int(y,m,a4,b4);
B=r1sinc(uz1-ud/2)+r2sinc(uz2-ud/2)+2/pi.*result;
Ib=abs(B);
IB=(Ib).^2;
你这好长啊,就是最后绝对值部分不行吗