BVMultInPlace#

Update a set of vectors as V(:,s:e-1) = V*Q(:,s:e-1).

Synopsis#

#include "slepcbv.h" 
PetscErrorCode BVMultInPlace(BV V,Mat Q,PetscInt s,PetscInt e)

Logically Collective

Input Parameters#

  • Q - a sequential dense matrix

  • s - first column of V to be overwritten

  • e - first column of V not to be overwritten

Input/Output Parameter#

  • V - basis vectors

Notes#

The matrix Q must be a sequential dense Mat, with all entries equal on all processes (otherwise each process will compute a different update).

This function computes V(:,s:e-1) = VQ(:,s:e-1), that is, given a set of vectors V, columns from s to e-1 are overwritten with columns from s to e-1 of the matrix-matrix product VQ. Only columns s to e-1 of Q are referenced.

See Also#

BVMult(), BVMultVec(), BVMultInPlaceHermitianTranspose(), BVSetActiveColumns()

Level#

intermediate

Location#

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

Implementations#

BVMultInPlace_Contiguous() in src/sys/classes/bv/impls/contiguous/contig.c
BVMultInPlace_Mat() in src/sys/classes/bv/impls/mat/bvmat.c
BVMultInPlace_Svec() in src/sys/classes/bv/impls/svec/svec.c
BVMultInPlace_Tensor() in src/sys/classes/bv/impls/tensor/bvtensor.c


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