Thyra
Version of the Day
|
Base interface for a factory that converts vector space types and vectors and multi-vectors from one scalar type to another. More...
#include <Thyra_VectorSpaceConverterBase.hpp>
Public Member Functions | |
virtual | ~VectorSpaceConverterBase () |
virtual Teuchos::RCP< const VectorSpaceBase< ScalarTo > > | createVectorSpaceTo (const VectorSpaceBase< ScalarFrom > &vecSpc) const =0 |
Create a new vector space with scalar type ScalarTo given an existing vector space with scalar type ScalarFrom . More... | |
virtual Teuchos::RCP< const VectorSpaceBase< ScalarFrom > > | createVectorSpaceFrom (const VectorSpaceBase< ScalarTo > &vecSpc) const =0 |
Create a new vector space with scalar type ScalarFrom given an existing vector space with scalar type ScalarTo . More... | |
virtual void | convert (const MultiVectorBase< ScalarFrom > &mv_from, MultiVectorBase< ScalarTo > *mv_to) const =0 |
Copy from a multi-vector (or vector) with one scalar type to another multi-vector (or vector) with another scalar type. More... | |
Base interface for a factory that converts vector space types and vectors and multi-vectors from one scalar type to another.
This abstract interface is templated on two scalar types, ScalarFrom
and ScalarTo
, which allow a client to create new vector spaces and convert vectors and multi-vectors from one scalar type to another. This is a critical capability for some algorithms with mixed scalar types.
One of these concrete subclasses should be provided for every concrete VectorSpaceBase
subclass.
Note that this interface works just fine even if ScalarTo
is the same type as ScalarFrom
.
ToDo: Finish documentation!
Definition at line 39 of file Thyra_VectorSpaceConverterBase.hpp.
|
inlinevirtual |
Definition at line 43 of file Thyra_VectorSpaceConverterBase.hpp.
|
pure virtual |
Create a new vector space with scalar type ScalarTo
given an existing vector space with scalar type ScalarFrom
.
Implemented in Thyra::DefaultSerialVectorSpaceConverter< ScalarFrom, ScalarTo >.
|
pure virtual |
Create a new vector space with scalar type ScalarFrom
given an existing vector space with scalar type ScalarTo
.
Implemented in Thyra::DefaultSerialVectorSpaceConverter< ScalarFrom, ScalarTo >.
|
pure virtual |
Copy from a multi-vector (or vector) with one scalar type to another multi-vector (or vector) with another scalar type.
Implemented in Thyra::SerialVectorSpaceConverterBase< ScalarFrom, ScalarTo >.