MatCreateVecNestFromMultipleShifts#

Creates a VECNEST that is compatible with a matrix created with MatCreateNestFromMultipleShifts().

Synopsis#

#include "petscmat.h" 
PetscErrorCode MatCreateVecNestFromMultipleShifts(Mat A, Vec v, Vec *vout)

Collective

Input Parameters#

Output Parameter#

  • vout - the resulting vector

Notes#

The result is a VECNEST compatible with A, so that it can, e.g., be multiplied against. If the input vector v is passed, vout will contain nshift references to v, where nshift is the number of subvectors of vout. Hence, it is intended as a read-only right-hand side, not a solution vector.

In real scalars, in the case of a complex-conjugate pair only the first block of the pair is set while the second is left zero. The reason is that in this case the second block represents the imaginary part, which is zero since v is real.

See Also#

Matrices, MatCreateNestFromMultipleShifts()

Level#

intermediate

Location#

src/mat/impls/nest/multishift.c

Examples#

src/ksp/ksp/tutorials/ex90.c


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