BVNormalize#
Normalize all columns (starting from the leading ones).
Synopsis#
#include "slepcbv.h"
PetscErrorCode BVNormalize(BV bv,PetscScalar eigi[])
Collective
Input Parameters#
bv - basis vectors
eigi - (optional) imaginary parts of eigenvalues
Notes#
On output, all columns will have unit norm. The normalization is done with
respect to the 2-norm, or to the \(B\)-norm if a non-standard inner product has
been specified with BVSetMatrix(), see BVNormColumn().
If the optional argument eigi is passed (taken into account only in real
scalars) it is interpreted as the imaginary parts of the eigenvalues and
the BV is supposed to contain the corresponding eigenvectors. Suppose the
first three values are eigi = \(\{ 0, \alpha, -\alpha \}\), then the first column
is normalized as usual, but the second and third ones are normalized assuming
that they contain the real and imaginary parts of a complex conjugate pair of
eigenvectors.
If eigi is passed, the inner-product matrix is ignored.
If there are leading columns, they are not modified (are assumed to be already normalized).
See Also#
Level#
intermediate
Location#
Implementations#
BVNormalize_Contiguous() in src/sys/classes/bv/impls/contiguous/contig.c
BVNormalize_Mat() in src/sys/classes/bv/impls/mat/bvmat.c
BVNormalize_Svec() in src/sys/classes/bv/impls/svec/svec.c
BVNormalize_Vecs() in src/sys/classes/bv/impls/vecs/vecs.c
Index of all BV routines Table of Contents for all manual pages Index of all manual pages