BVSetOrthogonalization#

Specifies the method used for the orthogonalization of vectors (classical or modified Gram-Schmidt with or without refinement), and for the block-orthogonalization (simultaneous orthogonalization of a set of vectors).

Synopsis#

Logically Collective

Input Parameters#

  • bv - the basis vectors context

  • type - the method of vector orthogonalization

  • refine - type of refinement

  • eta - parameter for selective refinement

  • block - the method of block orthogonalization

Options Database Keys#

  • -bv_orthog_type - the vector orthogonalization, either cgs or mgs

  • -bv_orthog_refine - the refinement type, never, ifneeded (default) or always

  • -bv_orthog_eta - the value of eta

  • -bv_orthog_block - the block-orthogonalization method

Notes#

The default settings work well for most problems.

The parameter eta should be a real value between 0 and 1, that is used only when the refinement type is ifneeded. Use PETSC_DETERMINE to set a reasonable default value. Use PETSC_CURRENT to leave the current value unchanged.

When using several processes, BV_ORTHOG_MGS is likely to result in bad scalability.

If the method set for block orthogonalization is BV_ORTHOG_BLOCK_GS, then the computation is done column by column with the vector orthogonalization.

See Also#

BV: Basis Vectors, BVOrthogonalizeColumn(), BVGetOrthogonalization(), BVOrthogType, BVOrthogRefineType, BVOrthogBlockType

Level#

advanced

Location#

src/sys/classes/bv/interface/bvbasic.c


Index of all BV routines Table of Contents for all manual pages Index of all manual pages