DMLocalToGlobalBegin#

begins updating global vectors from local vectors

Synopsis#

#include "petscdm.h"          
#include "petscdmlabel.h"     
#include "petscds.h"     
PetscErrorCode DMLocalToGlobalBegin(DM dm, Vec l, InsertMode mode, Vec g)

Neighbor-wise Collective

Input Parameters#

  • dm - the DM object

  • l - the local vector

  • mode - if INSERT_VALUES then no parallel communication is used, if ADD_VALUES then all ghost points from the same base point accumulate into that base point.

  • g - the global vector

Notes#

In the ADD_VALUES case you normally would zero the receiving vector before beginning this operation.

INSERT_VALUES is not supported for DMDA, in that case simply compute the values directly into a global vector instead of a local one.

Use DMLocalToGlobalEnd() to complete the communication process.

DMLocalToGlobal() is a short form of DMLocalToGlobalBegin() and DMLocalToGlobalEnd()

DMLocalToGlobalHookAdd() may be used to provide additional operations that are performed during the update process.

See Also#

DM Basics, DM, DMLocalToGlobal(), DMLocalToGlobalEnd(), DMCoarsen(), DMDestroy(), DMView(), DMCreateGlobalVector(), DMCreateInterpolation(), DMGlobalToLocal(), DMGlobalToLocalEnd(), DMGlobalToLocalBegin()

Level#

intermediate

Location#

src/dm/interface/dm.c

Examples#

src/ts/tutorials/ex10.c
src/ts/tutorials/ex14.c
src/ts/tutorials/ex21.c
src/dm/tutorials/ex9.c
src/ts/tutorials/ex2.c
src/dm/tutorials/ex1.c
src/dm/tutorials/ex5.c
src/ts/tutorials/ex50.c
src/dm/tutorials/ex14.c
src/dm/tutorials/ex7.c

Implementations#

DMLocalToGlobalBegin_Composite() in src/dm/impls/composite/pack.c
DMLocalToGlobalBegin_DA() in src/dm/impls/da/dagtol.c
DMLocalToGlobalBegin_Moab() in src/dm/impls/moab/dmmbvec.cxx
DMLocalToGlobalBegin_Network() in src/dm/impls/network/network.c
DMLocalToGlobalBegin_Redundant() in src/dm/impls/redundant/dmredundant.c
DMLocalToGlobalBegin_Stag() in src/dm/impls/stag/stag.c


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