- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all,
I am trying to use iterative solvers for sparse systems, such as subroutines ILUT for preconditioning ang DFGMRES for the iteration but apparently these work with DOUBLE PRECISION but not COMPLEX numbers.
Do you have any suggestions how can proceed further?
Thank you very much in advance.
Hakan
I am trying to use iterative solvers for sparse systems, such as subroutines ILUT for preconditioning ang DFGMRES for the iteration but apparently these work with DOUBLE PRECISION but not COMPLEX numbers.
Do you have any suggestions how can proceed further?
Thank you very much in advance.
Hakan
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Hakan,
Currently MKL doesnt support RSI solvers for complex data. Our suggestion - you may try to use direct solver for complex data types.
--Gennady
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Gennady,
Well actually my program works with PARDISO, but I need to solve larger scale problems and I thought iterative solvers can handle more. Am I true with this thought? And finally would you recommend 'SPARSKIT' library to import into the Intel Fortran Complier?
Thank you very much.
Hakan
Well actually my program works with PARDISO, but I need to solve larger scale problems and I thought iterative solvers can handle more. Am I true with this thought? And finally would you recommend 'SPARSKIT' library to import into the Intel Fortran Complier?
Thank you very much.
Hakan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hakan,
Formally speaking, support of complex data is not crucial. For example, if you need to solve a system of linear equations Ax=f with complex matrix A=B+i*C and complex right hand side vector f=g+i*h assuming the solutionhas the form x=y+i*z you can get a system with real coefficient matrix and right hand side:
(B -C) (y) =(g)
(C B) (z) (h)
The system is nothing esle but equations you obtain when equate separately real and imaginary part of the original system. The coefficient matrix orderand the rhs vector length are doubled. This approach might benotthe most efficient from the performance point of view and requires more memory but this is another story.
With best regards,
Victor
Formally speaking, support of complex data is not crucial. For example, if you need to solve a system of linear equations Ax=f with complex matrix A=B+i*C and complex right hand side vector f=g+i*h assuming the solutionhas the form x=y+i*z you can get a system with real coefficient matrix and right hand side:
(B -C) (y) =(g)
(C B) (z) (h)
The system is nothing esle but equations you obtain when equate separately real and imaginary part of the original system. The coefficient matrix orderand the rhs vector length are doubled. This approach might benotthe most efficient from the performance point of view and requires more memory but this is another story.
With best regards,
Victor
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello again,
Thank you for the answer, this will help I think. But before trying that I want to ask something. I have got the latest version of IMSL library which has some improved mathematical functions. Do you reckon usage of IMSL would make it possible to use GMRES with complex numbers?
Thank you in advance,
Hakan
Thank you for the answer, this will help I think. But before trying that I want to ask something. I have got the latest version of IMSL library which has some improved mathematical functions. Do you reckon usage of IMSL would make it possible to use GMRES with complex numbers?
Thank you in advance,
Hakan
Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page