[petsc-users] problem with nested fieldsplits

Jean-Arthur Louis Olive jaolive at mit.edu
Mon Sep 22 21:37:08 CDT 2014


Hi all,
below is the complete error message & list of options.
Best,
Arthur



STARTING SOLVE FOR TIMESTEP: 1
    0 KSP unpreconditioned resid norm 7.599999999605e+10 true resid norm 7.599999999605e+10 ||r(i)||/||b|| 1.000000000000e+00
[0]PETSC ERROR: DMCreateFieldDecomposition() line 1274 in /home/jolive/petsc/src/dm/interface/dm.c Decomposition defined only after DMSetUp
[1]PETSC ERROR: DMCreateFieldDecomposition() line 1274 in /home/jolive/petsc/src/dm/interface/dm.c Decomposition defined only after DMSetUp
[0]PETSC ERROR: PETSC: Attaching gdb to ./Stokes of pid 21092 on display localhost:11.0 on machine fuxi
[1]PETSC ERROR: PETSC: Attaching gdb to ./Stokes of pid 21093 on display localhost:11.0 on machine fuxi
[0]PETSC ERROR: PCFieldSplitSetDefaults() line 467 in /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c Unhandled case, must have at least two fields, not 0
[1]PETSC ERROR: PCFieldSplitSetDefaults() line 467 in /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c Unhandled case, must have at least two fields, not 0
[0]PETSC ERROR: PETSC: Attaching gdb to ./Stokes of pid 21092 on display localhost:11.0 on machine fuxi
[1]PETSC ERROR: PETSC: Attaching gdb to ./Stokes of pid 21093 on display localhost:11.0 on machine fuxi
[1]PETSC ERROR: ------------------------------------------------------------------------
[1]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range
[1]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[1]PETSC ERROR: or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind[1]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X to find memory corruption errors
[1]PETSC ERROR: likely location of problem given in stack below
[1]PETSC ERROR: ---------------------  Stack Frames ------------------------------------
[1]PETSC ERROR: Note: The EXACT line numbers in the stack are not available,
[1]PETSC ERROR:       INSTEAD the line number of the start of the function
[1]PETSC ERROR:       is given.
[1]PETSC ERROR: [1] DMCreateFieldDecomposition line 1251 /home/jolive/petsc/src/dm/interface/dm.c
[1]PETSC ERROR: [1] PCFieldSplitSetDefaults line 320 /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c
[1]PETSC ERROR: [1] PCSetUp_FieldSplit line 483 /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c
[1]PETSC ERROR: [1] KSPSetUp line 219 /home/jolive/petsc/src/ksp/ksp/interface/itfunc.c
[1]PETSC ERROR: [1] KSPSolve line 381 /home/jolive/petsc/src/ksp/ksp/interface/itfunc.c
[1]PETSC ERROR: [1] PCApply_FieldSplit line 893 /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c
[1]PETSC ERROR: [1] KSP_PCApply line 225 /home/jolive/petsc/include/petsc-private/kspimpl.h
[1]PETSC ERROR: [1] KSPFGMRESCycle line 111 /home/jolive/petsc/src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[1]PETSC ERROR: [1] KSPSolve_FGMRES line 278 /home/jolive/petsc/src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[1]PETSC ERROR: [1] SNESSolve_KSPONLY line 13 /home/jolive/petsc/src/snes/impls/ksponly/ksponly.c
[1]PETSC ERROR: [1] SNESSolve line 3687 /home/jolive/petsc/src/snes/interface/snes.c
[1]PETSC ERROR: [1] Hipster_RunPicardIterations line 5553 /home/jolive/HIPSTER/hipster/developing_HiPStER/09-16-14_nested_fieldsplits/StokesSolve1.c
[1]PETSC ERROR: User provided function() line 0 in  unknown file
[1]PETSC ERROR: PETSC: Attaching gdb to ./Stokes of pid 21093 on display localhost:11.0 on machine fuxi
[0]PETSC ERROR: ------------------------------------------------------------------------
[0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out of range
[0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[0]PETSC ERROR: or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind[0]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X to find memory corruption errors
[0]PETSC ERROR: likely location of problem given in stack below
[0]PETSC ERROR: ---------------------  Stack Frames ------------------------------------
[0]PETSC ERROR: Note: The EXACT line numbers in the stack are not available,
[0]PETSC ERROR:       INSTEAD the line number of the start of the function
[0]PETSC ERROR:       is given.
[0]PETSC ERROR: [0] DMCreateFieldDecomposition line 1251 /home/jolive/petsc/src/dm/interface/dm.c
[0]PETSC ERROR: [0] PCFieldSplitSetDefaults line 320 /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c
[0]PETSC ERROR: [0] PCSetUp_FieldSplit line 483 /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c
[0]PETSC ERROR: [0] KSPSetUp line 219 /home/jolive/petsc/src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: [0] KSPSolve line 381 /home/jolive/petsc/src/ksp/ksp/interface/itfunc.c
[0]PETSC ERROR: [0] PCApply_FieldSplit line 893 /home/jolive/petsc/src/ksp/pc/impls/fieldsplit/fieldsplit.c
[0]PETSC ERROR: [0] KSP_PCApply line 225 /home/jolive/petsc/include/petsc-private/kspimpl.h
[0]PETSC ERROR: [0] KSPFGMRESCycle line 111 /home/jolive/petsc/src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[0]PETSC ERROR: [0] KSPSolve_FGMRES line 278 /home/jolive/petsc/src/ksp/ksp/impls/gmres/fgmres/fgmres.c
[0]PETSC ERROR: [0] SNESSolve_KSPONLY line 13 /home/jolive/petsc/src/snes/impls/ksponly/ksponly.c
[0]PETSC ERROR: [0] SNESSolve line 3687 /home/jolive/petsc/src/snes/interface/snes.c
[0]PETSC ERROR: [0] Hipster_RunPicardIterations line 5553 /home/jolive/HIPSTER/hipster/developing_HiPStER/09-16-14_nested_fieldsplits/StokesSolve1.c
[0]PETSC ERROR: User provided function() line 0 in  unknown file
[0]PETSC ERROR: PETSC: Attaching gdb to ./Stokes of pid 21092 on display localhost:11.0 on machine fuxi


options:

-ksp_view -ksp_monitor_true_residual -ksp_converged_reason \
-ksp_type fgmres -ksp_rtol 1.0e-6 \
-pc_type fieldsplit -pc_fieldsplit_0_fields 0,1,2 -pc_fieldsplit_1_fields 3 \
-fieldsplit_0_pc_type fieldsplit \
-pc_fieldsplit_0_fieldsplit_0_fields 0,1 -pc_fieldsplit_0_fieldsplit_1_fields 2 \
-fieldsplit_0_pc_fieldsplit_type schur \
-fieldsplit_0_pc_fieldsplit_schur_factorization_type upper \
-fieldsplit_0_fieldsplit_0_ksp_type preonly \
-fieldsplit_0_fieldsplit_0_pc_type lu -fieldsplit_0_fieldsplit_0_pc_factor_mat_solver_package superlu_dist \
-fieldsplit_0_fieldsplit_1_ksp_type preonly \
-fieldsplit_0_fieldsplit_1_pc_type lu -fieldsplit_0_fieldsplit_1_pc_factor_mat_solver_package superlu_dist \
-fieldsplit_1_ksp_type preonly \
-fieldsplit_1_pc_type lu -fieldsplit_1_pc_factor_mat_solver_package superlu_dist \
-snes_type ksponly \
-snes_converged_reason -snes_linesearch_monitor true


On Sep 22, 2014, at 10:15 PM, Jean-Arthur Louis Olive <jaolive at mit.edu<mailto:jaolive at mit.edu>> wrote:

Hi all,
I am using PETSc (dev version) to solve the Stokes + temperature equations. My DM has fields (vx, vy, p, T).

I would like to use nested fieldsplits to separate the T part from the Stokes part, and apply a Schur complement approach to the Stokes block.
Unfortunately, I keep getting this error message:
[1]PETSC ERROR: DMCreateFieldDecomposition() line 1274 in /home/jolive/petsc/src/dm/interface/dm.c Decomposition defined only after DMSetUp

Here are the command line options I tried:

-snes_type ksponly \
-ksp_type fgmres \
# define 2 fields: [vx vy p] and [T]
-pc_type fieldsplit -pc_fieldsplit_0_fields 0,1,2 -pc_fieldsplit_1_fields 3 \
# split [vx vy p] into 2 fields: [vx vy] and [p]
-fieldsplit_0_pc_type fieldsplit \
-pc_fieldsplit_0_fieldsplit_0_fields 0,1 -pc_fieldsplit_0_fieldsplit_1_fields 2 \

# apply schur complement to [vx vy p]
-fieldsplit_0_pc_fieldsplit_type schur \
-fieldsplit_0_pc_fieldsplit_schur_factorization_type upper \

# solve everything with lu, just for testing
-fieldsplit_0_fieldsplit_0_ksp_type preonly \
-fieldsplit_0_fieldsplit_0_pc_type lu -fieldsplit_0_fieldsplit_0_pc_factor_mat_solver_package superlu_dist \
-fieldsplit_0_fieldsplit_1_ksp_type preonly \
-fieldsplit_0_fieldsplit_1_pc_type lu -fieldsplit_0_fieldsplit_1_pc_factor_mat_solver_package superlu_dist \
-fieldsplit_1_ksp_type preonly \
-fieldsplit_1_pc_type lu -fieldsplit_1_pc_factor_mat_solver_package superlu_dist \

Any idea what could be causing this?
Thanks a lot,
Arthur

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20140923/101d943f/attachment-0001.html>


More information about the petsc-users mailing list