如何用 Sympy 求解矩阵方程(矩阵 = 0)?
How to solve a matrix equation (matrix = 0) with Sympy?
如果方程组写成 X 矩阵,我如何用 Sympy 求解方程组?
我有这个代码
from sympy import *
x1, x2 = symbols('x1 x2')
u1 = 0.0005 u2 = 0.0005
K = sqrt(2)*10^-3
A = 0.2
X = Matrix([40*u1/(A*x2) + 10*u2/(A*x2) - (x1*K*sqrt(x2))/(A*x2), u1/A + u2/A - K*sqrt(x2)/A])
如您所见,X 是一个矩阵。当 X 矩阵 = 0 时,我需要找到 x1 和 x2 的值。我将线性化该矩阵。
是的。我希望 X 矩阵采用这种形式。不是 Ax = b 形式。
solve(X)
returns [{x1: 25.0000000000000, x2: 0.500000000000000}]
等于 0 在 solve
中被隐式理解,如果你向它传递一堆符号表达式。
请注意,您的系统不是线性的:除以 x2 和 x2 的平方根。
如果方程组写成 X 矩阵,我如何用 Sympy 求解方程组?
我有这个代码
from sympy import *
x1, x2 = symbols('x1 x2')
u1 = 0.0005 u2 = 0.0005
K = sqrt(2)*10^-3
A = 0.2
X = Matrix([40*u1/(A*x2) + 10*u2/(A*x2) - (x1*K*sqrt(x2))/(A*x2), u1/A + u2/A - K*sqrt(x2)/A])
如您所见,X 是一个矩阵。当 X 矩阵 = 0 时,我需要找到 x1 和 x2 的值。我将线性化该矩阵。
是的。我希望 X 矩阵采用这种形式。不是 Ax = b 形式。
solve(X)
returns [{x1: 25.0000000000000, x2: 0.500000000000000}]
等于 0 在 solve
中被隐式理解,如果你向它传递一堆符号表达式。
请注意,您的系统不是线性的:除以 x2 和 x2 的平方根。