[petsc-users] passing solver options in fieldsplit

Hong hzhang at mcs.anl.gov
Tue Nov 11 10:07:34 CST 2014


Luc:
Run your code with option '-help |grep mumps', then you'll see what prefix
should be used in your case with the mumps option
'-mat_mumps_icntl_14 30'.
You may try even larger icntl_14.

Hong

 Hi, I am using Petsc to solver a multiphysics problem and I have the
> following issue.
> I partition my problem by declaring two fields:
>
> -ksp_type gmres -pc_type fieldsplit -pc_fieldsplit_type schur
> -pc_fieldsplit_schur_factorization_type full
> -pc_fieldsplit_schur_precondition selfp -pc_fieldsplit_0_fields 2,3
> -pc_fieldsplit_1_fields 0,1
>
> I want to solve the matrix representing field 0 with mumps so I pass the
> following following arguments:
>
> -fieldsplit_0_ksp_type preonly -fieldsplit_0_pc_type lu
> -fieldsplit_0_pc_factor_mat_solver_package mumps
>
> When I do this I get an error from mumps: INFO(1)=-9, INFO(2)=12532. This
> means that mumps main internal real workarray is too small and 12532 are
> missing. To try to mitigate this I need to want to set mumps ICNTL(14)=30
> (by default it is 20).
> Reading Petsc documentation I find that I have to pass the following
> argument to my program:
>
> -mat_mumps_icntl_14 30
>
> which does work fine when I work without fieldsplit but not when I use
> field split.
> I also tried:
>
> -fieldsplit_0_mat_mumps_icntl_14 30
>
> which does not work any better.
> Any idea how I should pass the icntl_14 information to mumps in this case?
>
> --
> Best,
> Luc
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20141111/f52ef92b/attachment.html>


More information about the petsc-users mailing list