VecGhostUpdateEnd

End the vector scatter to update the vector from local representation to global or global representation to local.

Synopsis

int VecGhostUpdateEnd(Vec g, InsertMode insertmode,ScatterMode scattermode)
Collective on Vec

Input Parameters

g - the vector (obtained with VecCreateGhost() or VecDuplicate())
insertmode - one of ADD_VALUES or INSERT_VALUES
scattermode - one of SCATTER_FORWARD or SCATTER_REVERSE

Notes

Use the following to update the ghost regions with correct values from the owning process

       VecGhostUpdateBegin(v,INSERT_VALUES,SCATTER_FORWARD);
       VecGhostUpdateEnd(v,INSERT_VALUES,SCATTER_FORWARD);

Use the following to accumulate the ghost region values onto the owning processors

       VecGhostUpdateBegin(v,ADD_VALUES,SCATTER_REVERSE);
       VecGhostUpdateEnd(v,ADD_VALUES,SCATTER_REVERSE);

To accumulate the ghost region values onto the owning processors and then update the ghost regions correctly, call the later followed by the former, i.e.,

       VecGhostUpdateBegin(v,ADD_VALUES,SCATTER_REVERSE);
       VecGhostUpdateEnd(v,ADD_VALUES,SCATTER_REVERSE);
       VecGhostUpdateBegin(v,INSERT_VALUES,SCATTER_FORWARD);
       VecGhostUpdateEnd(v,INSERT_VALUES,SCATTER_FORWARD);

See Also

VecCreateGhost(), VecGhostUpdateBegin(), VecGhostGetLocalForm(),
VecGhostRestoreLocalForm(),VecCreateGhostWithArray()

Examples

src/vec/examples/tutorials/ex9f.F
src/vec/examples/tutorials/ex9.c

Level:advanced
Location:src/vec/impls/mpi/pbvec.c
Vector Index
Table of Contents