Sympy:符号矩阵的奇异值分解

时间:2015-11-02 00:04:32

标签: linear-algebra sympy svd

我正在努力解决我认为是一个简单的问题。我寻求Ax = b的非平凡解,其中b是零向量,A是已知的符号元素矩阵(非奇异)。 Matlab不允许对其svd函数进行非数字输入,因此我安装了sympy模块,并尝试使用以下代码来解决我的问题。

from numpy import *
from sympy import *
import sympy.matrices.matrices

a2, a3, k2_prime, rho2, rho2_prime_prime = symbols('a2 a3 k2_prime rho2 rho2_prime_prime', real=True)

A = Matrix([[exp(rho2*a2) , -exp(1j*k2_prime*a2), -exp(-1j*k2_prime*a2)  , 0],
[rho2*exp(rho2*a2), -1j*k2_prime*exp(1j*k2_prime*a2), -1j*k2_prime*exp(-1j*k2_prime*a2), 0],
[0, exp(1j*k2_prime*a3), exp(-1j*k2_prime*a3), exp(-rho2_prime_prime*a3)],
[0, 1j*k2_prime*exp(1j*k2_prime*a3), -1j*k2_prime*exp(-1j*k2_prime*a3), -rho2_prime_prime*exp(-rho2_prime_prime*a3)]])


g = MatrixBase.singular_values(A)

print g

结果是一个空矩阵,显然不正确。有谁知道我做错了什么?有没有更好的方法来解决这个问题?

0 个答案:

没有答案