BVOrthogRefineType#
Determines what type of iterative refinement to use during orthogonalization of vectors.
Synopsis#
typedef enum { BV_ORTHOG_REFINE_IFNEEDED,
BV_ORTHOG_REFINE_NEVER,
BV_ORTHOG_REFINE_ALWAYS } BVOrthogRefineType;
Values#
BV_ORTHOG_REFINE_IFNEEDED- Refine only if a certain criterion is satisfiedBV_ORTHOG_REFINE_NEVER- Never refine, do plain CGS or MGSBV_ORTHOG_REFINE_ALWAYS- Always refine, i.e., run CGS2 or MGS2
Notes#
The default is to perform one step of iterative refinement if a certain numerical criterion holds. In ill-conditioned cases, a third orthogonalization can also be done.
Never refining is not recommended because it will generally make the eigensolver numerically unstable.
Always refining is numerically stable, but it often performs unnecessary computation.
See Also#
BV: Basis Vectors, BVSetOrthogonalization(), BVGetOrthogonalization(), BVOrthogonalizeColumn()
Level#
advanced
Location#
Index of all BV routines Table of Contents for all manual pages Index of all manual pages