PDA

查看完整版本 : [求助]不定积分算出来的结果为复数


pizizhou
2008-07-08, 11:01
程序如下:
syms t a b aa bb cc H u;
a=4200;b=2400;H=10200;
k=0.4829;
cc=0.449874264; %倾角gama
u=28.9;%偏心矩
rou=sqrt((a*sin(t))^2+(b*cos(t))^2);
L1=0.199533834*cos(t)+0.02077658*(cos(t))^3+0.0052831*(cos(t))^5;
L2=L1+0.001801055*(cos(t))^7+0.000708066*(cos(t))^9+0.000299304*(cos(t))^11;
Lt=a*0.013970421*t*180/pi-a*sin(t)*L2; %利用近似公式计算弧长
kt=H/4-k*Lt;

%m1aa0=-kt*a*sin(t)*cos(cc)/rou+a*cos(t)*sin(cc);
%mqaa60=(0.5*rou+u*(a^2+b^2)/(2*a*b)+u^2/rou)*sin(2*t);

m1aa0=-kt*a*sin(t)*cos(cc)/rou;
mqaa60=u^2/rou*sin(t)*cos(t);

m1aq7=int(m1aa0*mqaa60,t,0,pi/2);
vpa(m1aq7,12)


此时积分结果为复数:-122.360887054-.437256737137e-9*i
奇怪的是,假如把其中的m1aa0,mqaa60换成%后面的表达式,则计算结果为一实数:381974.875637

请教,这是为什么?
数值积分怎么会出现复数?