petsc-3.10.5 2019-03-28
Report Typos and Errors

# VecSetOption

Sets an option for controling a vector's behavior.

### Synopsis

    #include "petscvec.h"
    PetscErrorCode  VecSetOption(Vec x,VecOption op,PetscBool flag)

Collective on Vec

### Input Parameter

| x | - the vector
| op | - the option
| flag | - turn the option on or off

### Supported Options

| VEC_IGNORE_OFF_PROC_ENTRIES, which causes VecSetValues() to ignore | - entries destined to be stored on a separate processor. This can be used to eliminate the global reduction in the VecAssemblyXXXX() if you know that you have only used VecSetValues() to set local elements
| VEC_IGNORE_NEGATIVE_INDICES, which means you can pass negative indices | - in ix in calls to VecSetValues() or VecGetValues(). These rows are simply ignored.
| VEC_SUBSET_OFF_PROC_ENTRIES, which causes VecAssemblyBegin() to assume that the off | - process entries will always be a subset (possibly equal) of the off-process entries set on the first assembly. This reuses the communication pattern, thus avoiding a global reduction. Subsequent assemblies setting off-process values should use the same InsertMode as the first assembly.

### Developer Note

The InsertMode restriction could be removed by packing the stash messages out of place.

### Level

intermediate

### Location

src/vec/vec/interface/vector.c

### Implementations

VecSetOption_MPI in src/vec/vec/impls/mpi/pbvec.c
VecSetOption_Seq in src/vec/vec/impls/seq/bvec2.c
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages