BVOrthogonalizeColumn#
Orthogonalize one of the column vectors with respect to the previous ones.
Synopsis#
#include "slepcbv.h"
PetscErrorCode BVOrthogonalizeColumn(BV bv,PetscInt j,PetscScalar H[],PetscReal *norm,PetscBool *lindep)
Collective
Input Parameters#
bv - the basis vectors context
j - index of column to be orthogonalized
Output Parameters#
H - (optional) coefficients computed during orthogonalization
norm - (optional) norm of the vector after being orthogonalized
lindep - (optional) flag indicating that refinement did not improve the quality of orthogonalization
Notes#
This function applies an orthogonal projector to project vector \(v_j\) onto the orthogonal complement of the span of the columns \(v_{0:j-1}\). The columns \(v_{0:j-1}\) are assumed to be mutually orthonormal.
Leading columns \(v_{0:\ell-1}\) also participate in the orthogonalization, as well
as the constraints. If H is given, it must have enough space to store
\(j-\ell+1\) coefficients (the last coefficient will contain the value norm, unless
the norm argument is NULL).
If a non-standard inner product has been specified with BVSetMatrix(),
then the vector is B-orthogonalized, using the non-standard inner product
defined by matrix \(B\). The output vector satisfies \(v_j^*Bv_{0:j-1} = 0\).
This routine does not normalize the resulting vector, see BVOrthonormalizeColumn().
In the case of an indefinite inner product, the lindep parameter is not
computed (set to false).
See Also#
BV: Basis Vectors, BVSetOrthogonalization(), BVSetMatrix(), BVSetActiveColumns(), BVOrthogonalize(), BVOrthogonalizeVec(), BVGetNumConstraints(), BVOrthonormalizeColumn()
Level#
advanced
Location#
src/sys/classes/bv/interface/bvorthog.c
Index of all BV routines Table of Contents for all manual pages Index of all manual pages