[petsc-users] How to use multigrid?
Mark F. Adams
mark.adams at columbia.edu
Fri Nov 9 11:09:58 CST 2012
On Nov 9, 2012, at 11:37 AM, "A.L. Siahaan" <als88 at cam.ac.uk> wrote:
> Is PCGAMG a combination of AMG and geometric multigrid ? Do we have to choose either pure AMG (when using -pc_type gamg -pc_gamg_agg_nsmooths 1) or pure geometric MG (type="geo") ?
Thing of GAMG as an AMG solver. "geo" is an unstructured GMG method that is there as a reference implementation, to stress the framework a bit, but is not for real use.
> From my thread search in this mailing list about using PCGAMG, it is mostly advised to use pure AMG (-pc_type gamg -pc_gamg_agg_nsmooths 1).
Yes
>
> Of all algebraic multigrid implemented or interfaced in PETSc, i.e. BoomerAMG (PCHypre), ML(PCML), and PCGAMG("agg"), what is the order of the cost (memory) to set up the preconditioner (setting nullspace etc) ?
Not a simple question. ML and GAMG use very similar algorithms and ML is implemented in a more "native" way than hypre (GAMG is completely native). GAMG/ML are probably better for elasticity, hypre is great for 2D low order discretizations of Laplacian, and it is a very hardened implementation. hypre is not native so there are some things that don't work as well.
>
> Regards,
> Antony
>
>
>
> On Nov 9 2012, Mark F. Adams wrote:
>
>>
>> On Nov 9, 2012, at 10:05 AM, w_ang_temp <w_ang_temp at 163.com> wrote:
>>
>>> Hello,Jed
>>> Sorry again for the interruption.
>>> As you said, if I want to use Algebraic multigrid, I can just use '-pc_type gamg -pc_gamg_agg_nsmooths 1' in the command line. I think there are many other -pc_gamg_XXX parameters. How can I find all the -pc_gamg_XXX?
>>
>> -help
>>
>>> Besides, I want to know more about AMG. Are there any details from PETSc, like manual, documentaion, FAQ, etc?
>>
>> I would recommend the book "Multigrid" by Trottenberg, et al, and the classic "Multigrid Tutorial" is good to look at also.
>>
>>> Also, from the above post, I want to know that if AMG can not be used in 3.2 by command line option, because now I have to use 3.3 for using AMG. I just donot want to change my version 3.2 now.
>>
>> You can use 3.2 if you like (free country) but this code was developed a lot between 3.2 and 3.3. I forget what was in 3.2 exactly. If you have a straight forward problem and 3.2 works then its is probably OK for your current purposes.
>>
>>> I am major in Civil Engineering and not good at math and programming. So please forgive my weakness.
>>> Thanks.
>>> Jim > At 2012-10-28 21:17:00,"Jed Brown" <jedbrown at mcs.anl.gov> wrote: > Algebraic multigrid can be used directly, -pc_type gamg > -pc_gamg_agg_nsmooths 1. Geometric either required that you use the > PCMG interface to set >interpolation (and provide a coarse operator > for non-Galerkin) or use a DM that provides coarsening capability.
>>> >What kind of problem are you solving?
>>> >>On Oct 28, 2012 6:09 AM, "w_ang_temp" <w_ang_temp at 163.com> wrote:
>>> >>Hello,
>>> >> I want to use the multigrid as a preconditioner. The introduction >> about it in the manual is little.
>>> >> So are there some typical examples or details about multigrid? Is it >> used just like other preconditioners like jacobi, sor, which can be >> simply used in the cammand line options?
>>> >> Thanks.
>>> > > > > Jim
>>
>>
>
More information about the petsc-users
mailing list