irlba
A C++ library for IRLBA
Loading...
Searching...
No Matches
irlba::Workspace< EigenVector_ > Class Template Referenceabstract

Workspace class for multiplying a Matrix. More...

#include <interface.hpp>

Inheritance diagram for irlba::Workspace< EigenVector_ >:

Public Member Functions

virtual void multiply (const EigenVector_ &right, EigenVector_ &output)=0
 

Detailed Description

template<class EigenVector_>
class irlba::Workspace< EigenVector_ >

Workspace class for multiplying a Matrix.

Template Parameters
EigenVector_A floating-point Eigen::Vector.

Typically constructed by Matrix::new_workspace(). The lifetime of this object should not exceed that of the Matrix instance used to construct it.

Member Function Documentation

◆ multiply()

template<class EigenVector_ >
virtual void irlba::Workspace< EigenVector_ >::multiply ( const EigenVector_ & right,
EigenVector_ & output )
pure virtual
Parameters
[in]rightThe right-hand side of the matrix product.
[out]outputThe output vector to store the matrix product. This is filled with the product of this matrix and rhs.

This method will be called without any explicit template arguments, so implementations do not need to use the same number/order of template parameters. EigenVector_ may also be a template parameter of the class rather than the method, depending on what is most convenient for defining the associated Workspace.

Implemented in irlba::CenteredWorkspace< EigenVector_, Matrix_, Center_ >, irlba::ParallelSparseWorkspace< EigenVector_, ValueArray_, IndexArray_, PointerArray_ >, irlba::ScaledWorkspace< EigenVector_, Matrix_, Scale_ >, and irlba::SimpleWorkspace< EigenVector_, Simple_ >.


The documentation for this class was generated from the following file: