Advanced Multi-Physics (AMP)
On-Line Documentation
ThyraVectorSpaceWrapper.h
Go to the documentation of this file.
1#ifndef included_AMP_ThyraVectorSpaceWrapper
2#define included_AMP_ThyraVectorSpaceWrapper
3
4// AMP includes
5#include "AMP/vectors/trilinos/thyra/ThyraVectorWrapper.h"
6
7// Trilinos includes
9#include "Thyra_VectorSpaceBase.hpp"
11
12
13namespace AMP::LinearAlgebra {
14
15
21class ThyraVectorSpaceWrapper : public Thyra::VectorSpaceBase<double>
22{
23public:
25 explicit ThyraVectorSpaceWrapper( std::shared_ptr<const ThyraVectorWrapper> thyra_vec,
26 bool is_range = true );
27
28 // Deleted constructors
32
35
36 // Virtual functions inherited from VectorSpaceBase
37 virtual Teuchos::Ordinal dim() const override;
38 virtual bool isCompatible( const Thyra::VectorSpaceBase<double> &vecSpc ) const override;
40 smallVecSpcFcty() const override;
41 virtual double scalarProd( const Thyra::VectorBase<double> &x,
42 const Thyra::VectorBase<double> &y ) const override;
43
44
45protected:
46 // Virtual functions inherited from VectorSpaceBase
49 createMembers( int numMembers ) const override;
51 createMemberView( const RTOpPack::SubVectorView<double> &raw_v ) const override;
53 createMemberView( const RTOpPack::ConstSubVectorView<double> &raw_v ) const override;
55 createMembersView( const RTOpPack::SubMultiVectorView<double> &raw_mv ) const override;
57 createMembersView( const RTOpPack::ConstSubMultiVectorView<double> &raw_mv ) const override;
58 virtual void scalarProdsImpl( const Thyra::MultiVectorBase<double> &X,
59 const Thyra::MultiVectorBase<double> &Y,
60 const Teuchos::ArrayView<double> &scalarProds ) const override;
61
62 // Local data
63 bool d_is_range = false;
64 std::shared_ptr<const ThyraVectorWrapper> d_thyra_vec;
65};
66
67
68} // namespace AMP::LinearAlgebra
69
70#endif
#define X(C)
virtual Teuchos::RCP< Thyra::VectorBase< double > > createMemberView(const RTOpPack::SubVectorView< double > &raw_v) const override
virtual double scalarProd(const Thyra::VectorBase< double > &x, const Thyra::VectorBase< double > &y) const override
virtual Teuchos::RCP< Thyra::VectorBase< double > > createMember() const override
virtual Teuchos::RCP< const Thyra::VectorSpaceFactoryBase< double > > smallVecSpcFcty() const override
ThyraVectorSpaceWrapper & operator=(const ThyraVectorSpaceWrapper &)=delete
virtual Teuchos::RCP< const Thyra::VectorBase< double > > createMemberView(const RTOpPack::ConstSubVectorView< double > &raw_v) const override
ThyraVectorSpaceWrapper(const ThyraVectorSpaceWrapper &)=delete
virtual Teuchos::RCP< const Thyra::MultiVectorBase< double > > createMembersView(const RTOpPack::ConstSubMultiVectorView< double > &raw_mv) const override
virtual Teuchos::Ordinal dim() const override
virtual Teuchos::RCP< Thyra::MultiVectorBase< double > > createMembers(int numMembers) const override
virtual void scalarProdsImpl(const Thyra::MultiVectorBase< double > &X, const Thyra::MultiVectorBase< double > &Y, const Teuchos::ArrayView< double > &scalarProds) const override
virtual bool isCompatible(const Thyra::VectorSpaceBase< double > &vecSpc) const override
virtual Teuchos::RCP< Thyra::MultiVectorBase< double > > createMembersView(const RTOpPack::SubMultiVectorView< double > &raw_mv) const override
std::shared_ptr< const ThyraVectorWrapper > d_thyra_vec
ThyraVectorSpaceWrapper(std::shared_ptr< const ThyraVectorWrapper > thyra_vec, bool is_range=true)
Default constructor.
#define DISABLE_WARNINGS
Re-enable warnings.
#define ENABLE_WARNINGS
Suppress all warnings.



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:41.
Comments on this page