我试图找到稀疏矩阵的LU分解(大小159990到159990)。以下是我用于LU分解的python中的三行
from scipy.sparse import csc_matrix, linalg as sla
interior_stiff=CSC_matrix(159990 by 159990)
LU= sla.splu(interior_stiff,options=dict(SymmetricMode=True))
此矩阵的属性包括
对称
对角线元素是相应矩阵列中最大的。
非奇异矩阵
在运行代码时,我在spyder GUI中收到以下错误,
File "<ipython-input-1-7243a2294501>", line 1, in <module>
runfile('C:/temp/new_LU/Run_1_using_LU.py', wdir='C:/temp/new_LU')
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 866, in runfile
execfile(filename, namespace)
File "C:\ProgramData\Anaconda3\lib\site-packages\spyder\utils\site\sitecustomize.py", line 102, in execfile
exec(compile(f.read(), filename, 'exec'), namespace)
File "C:/temp/new_LU/Run_1_using_LU.py", line 574, in <module>
LU= sla.splu(interior_stiff,options=dict(SymmetricMode=True))
File "C:\ProgramData\Anaconda3\lib\site-packages\scipy\sparse\linalg\dsolve\linsolve.py", line 261, in splu
ilu=False, options=_options)
RuntimeError: Factor is exactly singular
有人可以为此建议一个可能的解决方案吗?
任何帮助将不胜感激。
谢谢,
保罗托马斯