Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
6956 Discussions

run pardiso twice on same matrix = not same result

apocalx
Beginner
264 Views

I test case is attached to this message.I solve exactly the same matrix more than one time and I get different result.I can solve 10 times and get 8 times same result and 2 times another result. The next time, I get 6 times sames result and 4 times another result.Maybe you will need to run the case more than 1 time because sometime I get 10 time the same result.At each solve, it's a new surprise for me :)Here is a example result of X[2] whit 5 solve (fill matrix, facotrization and solve) :x[2] = 3.954994 +j 36.454584x[2] = 4.039025 +j 36.871752x[2] = 4.386890 +j 36.496321x[2] = 4.386890 +j 36.496321x[2] = 4.386890 +j 36.496321Marc

0 Kudos
3 Replies
Gennady_F_Intel
Moderator
264 Views
I just quickly checked the issue - I 've got the different numbers

x[2] = -0.220519 +j 26.730090
x[2] = -0.333848 +j 26.842847
x[2] = -0.220519 +j 26.730090
x[2] = -0.333848 +j 26.842847
x[2] = -0.220519 +j 26.730090
but the similar unrepeated results.
We will investigate the problem and back soon.
Did you check the condition number of this input?

--Gennady
0 Kudos
styc
Beginner
264 Views

Element magnitudes of your matrix vary in a huge range. I saw ones as large as 5000000 and as small as 1e-7. Typically this is not a good sign for numerical stability.

EDIT: Well, it is worse than that. The matrix is singular. The last row is all zeros. Changing the bottom right element to 1 produces a matrix with a 2-condition number of 1.8e27.

0 Kudos
Konstantin_A_Intel
264 Views
Hi,

Indeed, if the matrix is singular (or highly ill-conditioned) than the solving process is highly unstable and, generally speaking, the result of computations is unpredictable.

Regards,
Konstantin
0 Kudos
Reply