:orphan: # DMGlobalToLocal update local vectors from global vector ## Synopsis ``` #include "petscdm.h" #include "petscdmlabel.h" #include "petscds.h" PetscErrorCode DMGlobalToLocal(DM dm, Vec g, InsertMode mode, Vec l) ``` Neighbor-wise Collective ## Input Parameters - ***dm -*** the `DM` object - ***g -*** the global vector - ***mode -*** `INSERT_VALUES` or `ADD_VALUES` - ***l -*** the local vector ## Notes The communication involved in this update can be overlapped with computation by instead using `DMGlobalToLocalBegin()` and `DMGlobalToLocalEnd()`. `DMGlobalToLocalHookAdd()` may be used to provide additional operations that are performed during the update process. ## See Also [](ch_dmbase), `DM`, `DMGlobalToLocalHookAdd()`, `DMCoarsen()`, `DMDestroy()`, `DMView()`, `DMCreateGlobalVector()`, `DMCreateInterpolation()`, `DMGlobalToLocalEnd()`, `DMLocalToGlobalBegin()`, `DMLocalToGlobal()`, `DMLocalToGlobalBegin()`, `DMLocalToGlobalEnd()`, `DMGlobalToLocalBegin()` `DMGlobalToLocalEnd()` ## Level beginner ## Location src/dm/interface/dm.c ## Examples src/dm/impls/stag/tutorials/ex1.c
src/dm/impls/stag/tutorials/ex3.c
src/dm/impls/stag/tutorials/ex4.c
src/dm/impls/stag/tutorials/ex6.c
src/dm/tutorials/ex2.c
src/snes/tutorials/ex3k.kokkos.cxx
--- [Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/interface/dm.c) [Index of all DM routines](index.md) [Table of Contents for all manual pages](/manualpages/index.md) [Index of all manual pages](/manualpages/singleindex.md)