声明一个 SymPy 符号非零

Upm*_*rab 1 python sympy

有没有办法在 sympy 中使 Symbol 非零?例如,如果我集成:

psi = a * cos( sqrt(2/mu)*x ) + b * sin( sqrt(2/mu)*x )
Psi = integrate(psi, x)
Run Code Online (Sandbox Code Playgroud)

它给了我两个结果,一个是 mu == 0,一个是 mu != 0。我只需要第二个。

小智 5

是的,您可以使用mu = Symbol('mu', nonzero=True).

from sympy import *
a,b,x = symbols('a b x')
mu = Symbol('mu', nonzero=True)
psi = a * cos( sqrt(2/mu)*x ) + b * sin( sqrt(2/mu)*x )
Psi = integrate(psi, x)
Run Code Online (Sandbox Code Playgroud)

现在Psi是单个表达式。

参考:假设

  • 值得注意的是:`nonzero=True` 表示“真实而不是零”,而“zero=False”仅表示“非零”。如果变量可以是复数值,则可能会有所不同。 (3认同)