我在Python中使用Sympy进行一些Matrix操作。我发现Sympy中的Matrix无法自动处理复杂。举个简单的例子
Matrix([[-3007.52907429211/(2898092.62249243 - 706897.569072986*I) - 1/(-138.749949129781 - 2.9947535188934*I) + 5926.32998065723*I/(2898092.62249243 - 706897.569072986*I), 69.4741898294738/(-20767.5225629041 + 5543.00153023887*I) - 42.6513068752839*I/(-20767.5225629041 + 5543.00153023887*I)], [69.4741898294738/(-20767.5225629041 + 5543.00153023887*I) - 42.6513068752839*I/(-20767.5225629041 + 5543.00153023887*I), -1/(148.74433463588 - 43.1600457323684*I)]])
我尝试过.expand并且它不起作用。我认为必须有一种让Matrix自动计算复杂度的方法。请告诉我。谢谢!
答案 0 :(得分:1)
我假设您已导入I
,因为您没有报告堆栈跟踪类型错误。
在这种情况下,您需要将complex=True
参数添加到.expand()
m = <Your matrix values from above>
simplified_m = m.expand(complex=True)
我不是百分之百确定为什么这是必要的 - 如果背后的原因对你很重要,我可以进一步研究。