petsc-3.6.2 2015-10-02
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

### Input Parameters

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

### Output Parameter

y -array of values

### Notes

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

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

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

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

If you call VecSetOption(x, VEC_IGNORE_NEGATIVE_INDICES,PETSC_TRUE), negative indices may be passed in ix. These rows are simply ignored.

### See Also

VecAssemblyBegin(), VecAssemblyEnd(), VecGetValuesLocal(),
VecGetValuesBlocked(), InsertMode, INSERT_VALUES, ADD_VALUES, 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