[petsc-dev] Fwd: [petsc-users] 2 Dirichlet conditions for one Element in PetscFE

Matthew Knepley knepley at gmail.com
Wed Nov 22 11:54:28 CST 2017

Why does this petsc-maint message have a messed up Reply-To: header?


---------- Forwarded message ----------
From: Yann Jobic <yann.jobic at univ-amu.fr>
Date: Wed, Nov 22, 2017 at 12:39 PM
Subject: [petsc-users] 2 Dirichlet conditions for one Element in PetscFE
To: PETSc <petsc-users at mcs.anl.gov>


I've found a strange behavior when looking into a bug for the pressure
convergence of a simple Navier-Stokes problem using PetscFE.

I followed many examples for labeling boundary faces. I first use
DMPlexMarkBoundaryFaces, (label=1 to the faces).
I find those faces using DMGetStratumIS and searching 1 as it is the value
of the marked boundary faces.
Finally i use DMPlexLabelComplete over the new label.
I then use :
  ierr = PetscDSAddBoundary(prob, DM_BC_ESSENTIAL, "in", "Faces", 0, Ncomp,
components, (void (*)(void)) uIn, NWest, west, NULL);CHKERRQ(ierr);
in order to impose a dirichlet condition for the faces labeled by the
correct value (west=1, south=3,...).

However, the function "uIn()" is called in all the Elements containing the
boundary faces, and thus impose the values at nodes that are not in the
labeled faces.
Is it a normal behavior ? I then have to test the position of the node
calling uIn, in order to impose the good value.
I have this problem for a Poiseuille flow, where at 2 corner Elements i
have a zero velocity dirichlet condition (wall) and a In flow velocity one.

The pressure is then very high at the corner nodes of those 2 Elements.
Do you think my pressure problem comes from there ? (The velocity field is

Many thanks,



PS : i'm using those runtime options :
-vel_petscspace_order 2 -pres_petscspace_order 1 \
-ksp_type fgmres -pc_type fieldsplit -pc_fieldsplit_type schur
-pc_fieldsplit_schur_fact_type full  \
-fieldsplit_velocity_pc_type lu -fieldsplit_pressure_ksp_rtol 1.0e-10
-fieldsplit_pressure_pc_type jacobi

L'absence de virus dans ce courrier électronique a été vérifiée par le
logiciel antivirus Avast.

What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.caam.rice.edu/~mk51/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20171122/ac04f6b0/attachment.html>

More information about the petsc-dev mailing list