petsc-dev 2014-04-16
Report Typos and Errors

DMDACreate1d

Creates an object that will manage the communication of one-dimensional regular array data that is distributed across some processors.

Synopsis

#include "petscdmda.h"   
PetscErrorCode  DMDACreate1d(MPI_Comm comm, DMBoundaryType bx, PetscInt M, PetscInt dof, PetscInt s, const PetscInt lx[], DM *da)
Collective on MPI_Comm

Input Parameters

comm - MPI communicator
bx - type of ghost cells at the boundary the array should have, if any. Use DM_BOUNDARY_NONE, DM_BOUNDARY_GHOSTED, or DM_BOUNDARY_PERIODIC.
M - global dimension of the array (use -M to indicate that it may be set to a different value from the command line with -da_grid_x <M>)
dof - number of degrees of freedom per node
s - stencil width
lx - array containing number of nodes in the X direction on each processor, or NULL. If non-null, must be of length as the number of processes in the MPI_Comm.

Output Parameter

da -the resulting distributed array object

Options Database Key

-dm_view - Calls DMView() at the conclusion of DMDACreate1d()
-da_grid_x <nx> - number of grid points in x direction; can set if M < 0
-da_refine_x <rx> - refinement factor
-da_refine <n> - refine the DMDA n times before creating it, if M < 0

Notes

The array data itself is NOT stored in the DMDA, it is stored in Vec objects; The appropriate vector objects can be obtained with calls to DMCreateGlobalVector() and DMCreateLocalVector() and calls to VecDuplicate() if more are needed.

Keywords

distributed array, create, one-dimensional

See Also

DMDestroy(), DMView(), DMDACreate2d(), DMDACreate3d(), DMGlobalToLocalBegin(), DMDASetRefinementFactor(),
DMGlobalToLocalEnd(), DMLocalToGlobalBegin(), DMLocalToLocalBegin(), DMLocalToLocalEnd(), DMDAGetRefinementFactor(), DMDAGetInfo(), DMCreateGlobalVector(), DMCreateLocalVector(), DMDACreateNaturalVector(), DMLoad(), DMDAGetOwnershipRanges()

Level:beginner
Location:
src/dm/impls/da/da1.c
Index of all DM routines
Table of Contents for all manual pages
Index of all manual pages

Examples

src/dm/examples/tutorials/ex3.c.html
src/dm/examples/tutorials/ex8.c.html
src/dm/examples/tutorials/ex51.c.html
src/dm/examples/tutorials/ex11f90.F.html
src/ksp/ksp/examples/tutorials/ex25.c.html
src/ksp/ksp/examples/tutorials/ex28.c.html
src/ksp/ksp/examples/tutorials/ex44f.F90.html
src/snes/examples/tutorials/ex3.c.html
src/snes/examples/tutorials/ex21.c.html
src/snes/examples/tutorials/ex22.c.html
src/snes/examples/tutorials/ex28.c.html