微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 matlab 中对符号值使用积分给出包含符号值而不是数字值的结果

如何解决在 matlab 中对符号值使用积分给出包含符号值而不是数字值的结果

我正在尝试使用 int(expr(r),var(=r),a,b) 来整合一个表达式,该表达式是 r 上的符号值“r”的函数,从定义的数值 ai 到 ba。我得到的结果仍然包含符号值 r。我做错了什么?

我的代码:(c,a1,a2,a3,p,A,B 和 gamma 都是常数值)

ai = 1.6e-3;
ba = sqrt(ai.^2 +(B.^2-A.^2)/gamma);    
R = sqrt(gamma.*(r.^2 - ai.^2) +A.^2);    
ERR = (R.^2)./(2.*(gamma.*r).^2)-0.5;     
Ephi = ((gamma.*r).^2)./(2.*(R.^2))-0.5;   
Q = a1.*(ERR.^2) + a2.*(Ephi.^2) + 2.*a4.*ERR.*Ephi;    
W = c.*.5.*exp(Q);    
DWR = (2.*a1.*ERR + 2.*a4.*Ephi).*W;   
DWP = (2.*a2.*Ephi + 2.*a4.*ERR).*W;   
eqintegral = (((r.*gamma).^2)./(R.^2))*DWP-((R.^2)./((r.*gamma).^2))*DWR;    
pi = int(eqintegral,r,ai,ba);

描述我的意图的更简单的形式,我按预期获得数值:

syms r;
a = 5;
b = a*5;
g = sqrt(r);
f = r.^2;
D = 4+6*r;
eqintegral = (f*g)/D;
pi = int(eqintegral,b);
valpi = double(pi);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。