SVDSetInitialSpaces#

Specify two basis of vectors that constitute the initial right and/or left spaces.

Synopsis#

#include "slepcsvd.h" 
PetscErrorCode SVDSetInitialSpaces(SVD svd,PetscInt nr,Vec isr[],PetscInt nl,Vec isl[])

Collective

Input Parameters#

  • svd - the singular value solver context

  • nr - number of right vectors

  • isr - set of basis vectors of the right initial space

  • nl - number of left vectors

  • isl - set of basis vectors of the left initial space

Notes#

The initial right and left spaces are rough approximations to the right and/or left singular subspaces from which the solver starts to iterate. It is not necessary to provide both sets of vectors.

Some solvers start to iterate on a single vector (initial vector). In that case, the other vectors are ignored.

These vectors do not persist from one SVDSolve() call to the other, so the initial space should be set every time.

The vectors do not need to be mutually orthonormal, since they are explicitly orthonormalized internally.

Common usage of this function is when the user can provide a rough approximation of the wanted singular space. Then, convergence may be faster.

See Also#

SVDSetUp()

Level#

intermediate

Location#

src/svd/interface/svdsetup.c


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