BVMatMult#
Computes the matrix-vector product for each column, \(Y=AV\).
Synopsis#
#include "slepcbv.h" 
PetscErrorCode BVMatMult(BV V,Mat A,BV Y)
Neighbor-wise Collective
Input Parameters#
- V - basis vectors context 
- A - the matrix 
Output Parameter#
- Y - the result 
Notes#
Both V and Y must be distributed in the same manner. Only active columns
(excluding the leading ones) are processed.
In the result Y, columns are overwritten starting from the leading ones.
The number of active columns in V and Y should match, although they need
not be the same columns.
It is possible to choose whether the computation is done column by column
or as a Mat-Mat product, see BVSetMatMultMethod().
See Also#
BV: Basis Vectors, BVCopy(), BVSetActiveColumns(), BVMatMultColumn(), BVMatMultTranspose(), BVMatMultHermitianTranspose(), BVSetMatMultMethod()
Level#
intermediate
Location#
Implementations#
BVMatMult_Contiguous() in src/sys/classes/bv/impls/contiguous/contig.c
BVMatMult_Mat() in src/sys/classes/bv/impls/mat/bvmat.c
BVMatMult_Svec() in src/sys/classes/bv/impls/svec/svec.c
BVMatMult_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
