44 #include "AbstractLinAlgPack_VectorSpaceThyra.hpp"
45 #include "AbstractLinAlgPack_VectorSpaceFactoryThyra.hpp"
46 #include "AbstractLinAlgPack_VectorMutableThyra.hpp"
47 #include "AbstractLinAlgPack_MultiVectorMutableThyra.hpp"
48 #include "AbstractLinAlgPack_InnerProductThyra.hpp"
49 #include "Teuchos_Assert.hpp"
50 #include "Teuchos_dyn_cast.hpp"
52 namespace AbstractLinAlgPack {
72 namespace mmp = MemMngPack;
75 ,
"VectorSpaceThyra::initialize(thyra_vec_spc): Error!"
88 thyra_vec_spc_ = Teuchos::null;
89 return tmp_thyra_vec_spc;
106 if( thyra_vec_spc->
thyra_vec_spc()->isCompatible(*thyra_vec_spc_) )
113 return thyra_vec_spc_->hasInCoreView();
118 return thyra_vec_spc_->dim();
vec_mut_ptr_t create_member() const
VectorSpace adapter subclass for Thyra::VectorSpaceBase<value_type> .
#define TEUCHOS_TEST_FOR_EXCEPTION(throw_exception_test, Exception, msg)
space_fcty_ptr_t small_vec_spc_fcty() const
Teuchos::RCP< const Thyra::VectorSpaceBase< value_type > > set_uninitialized()
Set to uninitialized and return smart pointer to the internal Thyra::VectorSpaceBase<value_type> obj...
VectorSpaceFactory adapter subclass for Thyra::VectorSpaceBase.
virtual bool is_in_core() const
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
const Teuchos::RCP< const Thyra::VectorSpaceBase< value_type > > & thyra_vec_spc() const
Return a (converted) smart pointer to the internal smart pointer to the Thyra::VectorSpaceBase<value_...
virtual const inner_prod_ptr_t inner_prod() const
VectorMutable adapter subclass for Thyra::VectorBase.
VectorSpaceThyra()
Construct to uninitialized.
void initialize(const Teuchos::RCP< const Thyra::VectorSpaceBase< value_type > > &thyra_vec_spc, const inner_prod_ptr_t &inner_prod=Teuchos::null)
Initalize given a smart pointer to a Thyra::VetorSpace object.
virtual index_type dim() const =0
MultiVectorMutable adapter subclass for Thyra::MultiVectorBase.
bool is_compatible(const VectorSpace &vec_spc) const
Implements the inner product using Thyra::VectorSpaceBase::scalarProd().
space_ptr_t clone() const
multi_vec_mut_ptr_t create_members(size_type num_vecs) const