首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >wxmaxima:如何检查复杂表达式?

wxmaxima:如何检查复杂表达式?
EN

Stack Overflow用户
提问于 2022-11-20 11:31:39
回答 1查看 15关注 0票数 0

我用wxMaxima写了一个复杂的表达式,我希望看到它以一种非常数学的形式打印出来,以检查我所做的工作是否有错误。

不幸的是,接收到的输出已经扩展,因此很难进行二次检查。

有什么办法可以防止自动计算,以看我以一种漂亮的数学形式介绍了什么吗?

我就是这么写的:

代码语言:javascript
复制
δ:1/(Fz*E_al*Jx_al)*(integrate(Fz^2*s^2, s, 0, b-c)+integrate((Fz*s-Vc*(s-b+c))^2, s, b-c, b-f)
   +integrate((Fz*s-Vc*(s-b+c)-Ve*(s-b+f))^2, s, b-f, b))+
1/(Fz*E_fe*Jx_fe)*(integrate((Vc*s)^2,s,0,c)+integrate((Vc*s-Vb*(s-c))^2,s,c,c+a));

这就是我拿回的:

代码语言:javascript
复制
((c*(Fz*b-(Fz*(b+a)*f)/(f+a))^2)/3+((c^3+3*Fz*a*c^2+3*Fz^2*a^2*c+(3*Fz^2-3*Fz+1)*a^3)*f^2+(((2-2*Fz)*a-2*Fz*b)*c^3+((-3*Fz^2-3*Fz)*a*b+(3*Fz-3*Fz^2)*a^2)*c^2-6*Fz^2*a^2*b*c+(Fz-3*Fz^2)*a^3*b+(3*Fz^2-5*Fz+2)*a^4)*f+(Fz^2*b^2+(2*Fz^2-2*Fz)*a*b+(Fz^2-2*Fz+1)*a^2)*c^3+(3*Fz^2*a*b^2+(3*Fz^2-3*Fz)*a^2*b)*c^2+3*Fz^2*a^2*b^2*c+Fz^2*a^3*b^2+(Fz-Fz^2)*a^4*b+(Fz^2-2*Fz+1)*a^5)/(3*f^2+6*a*f+3*a^2)-((c^3+3*Fz*a*c^2+3*Fz^2*a^2*c)*f^2+(((2-2*Fz)*a-2*Fz*b)*c^3+((-3*Fz^2-3*Fz)*a*b+(3*Fz-3*Fz^2)*a^2)*c^2-6*Fz^2*a^2*b*c)*f+(Fz^2*b^2+(2*Fz^2-2*Fz)*a*b+(Fz^2-2*Fz+1)*a^2)*c^3+(3*Fz^2*a*b^2+(3*Fz^2- [... ]

..。更多的是:不可能再检查一遍:

EN

回答 1

Stack Overflow用户

发布于 2022-11-23 05:46:57

如果您编写'integrate(...) (使用不匹配的单引号)而不是integrate(...),则不会调用integrate函数,表达式将以整数符号显示。在您展示的示例中,这将是

代码语言:javascript
复制
δ:1/(Fz*E_al*Jx_al)*('integrate(Fz^2*s^2, s, 0, b-c)+'integrate((Fz*s-Vc*(s-b+c))^2, s, b-c, b-f)
   +'integrate((Fz*s-Vc*(s-b+c)-Ve*(s-b+f))^2, s, b-f, b))+
1/(Fz*E_fe*Jx_fe)*('integrate((Vc*s)^2,s,0,c)+'integrate((Vc*s-Vb*(s-c))^2,s,c,c+a));

不匹配的单引号会取消对其他函数的计算,例如,如果您编写了一个函数,foo(x) := ...,那么'foo(123)将取消foo函数调用。在Maxima中,被不匹配单引号抑制的表达式称为名词表达式。

当您想要计算积分或其他名词表达式时,您可以说:ev(δ, nouns);

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74507703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档