[petsc-users] How to implement projection preconditioner?

Abdul Hanan Sheikh hanangul12 at yahoo.co.uk
Fri Jun 15 14:23:49 CDT 2012


Dear Jed, 

Thanks for attention! 


I recall my previous thread; copy and paste here, and then I try to ask: 


Suppose C = P*A_H^{-1}*R is the coarse grid solver. Then with a post-smoother S, application of the preconditioner 
to the vector "b" would be C b + S (b - A C b). If we drop the 
post-smoother by setting S = I, We get Prec = C b + b - A C b. Note that there is no presmoother. 


This is the preconditioner I have used before, in PCMG framework, with no pre-smoothing and Richardson(without any preconditioner) as post smoother. 

I need to apply the updated version of above Prec = C b + (b - A C b), where A is replaced by M^-1 A , and A_H by M_H^-1 A_H . 


Now does it make sense :

1)  incorporating M as only preconditioner in presmoother will replace A by M^-1 A in Prec = C b + (b - A C b) ?
2) incorporating M as preconditioner to CG-solver will replace A_H by (M_H^-1 A_H ) ? I am kinda of sure about this point 2. 


Thanks, 
Abdul 


From: Jed Brown <jedbrown at mcs.anl.gov>

To: Abdul Hanan Sheikh <hanangul12 at yahoo.co.uk> 
>Cc: PETSc users list <petsc-users at mcs.anl.gov> 
>Sent: Wednesday, 13 June 2012, 18:39
>Subject: Re: [petsc-users] How to implement projection preconditioner?
> 
>
>On Wed, Jun 13, 2012 at 10:54 AM, Abdul Hanan Sheikh <hanangul12 at yahoo.co.uk> wrote:
>
>Thanks for reply! 
>>
>>Well at first look, it looks like that M can be put as precondittioning operator for smoother
>>where keeping ksp as preonly in pre-smoother context. 
>>I am not sure, this leads to the preconditioner desired, coz putting M as preconditioner in 
>>
>>pre-smoother alters the residual passed to coarse-grid correction,  i.e. 
>>
>>CGC corrects the pre-smoothed solution. 
>>
>
>
>That's kind of the point of pre-smoothing. Can you explain more precisely (or just try it).
> 
>
>>
>>
>>
>>
>>
>>>________________________________
>>> From: Jed Brown <jedbrown at mcs.anl.gov>
>>>To: Abdul Hanan Sheikh <hanangul12 at yahoo.co.uk>; PETSc users list <petsc-users at mcs.anl.gov> 
>>>Cc: Abdul - CITG <A.H.Sheikh at tudelft.nl> 
>>>Sent: Friday, 8 June 2012, 19:01
>>>Subject: Re: [petsc-users] How to implement projection preconditioner?
>>> 
>>>
>>>
>>>Isn't this just putting M and M_H as the preconditioning operator for the smoother?
>>>
>>>
>>>On Fri, Jun 8, 2012 at 11:58 AM, Abdul Hanan Sheikh <hanangul12 at yahoo.co.uk> wrote:
>>>
>>>Dear all, 
>>>>
>>>>Summer greetings, 
>>>>
>>>>I am back with an other query.
>>>>Before I successfully implement the projection preconditioner which was simply 
>>>>
>>>>the coarse grid correction operator P = I - A*(P*A_H*R); 
>>>>
>>>>I implemented this simply keeping both pre and post smoothing dummy in PCMG setup. 
>>>>
>>>>Now I need to revise this and re-implement this where I replace A and coarse operator A_H with 
>>>>
>>>>preconditioned one i.e. M^-1 A and M^-1 A_H respectively. Thus new projection reads as
>>>>
>>>>
>>>>
>>>>
>>>>P_new = I - (M^-1 A) {P*(M_H^-1 A_H)*R}
>>>>
>>>>
>>>>Any suggestion to implement this in Petsc would be appreciated. 
>>>>
>>>>
>>>>
>>>>Thanking in anticipation. 
>>>>
>>>>with regards, Abdul 
>>>>
>>>
>>>
>>>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120615/49a59bd7/attachment.html>


More information about the petsc-users mailing list