Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
7261 討論

PARDISO - Only trivial solution when solving for nullspace?

Arunachalam__Easun
初學者
1,126 檢視

I have come across a curious issue when attempting to find the nullspace of a sparse structurally symmetric matrix A with PARDISO, i.e. solving the problem A x = b where b is the zero vector. When I set the RHS (the vector b) to be identically zero, I get only the trivial solution (x = the zero vector) with a residual of nan. However, when I make b arbitrarily small (e.g. all elements = 1e-16) I obtain a solution, but the residual is exceedingly high (on the order of 1, while the elements in the solution vector are on the order of 10^4).

Am I misusing PARDISO or are we intended to set b to some arbitrarily small value rather than zero when we wish to find the nullspace? Is there sample code that where the goal is to compute the nullspace specifically? I didn't encounter such problems when was a vector of ones. If PARDISO cannot compute the nullspace, is there another MKL function which allows for computation of the nullspace of large, real-valued, indefinite, structurally symmetric sparse matrices?

Thank you.

0 積分
1 回應
Alexander_K_Intel2
1,126 檢視

Hi,

In case of degenerate matrix pardiso find only one solution so it cannot be used for finding set of solution. For your problem it is better to use EE functionality (https://software.intel.com/en-us/mkl-developer-reference-c-extended-eigensolver-routines) - multiply matrix on itself transpose and find zero eigenvectors of resulted matrix 

Thanks,

Alex

回覆