I was trying to find the lower–upper (LU) factorization for a sparse matrix (size 159990 by 159990). Below I attach the three python code lines I have used for the LU decomposition 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)) Properties of this matrix include, Symmetric The diagonal elements are the largest among the corresponding matrix column. Non singular matrix While running the code I was getting the following error in 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 Can anyone suggest a possible solution for this? Any help will be appreciated. Continue reading...