PETSc version 3.16.5
Fix/Edit manual page

# 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 Parameters

| 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