VecStrideScatter#
Scatters a single component from a vector into a multi-component vector.
Synopsis#
#include "petscvec.h"
PetscErrorCode VecStrideScatter(Vec s, PetscInt start, Vec v, InsertMode addv)
Collective
Input Parameters#
s - the single-component vector
start - starting point of the subvector (defined by a stride)
addv - one of
ADD_VALUES
,INSERT_VALUES
,MAX_VALUES
Output Parameter#
v - the location where the subvector is scattered (the multi-component vector)
Notes#
One must call VecSetBlockSize()
on the multi-component vector before this
routine to set the stride information, or use a vector created from a multicomponent DMDA
.
The parallel layout of the vector and the subvector must be the same; i.e., nlocal of v = stride*(nlocal of s)
Not optimized; could be easily
See Also#
Vec
, VecStrideNorm()
, VecStrideGather()
, VecStrideMin()
, VecStrideMax()
, VecStrideGatherAll()
,
VecStrideScatterAll()
, VecStrideSubSetScatter()
, VecStrideSubSetGather()
Level#
advanced
Location#
Examples#
src/vec/vec/tutorials/ex12.c
src/vec/vec/tutorials/ex12f.F90
src/vec/vec/tutorials/ex16.c
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages