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