本文整理汇总了Python中sympy.matrices.Matrix.inv方法的典型用法代码示例。如果您正苦于以下问题:Python Matrix.inv方法的具体用法?Python Matrix.inv怎么用?Python Matrix.inv使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sympy.matrices.Matrix
的用法示例。
在下文中一共展示了Matrix.inv方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: demo_symetricA_Msquare
# 需要导入模块: from sympy.matrices import Matrix [as 别名]
# 或者: from sympy.matrices.Matrix import inv [as 别名]
def demo_symetricA_Msquare(A):
print "\n1)Any symmetric matrix A can be written as A = M^2:\n"\
"<= any symetric matrix A can be diagonalized as A = Q * D * Q.inv()\n"\
"<= D is diagonal matrix with eigen values\n"\
" Q is eigen vectors with norm 1\n"\
" Q.inv() == Q.T\n"\
"first take a look as eigen vectors:\n"
pprint(A.eigenvects())
print "\nthen sympy diagonalized result:\n"
pprint(A.diagonalize())
d = A.diagonalize()[1]
q = A.diagonalize()[0]
q = Matrix(q.rows, q.cols, lambda i, j: q[:,j].normalized()[i])
print "\nthen normalized Q:\n"
pprint(q)
print "\nthen the transpose of Q:\n"
pprint(q.T)
print "\nthen the inverse of Q:\n"
pprint(q.inv())
print "\nthen Q * D * Q.inv():\n"
pprint(q*d*q.inv())
print "\nif we define a new diagonal matrix Droot:\n"
d = d.applyfunc(lambda x: x**.5)
pprint(d)
print "\nthen let M = Q * Droot * Q.inv():\n"
m = q*d*q.inv()
pprint(m)
print "\nthen A = M*M:\n"
pprint(q*d*d*q.inv())
示例2: vcv2corr
# 需要导入模块: from sympy.matrices import Matrix [as 别名]
# 或者: from sympy.matrices.Matrix import inv [as 别名]
def vcv2corr(vcv):
n = vcv.rows
m = vcv.cols
if n != m:
raise ValueError('variance mattrix has to be square matrix')
def var(i, j):
if i == j:
return vcv[i, j]**.5
else:
return 0
D = Matrix(n, n, var)
corr = D.inv() * vcv * D.inv()
return corr, D
示例3: euler101
# 需要导入模块: from sympy.matrices import Matrix [as 别名]
# 或者: from sympy.matrices.Matrix import inv [as 别名]
def euler101():
#actual function that generates polynomials
def u(n):
return n ** 3
order = 3 # largest polynomial order of u
seq = [u(x) for x in range(1, order + 2)]
A = Matrix([[1 ** 1, 1], [8 ** 1, 1]][::-1])
b = Matrix([[x] for x in seq[:2]])
return A.inv() * b