如何解决SymPy 可以简化包含复底指数的实数表达式吗?
下面的程序构造了一个向量 S。
from sympy import *
n = symbols("n",integer=True)
M = Matrix(sympify([["1","-1/3"],["1/3","8/9"]]))
A0 = Matrix(sympify(["1","1"]))
S = M ** n
S = S * A0
print(simplify(S[0]))
print(simplify(S[1]))
S[0] = 104976 ** (-n) * (-14 * (99144 - 5832 * sqrt(35) * I) ** n - 4 * sqrt(35) * I * (99144 - 5832 * sqrt(35) * I) ** n + 21 * (99144 + 5832 * sqrt(35) * I) ** n - 3 * sqrt(35) * I * (99144 + 5832 * sqrt(35) * I) ** n) / (7 * (1 - sqrt(35) * I))
S[1] = 5832 ** (-n) * (7 * (5508 - 324 * sqrt(35) * I) ** n + sqrt(35) * I * (5508 - 324 * sqrt(35)*I) ** n + 7 * (5508 + 324 * sqrt(35) * I) ** n - sqrt(35) * I * (5508 + 324 * sqrt(35) * I) ** n) / 14
向量的两个分量是带有自由符号 n
的表达式。通过构造,这两个表达式对于所有整数 n
都是实数。但是,表达式包含虚数单位,例如在子表达式 (99144 - 5832*sqrt(35)*I)**n
中。有没有办法简化 S
使其不包含虚数单位?我已经尝试过使用 as_real_imag()
但没有用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。