Crossin的编程教室

标题: 关于矩阵求逆 [打印本页]

作者: 那小子真黑    时间: 2020-4-6 14:48
标题: 关于矩阵求逆
想请问下含有变量的矩阵如何求逆矩阵?
CM  =[[cos(theta), cos(theta-2*pi/3.), cos(theta+2*pi/3.), cos(theta-pi/6.), cos(theta-5*pi/6.),cos(theta+pi/2.)],
       [-sin(theta),  -sin(theta-2*pi/3.), -sin(theta+2*pi/3.), -sin(theta-pi/6.),-sin(theta+pi/2.), -sin(theta+pi/2.)],
       [1,  -0.5, -0.5,-rsqrt1 ,rsqrt1 ,0],
       [0, -rsqrt1 ,rsqrt1 , 0.5 , 0.5 ,-1],
       [1, 1, 1, 0, 0, 0 ],
       [0, 0, 0, 1, 1,1]]
矩阵含有余弦函数,theta是未知数,


作者: crossin先生    时间: 2020-4-7 14:03
建议你用 numpy 模块,求逆矩阵只要一行代码
网上搜下“python 逆矩阵”就有一堆演示代码

然后,矩阵里有变量对于计算没有任何影响。变量在执行时都要赋值的。你不赋值的话,那就不是逆矩阵的问题了,那本来就没法执行代码
作者: crossin先生    时间: 2020-4-7 14:03
https://www.cnblogs.com/chamie/p/4870078.html
作者: 那小子真黑    时间: 2020-6-18 15:50
本帖最后由 那小子真黑 于 2020-6-19 13:36 编辑

i
作者: 那小子真黑    时间: 2020-6-18 15:50
本帖最后由 那小子真黑 于 2020-6-19 13:38 编辑
crossin先生 发表于 2020-4-7 14:03
https://www.cnblogs.com/chamie/p/4870078.html

import numpy as np
C = (1/3)*6**0.5*np.array([[0.9914448614, 0.1305261922],
              [-0.3826834324, -0.9238795325],
              [-0.608761429, 0.7933533403]])
Luvw = np.array([[6.1109e-5, -2.3866e-5, -2.3883e-5],
              [-2.3866e-5, 6.1167e-5, -2.3925e-5],
              [-2.3883e-5, -2.3925e-5, 6.1207e-5]])

np.set_printoptions(suppress=True)
Ct = print(Luvw.T)
L = np.dot(Ct,Luvw)
L1 = np.dot(L,C)
print(L1)
、、、、、、、、、、、、、、、、、
上面的代码是想实现矩阵C的转置矩阵乘以Luvw矩阵乘以C矩阵,但运行总报错,不知道如何改正。
作者: crossin先生    时间: 2020-6-19 14:29
那小子真黑 发表于 2020-6-18 15:50
import numpy as np
C = (1/3)*6**0.5*np.array([[0.9914448614, 0.1305261922],
              [-0.38268 ...

Ct = Luvw.T

不要加print,print是没有返回值的。如果想看结果就写

Ct = Luvw.T
print(Ct)
作者: 那小子真黑    时间: 2020-6-19 17:39
crossin先生 发表于 2020-6-19 14:29
Ct = Luvw.T

不要加print,print是没有返回值的。如果想看结果就写

好的,我试试看,谢谢。




欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5