On Apr 2, 2012, at 11:37 AM, Karin&NiKo wrote: > Dear Jed and Mark. > > Thank you for your quick answers. > 1. I am stuck to petsc-3.2 since I am using PETSc in a production software. > For the next release, I'll give GAMG a try (I have been a satisfied user of > Prometheus).
3.2 should work ... > 2. It seems to me that ML does not support block matrices, doesn't it? The ML interface does get the block size of the matrix. So it does the right thing. Mark > 3. I would like to give ML the information about the vector nature of my > problem in order that all 3 dofs of a given node be treated in the same > manner (in the coarsening phase for instance). > > Nicolas > > 2012/4/2 Mark F. Adams <mark.adams at columbia.edu> > 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/d994becc/attachment.htm>
