Re: [firedrake] Preconditioner for Least-squares FEM
I think the PETSc mailing list is a much better place to ask questions like this? On 15 October 2015 at 13:47, Justin Chang <jychang48@gmail.com> wrote:
Hi all,
I am attempting to solve Darcy's equation:
u + grad[p] = 0 div[u] = f
The weak form under the least-squares finite element method (LSFEM) looks like this:
(u + grad[p]; v + grad[q]) + div[u]*div[v] = (f; div[v])
For H(div) elements like RT0, these options worked nicely:
-ksp_type gmres -pc_type fieldsplit -pc_fieldsplit_type schur -pc_fieldsplit_schur_precondition selfp -fieldsplit_0_ksp_type preonly -fieldsplit_0_pc_type bjacobi -fieldsplit_0_sub_pc_type ilu -fieldsplir_1_ksp_type preonly -fieldsplit_1_pc_type hypre
but for the above LSFEM, it does not work (get a DIVERGED_MAX_IT error). I heard multigrid methods are good for these types of problems, so how do I tweak the above parameters?
Thanks, Justin
I did ask them, but it went unanswered for the last 1.5 months... Let me clarify my question a bit though, I tried using -ksp_type cg -pc_type hypre -pc_hypre_type boomeramg, but it is not supported for matnest. I added nest=False but it seems to break my solver somehow. The only thing that works for me is -ksp_type cg -pc_type bjacobi plus MixedVectorSpaceBasis(W, ...) but the number of solver iterations increases with problem size... Thanks, Justin On Thu, Oct 15, 2015 at 6:50 AM, Andrew McRae <A.T.T.McRae@bath.ac.uk> wrote:
I think the PETSc mailing list is a much better place to ask questions like this?
On 15 October 2015 at 13:47, Justin Chang <jychang48@gmail.com> wrote:
Hi all,
I am attempting to solve Darcy's equation:
u + grad[p] = 0 div[u] = f
The weak form under the least-squares finite element method (LSFEM) looks like this:
(u + grad[p]; v + grad[q]) + div[u]*div[v] = (f; div[v])
For H(div) elements like RT0, these options worked nicely:
-ksp_type gmres -pc_type fieldsplit -pc_fieldsplit_type schur -pc_fieldsplit_schur_precondition selfp -fieldsplit_0_ksp_type preonly -fieldsplit_0_pc_type bjacobi -fieldsplit_0_sub_pc_type ilu -fieldsplir_1_ksp_type preonly -fieldsplit_1_pc_type hypre
but for the above LSFEM, it does not work (get a DIVERGED_MAX_IT error). I heard multigrid methods are good for these types of problems, so how do I tweak the above parameters?
Thanks, Justin
_______________________________________________ firedrake mailing list firedrake@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/firedrake
participants (2)
- 
                
                Andrew McRae
- 
                
                Justin Chang