【Sage数学库】使用 sympy.Symbol 和 sympy.Matrix 计算、打印【符号矩阵】;混合使用Sage和sympy;
# 使用 sympy.Symbol 和 sympy.Matrix 计算、打印【符号矩阵】;混合使用Sage和sympy;
# https://doc.sagemath.org/html/en/reference/calculus/sage/calculus/test_sympy.html
# 一定记得引用 sympy
import sympy
# 使用 sympy.Matrix 打印 数值矩阵
sympyMatrix = sympy.Matrix( [ [2, -1/2,-1], [-1/2, 1,0], [-1,0,4] ] )
print(type(sympyMatrix))
print("使用 sympy 里面的 矩阵:")
pprint(sympyMatrix)
# ★★★★★★★★ 使用 sympy.Symbol 和 sympy.Matrix 计算、打印【符号矩阵】 ★★★★★★★
p = sympy.Symbol("p")
q = sympy.Symbol("q")
q = 1-p
m = sympy.Matrix( [ [1, 0, 0, 0], [q, 0, p, 0], [0, q, 0, p], [0, 0, 0, 1] ] )
pprint("【齐次马尔可夫链】用符号p、q表示的【1步转移概率矩阵】m_symbol:")
pprint( m )
pprint("【齐次马尔可夫链】用符号p、q表示的【2步转移概率矩阵】m_2: ")
m_2 = m ** 2
pprint(m_2)
pprint("【齐次马尔可夫链】用符号p、q表示的【3步转移概率矩阵】m_3: ")
m_3 = m ** 3
pprint(m_3)
# ★★★★★★★ 混合使用 Sa