Abstract class to encapsulate the action of a discrete operator on vectors, matrices, etc. More...
#include <OperatorContext.h>
Public Types | |
using | ValueTypeUnion = blasLapack::scalar_type< ValueTypeOperator, ValueTypeOperand > |
Public Member Functions | |
~OperatorContext ()=default | |
Default Destructor. More... | |
virtual void | apply (MultiVector< ValueTypeOperand, memorySpace > &X, MultiVector< ValueTypeUnion, memorySpace > &Y) const =0 |
Abstract class to encapsulate the action of a discrete operator on vectors, matrices, etc.
ValueTypeOperator | The datatype (float, double, complex<double>, etc.) for the underlying operator |
ValueTypeOperand | The datatype (float, double, complex<double>, etc.) of the vector, matrices, etc. on which the operator will act |
memorySpace | The meory sapce (HOST, DEVICE, HOST_PINNES, etc.) in which the data of the operator and its operands reside |
using dftefe::linearAlgebra::OperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >::ValueTypeUnion = blasLapack::scalar_type<ValueTypeOperator, ValueTypeOperand> |
|
default |
Default Destructor.
|
pure virtual |
Implemented in dftefe::linearAlgebra::Preconditioner< ValueTypeOperator, ValueTypeOperand, memorySpace >, dftefe::linearAlgebra::IdentityOperatorContext< ValueTypeOperator, ValueTypeOperand, memorySpace >, dftefe::linearAlgebra::PreconditionerJacobi< ValueTypeOperator, ValueTypeOperand, memorySpace >, and dftefe::linearAlgebra::PreconditionerNone< ValueTypeOperator, ValueTypeOperand, memorySpace >.