[petsc-users] ILU preconditioner

Danesh Daroui danesh.daroui at ltu.se
Fri Jun 3 09:17:03 CDT 2011


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




More information about the petsc-users mailing list