首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何简化包含sqrt(2)/2的表达式?

如何简化包含sqrt(2)/2的表达式?
EN

Stack Overflow用户
提问于 2016-05-22 19:46:57
回答 2查看 290关注 0票数 2

此代码:

代码语言:javascript
运行
复制
from sympy import *
x = Symbol('x', positive=True)
vp = Symbol('vp', positive=True)
num = integrate( (vp*sin(x))**2, (x, 0, 2*pi))
den = integrate(      1        , (x, 0, 2*pi))
print " num =",num
print " den =",den
vrms = sqrt(num/den)
print "vrms =",vrms
print "simplified vrms = ",simplify(vrms)

返回以下内容:

代码语言:javascript
运行
复制
 num = pi*vp**2
 den = 2*pi
vrms = sqrt(2)*vp/2
simplified vrms =  sqrt(2)*vp/2

我怎样才能让它走到最后一步?我想把这个还回去:

代码语言:javascript
运行
复制
vrms = vp/sqrt(2)
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-05-26 19:40:41

SymPy自动将有理数的有理幂规范化为具有正指数和约化幂的形式。因为这是自动发生的,所以在任何表达式中出现的每个这样的数字都会发生这种情况,这意味着没有办法使sqrt(2)/21/sqrt(2)中得到结果。

票数 2
EN

Stack Overflow用户

发布于 2016-05-24 14:46:40

所以看起来sqrt(2)/2比1/sqrt(2)简单。

谢谢三明治。

实际上,示例中的大部分代码都是多余的。我担心这些符号的定义和计算方法可能是相关的。

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

https://stackoverflow.com/questions/37378902

复制
相关文章

相似问题

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