[petsc-users] pcfieldsplit for a composite dm with multiple subfields

Gideon Simpson gideon.simpson at gmail.com
Thu Aug 27 19:00:56 CDT 2015

I’m working on a problem which, morally, can be posed as a system of coupled semi linear elliptic PDEs together with unknown nonlinear eigenvalue parameters, loosely, of the form

-\Delta u_1 + f(u_1, u_2) = lam * u1 - mu * du2/dx 
-\Delta u_2 + g(u_1, u_2) = lam * u2 + mu * du1/dx 

Currently, I have it set up with a DMComposite with two sub da’s, one for the parameters (lam, mu), and one for the vector field (u_1, u_2) on the mesh.  I have had success in solving this as a fully coupled system with SNES + sparse direct solvers (MUMPS, SuperLU).

Lately, I am finding that, when the mesh resolution gets fine enough (i.e.  10^6-10^8 lattice points), my SNES gets stuck with the function norm = O(10^{-4}),  eventually returning reason -6 (failed line search).

Perhaps there is another way around the above problem, but one thing I was thinking of trying would be to get away from direct solvers, and I was hoping to use field split for this.  However, it’s a bit beyond what I’ve seen examples for because it has 2 types of variables: scalar parameters which appear globally in the system and vector valued field variables.  Any suggestions on how to get started?


More information about the petsc-users mailing list