gpt4 book ai didi

python - 如何简化 SymPy 中的矩阵表达式?

转载 作者:太空狗 更新时间:2023-10-29 17:51:15 24 4
gpt4 key购买 nike

考虑下面的例子

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()

示例打印出 B^-1*(A^-1*B^-1 - A^-1*C*B^-1)^-1*A^-1 .

SymPy 能否将表达式简化为(I-C)^-1?如果不是,那么任何中间结果如何,例如收集 M 中的公因子?

最佳答案

解决这个问题的方法是在表达式上使用字符串转换:

from sympy import *

n = symbols('n')
A = MatrixSymbol("A",n,n)
B = MatrixSymbol("B",n,n)
C = MatrixSymbol("C",n,n)
M = A.inverse()*B.inverse() - A.inverse()*C*B.inverse()
expression = B.inverse()*M.inverse()*A.inverse()

# convert expression to string then simplify
simplify_expression = simplify(str(expression))

pprint(simplify_expression)

输出:

 -1  
─────
C - 1

关于python - 如何简化 SymPy 中的矩阵表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51943198/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com