[petsc-users] ML and linear elasticity
Mark F. Adams
mark.adams at columbia.edu
Mon Apr 2 10:09:36 CDT 2012
FYI, you can try GAMG also. It uses the same algorithm as ML:
Here are parameters:
-pc_type gamg
-pc_gamg_type agg
-pc_gamg_agg_nsmooths 1 ! this is good for elliptic problems
-pc_gamg_verbose 2 ! this will help me to give a quick sanity check
-pc_gamg_threshold .05 ! for 3D problems this parameter can be useful for optimization
-pc_gamg_coarse_eq_limit 50 ! a detail but you can keep in your input deck
The vector Lapacian has 6 null space vectors (3 translational, 3 rotational). GAMG will construct these with the a setCoordinates method (see the ksp tutorial example ex56.c). If you prefer to give me the null space vectors explicitly there is the MatSetNearNullSpace() method that Jed mentioned. GAMG has not implemented this but I should at some point so if you want to use it I can implement it.
If you do not give it coordinates it will construct the 3 translational null space vectors (don't need anything to compute these) and it can be OK. At least a good place to start.
Mark
On Apr 2, 2012, at 10:44 AM, Jed Brown wrote:
> On Mon, Apr 2, 2012 at 06:59, Karin&NiKo <niko.karin at gmail.com> wrote:
> I would like to use ML as a preconditioner for a linear elasticity problem.
> I wonder if there is a way to indicate ML that it is dealing with a vector problem.
> I know that when using Prometheus, one must use a block matrix, and I would like to know if there is a trick
> in order to use ML in an optimal manner for vector problems.
>
> The block size is used if you don't provide any other information. The preferred approach with petsc-dev is to use MatSetNearNullSpace(). (I'll make sure this is currently working with ML and reply to this message.)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120402/ff42ce83/attachment.htm>
More information about the petsc-users
mailing list