作业帮 > 综合 > 作业

Matlab 求积分后出现警告Warning:Explicit integral could not be found

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/05/14 07:24:08
Matlab 求积分后出现警告Warning:Explicit integral could not be found
r=1;
syms Theta_2 a Phi_2 Phi
f1=sin(Theta_2)*sin(Theta_2)*cos(Phi_2);
f2=sqrt(r^2+a^2-2*r*a*sin(Theta_2)*cos(Phi-Phi_2));
f3=f1/f2;
f4=int(f3,Theta_2,0,pi);
f5=int(f4,Phi_2,0,pi);
本人刚入手matlab,运算上述积分,在对f5积分时,出现Warning:Explicit integral could not be found,
Matlab 求积分后出现警告Warning:Explicit integral could not be found
Warning:Explicit integral could not be found
这是提示你matlab求不出上述积分的符号解.
此时,你可求数值积分.
% 以下代码在7.1版以上均可运行.
r=1;
a=2; % 输入a的值
Phi=3; % 输入Phi的值
f1 = @(Theta_2,Phi_2) sin(Theta_2).*sin(Theta_2).*cos(Phi_2);
f2 = @(Theta_2,Phi_2) sqrt(r^2+a^2-2*r*a.*sin(Theta_2).*cos(Phi-Phi_2));
f3 = @(Theta_2,Phi_2) f1(Theta_2,Phi_2)./f2(Theta_2,Phi_2);
f5 = dblquad(f3,0,pi,0,pi)
再问: 我之前的想法是积分后求不同r和Phi时的函数值,采用数值积分后能求出值,但是我想对f5与r和Phi作图时,是不是就只能连续去不同的r值或Phi值呢? 还有我想知道假设我这样设置参数r=linspace(1,5,100);Phi=(0,pi,100),后面的f1,f2,f3,f5该如何改动之后就能求出其值呢? 谢谢
再答: http://hi.baidu.com/zzz700/blog/item/a5d6f77ae99fbf1628388ab1.html