IPBOrthogonalize

B-Orthogonalize a vector with respect to two set of vectors.

Synopsis

#include "slepcip.h" 
PetscErrorCode IPBOrthogonalize(IP ip,PetscInt nds,Vec *DS, Vec *BDS,PetscInt n,PetscBool *which,Vec *V,Vec *BV,Vec v,Vec Bv,PetscScalar *H,PetscReal *norm,PetscBool *lindep)
Collective on IP

Input Parameters

ip - the inner product (IP) context
nds - number of columns of DS
DS - first set of vectors
BDS - B * DS
n - number of columns of V
which - logical array indicating columns of V to be used
V - second set of vectors
BV - B * V

Input/Output Parameter

v - (input) vector to be orthogonalized and (output) result of orthogonalization
Bv - (input/output) B * v

Output Parameter

H - coefficients computed during orthogonalization with V, of size nds+n if norm == PETSC_NULL, and nds+n+1 otherwise.
norm - norm of the vector after being orthogonalized
lindep - flag indicating that refinement did not improve the quality of orthogonalization

Notes

This function applies an orthogonal projector to project vector v onto the orthogonal complement of the span of the columns of DS and V.

On exit, v0 = [V v]*H, where v0 is the original vector v.

This routine does not normalize the resulting vector.

See Also

IPSetOrthogonalization(), IPBiOrthogonalize()

Location: src/ip/ipborthog.c
Index of all IP routines
Table of Contents for all manual pages
Index of all manual pages