sar*_*119 12 python symbolic-math sympy
请考虑以下示例
import sympy as sy
n = sy.symbols('n')
A = sy.MatrixSymbol("A",n,n)
B = sy.MatrixSymbol("B",n,n)
C = sy.MatrixSymbol("C",n,n)
M = A.inverse()*B.inverse() - A.inverse()*C*B.inverse()
B.inverse()*M.inverse()*A.inverse()
Run Code Online (Sandbox Code Playgroud)
打印出来的例子B^-1*(A^-1*B^-1 - A^-1*C*B^-1)^-1*A^-1.
SymPy可以简化表达式(I-C)^-1吗?如果没有,那么任何中间结果如何收集共同因素M?
解决此问题的方法是在表达式上使用字符串转换:
\n\nfrom sympy import *\n\nn = symbols(\'n\')\nA = MatrixSymbol("A",n,n)\nB = MatrixSymbol("B",n,n)\nC = MatrixSymbol("C",n,n)\nM = A.inverse()*B.inverse() - A.inverse()*C*B.inverse()\nexpression = B.inverse()*M.inverse()*A.inverse()\n\n# convert expression to string then simplify\nsimplify_expression = simplify(str(expression))\n\npprint(simplify_expression)\nRun Code Online (Sandbox Code Playgroud)\n\n输出:
\n\n -1 \n\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80\nC - 1\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
307 次 |
| 最近记录: |