3
シンボリックな表現を虚数で扱うためにSymPyコードを書くのは面倒です。SymPy虚数番号
まず、xとyを実数として取って、x = iyの解を探します。だから私はこれを次のように行うことができます。
x, y = sympy.symbols("x y", real=True)
print(sympy.solve([x-sympy.I*y]))
は(SymPyが解決0だからX-IY = 0 => X = IYでなければならないすべては、値のリストを取ります)。
x, y = sympy.symbols("x y")
print(sympy.solve([x-sympy.I*y, sympy.im(y), sympy.im(x)]))
それから、今SymPyが
[{re(y): y, re(x): I*y, im(x): 0, x: I*y, im(y): 0}]
私に指示し、これが技術的に正しいです、:SymPyは正しく、私はこの(理論的には同じ)の方法を行う場合は、私に
[{x: 0, y: 0}]
を教えてくれます私のためにすべてをしていない。これはSymPyの単なる制限ですか、あるいはこのように複雑なxとyを制約することでx = y = 0を与えることができますか?
SymPyは、複素数よりも実数の組を単純化することにより多くの成功を収めています。ここにはこの種の[別の例](http://stackoverflow.com/a/41324803)があります。 – FTP
別の例として、 'sympy.solve(x-sympy.conjugate(x))'はNotImplementedErrorをスローします。 – FTP
他の例では、配合を変更することによって、それを正しく解決することができます。それは何とかこれにすることができますか? –