petsc-3.7.1 2016-05-15
Report Typos and Errors

VecGetValues

Gets values from certain locations of a vector. Currently can only get values on the same processor

Synopsis

#include "petscvec.h"   
PetscErrorCode  VecGetValues(Vec x,PetscInt ni,const PetscInt ix[],PetscScalar y[])
Not Collective Many br

Input Parameters

x - vector to get values from Many br
ni - number of elements to get Many br
ix - indices where to get them from (in global 1d numbering) Many br

Output Parameter

y -array of values Many br

Notes

The user provides the allocated array y; it is NOT allocated in this routine Many br

VecGetValues() gets y[i] = x[ix[i]], for i=0,...,ni-1. Many br

VecAssemblyBegin() and VecAssemblyEnd() MUST be called before calling this Many br

VecGetValues() uses 0-based indices in Fortran as well as in C. Many br

If you call VecSetOption(x, VEC_IGNORE_NEGATIVE_INDICES,PETSC_TRUE), Many brnegative indices may be passed in ix. These rows are Many brsimply ignored. Many br

Many br

See Also

VecAssemblyBegin(), VecAssemblyEnd(), VecSetValues()

Level:beginner
Location:
src/vec/vec/interface/rvector.c
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages