PCSetCoordinates#

sets the coordinates of all the nodes on the local process

Synopsis#

#include "petscksp.h" 
PetscErrorCode PCSetCoordinates(PC pc, PetscInt dim, PetscInt nloc, PetscReal coords[])

Collective

Input Parameters#

  • pc - the solver context

  • dim - the dimension of the coordinates 1, 2, or 3

  • nloc - the blocked size of the coordinates array

  • coords - the coordinates array

Note#

coords is an array of the dim coordinates for the nodes on the local processor, of size dim*nloc. If there are 108 equation on a processor for a displacement finite element discretization of elasticity (so that there are nloc = 36 = 108/3 nodes) then the array must have 108 double precision values (ie, 3 * 36). These x y z coordinates should be ordered for nodes 0 to N-1 like so: [ 0.x, 0.y, 0.z, 1.x, … , N-1.z ].

See Also#

KSP: Linear System Solvers, PC, MatSetNearNullSpace()

Level#

intermediate

Location#

src/ksp/pc/interface/precon.c

Examples#

src/ksp/ksp/tutorials/ex55.c
src/ksp/ksp/tutorials/ex54.c
src/ksp/ksp/tutorials/ex56.c
src/ksp/ksp/tutorials/ex21.c

Implementations#

PCSetCoordinates_BDDC() in src/ksp/pc/impls/bddc/bddc.c
PCSetCoordinates_FieldSplit() in src/ksp/pc/impls/fieldsplit/fieldsplit.c
PCSetCoordinates_AGG() in src/ksp/pc/impls/gamg/agg.c
PCSetCoordinates_GEO() in src/ksp/pc/impls/gamg/geo.c
PCSetCoordinates_H2OPUS() in src/ksp/pc/impls/h2opus/pch2opus.c
PCSetCoordinates_HYPRE() in src/ksp/pc/impls/hypre/hypre.c
PCSetCoordinates_ML() in src/ksp/pc/impls/ml/ml.c


Index of all PC routines
Table of Contents for all manual pages
Index of all manual pages