我正在尝试使用 Sympy 的solve() 方法求解方程组,而我的方程涉及变量的复共轭。这导致solve() 有时找不到我知道应该存在的解,而有时又会抛出错误。
我认为我的问题归结为以下情况。
from sympy import symbols, conjugate, solve, pprint
x = symbols('x')
x_conjugate = conjugate(x)
solution_1 = solve(x+x_conjugate,x)
pprint(solution_1)
solution_2 = solve(x-x_conjugate,x)
pprint(solution_2)
我不完全确定我期望这些输出的格式是什么,但方程 x+currence(x)=0 肯定有解(复平面中的整个 i 轴),并且方程 x-currence(x)=0 有整条实数线作为解。
我如何使用 Sympy 来解决类似这样的方程式,或者涉及类似方程式的系统?
我看到了这个问题,它给出了一个奇怪的解决方法,但这似乎不能令人满意,在处理我想要做的事情时有点不切实际。 如何在 python 中求解复杂方程?
你可以
x
用它的实部和虚部来表达。我将其z
称为z = x + I*y
:答案
z = I*y
是由于系统尚未确定。我将其定义
x
为complex
并继续如下:该
as_real_imag()
方法将表达式分为实部和虚部,它们都必须为零。如果你将a
和定义b
为实符号并构造,那么x = a+I*b
使用“直接”求解方法可能会更好: