Do I have any other choice for my needs? What about PCShell? It seems to be quite flexible. Can't I use this to only calculate preconditioner on real parts? I can calculate them using MKL and pass it to PETSc.
On Fri, 2011-06-03 at 09:07 -0500, Barry Smith wrote: > Unfortunately PETSc is restricted to working with only real or complex > objects at one time and one cannot mix some real and some complex. > > Barry > > On Jun 3, 2011, at 9:03 AM, Danesh Daroui wrote: > > > > > Hi, > > > > In this case, can I create a preconditioner in double precision format > > and apply it to the system while I am using PETSc to solve a system of > > complex numbers? The reason is that I am solving equations in several > > iterations and I want to create an ILU-based preconditioner only on real > > part of my coefficient matrix because it is unchanged and I can create > > and store is once. The imaginary parts will change but they do not have > > big effect. > > > > Regards, > > > > D. > > > > > > On Tue, 2011-05-31 at 15:13 +0200, Jed Brown wrote: > >> On Tue, May 31, 2011 at 08:02, Danesh Daroui <danesh.daroui at ltu.se> > >> wrote: > >> I have a complex system of equations and I use PETSc to solve > >> the > >> system. I also use MKL to create the preconditioner using ILU. > >> The ILU > >> preconditioner is created only on the real part of the > >> coefficient > >> matrix and is stored in CSR format with the data type of > >> double > >> precision. I wanted to ask if it is possible to use this > >> preconditioner > >> and pass it to PETSc in CSR format? Can it be used with PETSc > >> complex > >> solver although the preconditioner is in double precision > >> format? > >> > >> You can create a PCShell() that manages the factorization using MKL > >> and applies the preconditioner stored in whatever format MKL likes. > >> PETSc would not know that it is ILU or otherwise. It sounds like that > >> would do what you want. > > > > > > > > -- Danesh Daroui, Ph.D Student EISLAB Department of Computer Science, Electrical and Space Engineering Lulea University of Technology SE-971 87 Lulea Sweden http://www.ltu.se email: danesh.daroui at ltu.se phone: +46-(0)920-492451 mobile: +46-(0)704-399847
