Community
cancel
Showing results for 
Search instead for 
Did you mean: 
chdthanh
Beginner
236 Views

position of Zero pivot in Error -4 as using Pardiso ?

Dear all,
I have an error -4 whenusing pardiso to solve a sytem of linear equations. It may be caused by zero pivots. I wonder if I can know position of the zero pivots?
Thanks in advance.
Thanh
0 Kudos
7 Replies
Sergey_P_Intel2
Employee
236 Views

Hi Thanh,

For matrix types 2 and 4 you canknow the position of first zero pivot from iparm(30), please see MKL manual for details:

iparm(30) - the number of equation where PARDISO detects zero or negative pivot for MTYPE=2 (real positive definite matrix) and MTYPE=4 (complex and Hermitian positive definite matrices). If the solver detects a zero or negative pivot for these matrix types, the factorization is stopped, PARDISO returns immediately with an error (error = -4) and iparm(30) contains the number of the equation where the first zero or negative pivot is detected.

Regards,
Sergey

chdthanh
Beginner
236 Views

Hello Sergey,
Thank for your reply. The value of iparm(30) is zero but I a still goterror=-4 for mtype=2.
I am using Intel MKL 10.0.3.
Could you please let me know what is problem ? How can I fix it?
Thank you in advance.
Thanh
Sergey_P_Intel2
Employee
236 Views

Thanh,

This functionality was implemented in MKL since version 10.2 Gold (10.2.0).

Regards,
Sergey
chdthanh
Beginner
236 Views

Thanks. Could you please tell me how can I upgrade to MKL version you mentioned? How much does it cost?
I am using Interl fortran 10.1.021 which includes MKL 10.0.3.
Thanh
Gennady_F_Intel
Moderator
236 Views

Please have a look at this article. That's about how upgrade the obsolete version.
This artilcewill also help you to find the answer on your questions.
/gf
chdthanh
Beginner
236 Views

Many thanks to you. I know what I do now.
Thanh
Danesh_Daroui
Beginner
236 Views

Thanh,

Why you get zero pivot error? try turning on matching and scaling. Using these two features in complex and unsymmetric matrices it will never be any zero in pivot but I am not sure if it works for other types. You can also re-generate the error in a small enough problem and try to solve it using LAPACK and see if LAPAKC's direct solver can solver it (non singular system). Some people think that highly ill-conditioned systems can not be solved using PARDISO and that confused me a lot but that's not true!

D.
Reply