petsc-3.14.6 2021-03-30
Report Typos and Errors

DMSlicedCreate

Creates a DM object, used to manage data for a unstructured problem

Synopsis

#include "petscdmsliced.h" 
PetscErrorCode  DMSlicedCreate(MPI_Comm comm,PetscInt bs,PetscInt nlocal,PetscInt Nghosts,const PetscInt ghosts[], const PetscInt d_nnz[],const PetscInt o_nnz[],DM *dm)
Collective

Input Parameter

comm - the processors that will share the global vector
bs - the block size
nlocal - number of vector entries on this process
Nghosts - number of ghost points needed on this process
ghosts - global indices of all ghost points for this process
d_nnz - matrix preallocation information representing coupling within this process
o_nnz - matrix preallocation information representing coupling between this process and other processes

Output Parameters

slice - the slice object

Notes

This DM does not support DMCreateLocalVector(), DMGlobalToLocalBegin(), and DMGlobalToLocalEnd() instead one directly uses VecGhostGetLocalForm() and VecGhostRestoreLocalForm() to access the local representation and VecGhostUpdateBegin() and VecGhostUpdateEnd() to update the ghost points.

One can use DMGlobalToLocalBegin(), and DMGlobalToLocalEnd() instead of VecGhostUpdateBegin() and VecGhostUpdateEnd().

See Also

DMDestroy(), DMCreateGlobalVector(), DMSetType(), DMSLICED, DMSlicedSetGhosts(), DMSlicedSetPreallocation(), VecGhostUpdateBegin(), VecGhostUpdateEnd(),
VecGhostGetLocalForm(), VecGhostRestoreLocalForm()

Level

advanced

Location

src/dm/impls/sliced/sliced.c
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages