VecStrideMax

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

Synopsis

int VecStrideMax(Vec v,int start,int *index,double *norm)
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 (not supported, pass PETSC_NULL)
norm - the max

Notes

One must call VecSetBlockSize() before this routine to set the stride information; or use a vector associated with a DA.

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.

Keywords

vector, subvector maximum, maximum

See Also

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

Level:advanced
Location:src/vec/utils/vinv.c
Vector Index
Table of Contents