# DMPlexGlobalVectorLoad
Loads on-disk vector data into a global vector 
## Synopsis
```
#include "petscdmplex.h"   
PetscErrorCode DMPlexGlobalVectorLoad(DM dm, PetscViewer viewer, DM sectiondm, PetscSF sf, Vec vec)
```
Collective on dm


## Input Parameters

- ***dm        -*** The `DM` that represents the topology
- ***viewer    -*** The `PetscViewer` that represents the on-disk vector data
- ***sectiondm -*** The `DM` that contains the global section on which vec is defined
- ***sf        -*** The `PetscSF` that migrates the on-disk vector data into vec
- ***vec       -*** The global vector to set values of





## Notes
In general dm and sectiondm are two different objects, the former carrying the topology and the latter carrying the section, and have been given a topology name and a section name, respectively, with `PetscObjectSetName()`. In practice, however, they can be the same object if it carries both topology and section; in that case the name of the object is used as both the topology name and the section name.


## Typical calling sequence
```none
       DMCreate(PETSC_COMM_WORLD, &dm);
       DMSetType(dm, DMPLEX);
       PetscObjectSetName((PetscObject)dm, "topologydm_name");
       DMPlexTopologyLoad(dm, viewer, &sfX);
       DMClone(dm, &sectiondm);
       PetscObjectSetName((PetscObject)sectiondm, "sectiondm_name");
       DMPlexSectionLoad(dm, viewer, sectiondm, sfX, &gsf, NULL);
       DMGetGlobalVector(sectiondm, &vec);
       PetscObjectSetName((PetscObject)vec, "vec_name");
       DMPlexGlobalVectorLoad(dm, viewer, sectiondm, gsf, vec);
       DMRestoreGlobalVector(sectiondm, &vec);
       PetscSFDestroy(&gsf);
       PetscSFDestroy(&sfX);
       DMDestroy(&sectiondm);
       DMDestroy(&dm);
```



## See Also
 [](chapter_unstructured), `DM`, `DMPLEX`, `DMPlexTopologyLoad()`, `DMPlexSectionLoad()`, `DMPlexLocalVectorLoad()`, `DMPlexGlobalVectorView()`, `DMPlexLocalVectorView()`,
`PetscSF`, `PetscViewer`

## Level
advanced

## Location
<A HREF="PETSC_DOC_OUT_ROOT_PLACEHOLDER/src/dm/impls/plex/plex.c.html#DMPlexGlobalVectorLoad">src/dm/impls/plex/plex.c</A>


---
[Edit on GitLab](https://gitlab.com/petsc/petsc/-/edit/release/src/dm/impls/plex/plex.c)


[Index of all DMPlex routines](index.md)  
[Table of Contents for all manual pages](/docs/manualpages/index.md)  
[Index of all manual pages](/docs/manualpages/singleindex.md)  
