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

Solving an ill-conditioned, sparce unsymmetric linear system

roshan_r_
Beginner
334 Views

Hi,

I am trying to solve a set of linear equations for a material model through c++.

 

The system was already solved in Mathematica using Krylov method (BiCGStab).

Through Mathematica, I found that the condition number of the stiffness matrix is in the range of 10^8.

Thus I understand it is ill-conditioned. It is also unsymmetric.

 

Now I have already tried the direct solver Pardiso with scaling. But the data did not match the one from Mathematica.

I want to know if there is a better approach to solve this system. Also should I trust the Mathematica results, considering the nature of the linear system ?

 

Please help, any advice is much appreciated.

Roshan

0 Kudos
2 Replies
Alexander_K_Intel2
334 Views

Hi,

The condition number that Mathematica reported is not really high so solution have to be similar to solution reported by Mathematica. Could you send us reproducer to play with it on our side?

Thanks,

Alex 

0 Kudos
roshan_r_
Beginner
334 Views

Hi Alex,

Thank you for replying. There was a mistake, the condition number is 3.8*10^10 to be precise.

Sorry, I couldn't understand what you mean by reproducer. Can you be a bit more specific?

Since the project belongs to a firm, I may not be able to attach files (due to firewall).

But I guess I could send you files as a .txt

 

But basic information about the system is that it is a A +dA.dX =0 linear system of 27 equations in 1D. In 3d it stretches to 48.

So naturally, A is 27x1 matrix/array. dA is 27x27 matrix in 1D case. I have used fixed point iteration.

But I feel the presence of Heaviside step functions, could be a concern.

 

Thank you for your time,

Roshan

 

0 Kudos
Reply