我得到了一个包含元素的列表:
table = [ [[0.,0.,1.],[0.,0.,-1.],[0.,0.,0.],[0.,0.,0.]],
[srB(0, 0),srA(0, 0),[0.,0.,0.],[0.,0.,0.]],
[spB(Beta, Alpha, PHI), spC(PHI), spA( Alpha, PHI), [0.,0.,0.]],
[[0.,0.,0.], [0.,0.,0.], srA(0, 0), srB(0, 0)],
[spB(Beta,Alpha,PHI), spC(PHI), [0.,0.,0.], [0.,0.,0.]],
[stB(Beta,Alpha,PHI), stC(Beta,Alpha), stA(Beta, PHI), stD(Alpha)]
它对应于以下形状的表格:
A B C D
------------------
rco|
rnc|
Alp|
rnn|
Bet|
T |
我想获得一个类型的表:
rco rnc Alp rnn Bet rnn Bet T
-----------------------------
rco |
rnc |
Alp | SOME RESULTS
rnn |
Bet |
T |
来自表格两侧元素的点积。我的意思是,
rco
创建每个元素rco
的点积并总结它们rco
创建每个元素rnc
的点积并总结它们rco
创建每个元素Alp
的点积并总结它们
等我尝试了下面的重复:
S = np.zeros((6,6))
for i in range(len(stable)):
for j in range(4):
for k in range(len(stable)):
for l in range(4):
S[i][k] += np.dot(stable[i][j], stable[k][l])
更新: 看来我解决了这个问题。但是我想知道如何简化我的乘法。收获的元素和我需要的只是获得一个上三角矩阵。 我很乐意提示。