[petsc-users] GAMG and linear elasticity
Tabrez Ali
stali at geology.wisc.edu
Sat Aug 31 11:25:29 CDT 2013
Hello
So I used PCSetCoordinates and now GAMG seems to work really well in
that the number of iterations are relatively constant. Here are the
number of iterations on 4 cores
DOF ASM GAMG
2187 15 22
14739 26 22
107811 51 29
So in PCSetCoordinates the 'coords' array should include values for the
ghost nodes as well or only those values that correspond to the local
owned sol'n vector? In the experiment above I included values of the
ghost nodes as well (just had to add a line in my existing code) and it
seems to have worked fine.
Thanks in advance
Tabrez
On 08/27/2013 03:15 PM, Jed Brown wrote:
> Tabrez Ali<stali at geology.wisc.edu> writes:
>
>> Hello
>>
>> What is the proper way to use GAMG on a vanilla 3D linear elasticity
>> problem. Should I use
>>
>> -pc_type gamg -pc_gamg_type agg -pc_gamg_agg_nsmooths 1
>
> Yeah, and only the first of these is needed because the others are
> default with -pc_type gamg.
>
>> -pc_type fieldsplit -pc_fieldsplit_block_size 3 -fieldsplit_pc_type gamg
>> -fieldsplit_pc_gamg_type agg -fieldsplit_pc_gamg_agg_nsmooths 1
>>
>> Do these options even make sense? With the second set of options the %
>> increase in number of iterations with increasing problem size is lower
>> than the first but not optimal.
>
> And it's probably more expensive because it has to do inner solves.
> Also, if you have less compressible regions, it will get much worse.
>
>> Also, ksp/ksp/examples/ex56 performs much better in that the number of
>> iterations remain more or less constant unlike what I see with my own
>> problem. What am I doing wrong?
>
> You probably forgot to set the near null space. You can use
> MatSetNearNullSpace (and maybe MatNullSpaceCreateRigidBody) or the more
> hacky (IMO) PCSetCoordinates. It's important to have translational
> *and* rotational modes in the near null space that GAMG uses to build a
> coarse space.
--
No one trusts a model except the one who wrote it; Everyone trusts an observation except the one who made it- Harlow Shapley
More information about the petsc-users
mailing list