petsc-3.8.4 2018-03-24
Report Typos and Errors

VecStrideMax

Computes the maximum of subvector of a vector defined by a starting point and a stride and optionally its location.

Synopsis

#include "petscvec.h" 
PetscErrorCode  VecStrideMax(Vec v,PetscInt start,PetscInt *idex,PetscReal *nrm)
Collective on Vec

Input Parameter

v - the vector
start - starting point of the subvector (defined by a stride)

Output Parameter

index - the location where the maximum occurred (pass NULL if not required)
nrm - the maximum value in the subvector

Notes

One must call VecSetBlockSize() before this routine to set the stride information, or use a vector created from a multicomponent DMDA.

If xa is the array representing the vector x, then this computes the max of the array (xa[start],xa[start+stride],xa[start+2*stride], ....)

This is useful for computing, say the maximum of the pressure variable when the pressure is stored (interlaced) with other variables, e.g., density, etc. This will only work if the desire subvector is a stride subvector.

See Also

VecMax(), VecStrideNorm(), VecStrideGather(), VecStrideScatter(), VecStrideMin()

Level:advanced
Location:
src/vec/vec/utils/vinv.c
Index of all Vec routines
Table of Contents for all manual pages
Index of all manual pages