42 #ifndef THYRA_TPETRA_THYRA_WRAPPERS_DECL_HPP
43 #define THYRA_TPETRA_THYRA_WRAPPERS_DECL_HPP
46 #include "Thyra_OperatorVectorTypes.hpp"
47 #include "Thyra_TpetraVectorSpace_decl.hpp"
48 #include "Thyra_TpetraVector_decl.hpp"
49 #include "Thyra_TpetraMultiVector_decl.hpp"
50 #include "Thyra_TpetraLinearOp_decl.hpp"
63 RCP<const Teuchos::Comm<Ordinal> >
71 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
72 RCP<const VectorSpaceBase<Scalar> >
80 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
81 RCP<VectorBase<Scalar> >
84 const RCP<
const VectorSpaceBase<Scalar> > space = Teuchos::null
92 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
93 RCP<const VectorBase<Scalar> >
96 const RCP<
const VectorSpaceBase<Scalar> > space = Teuchos::null
104 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
105 RCP<MultiVectorBase<Scalar> >
108 const RCP<
const VectorSpaceBase<Scalar> > rangeSpace = Teuchos::null,
109 const RCP<
const VectorSpaceBase<Scalar> > domainSpace = Teuchos::null
117 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
118 RCP<const MultiVectorBase<Scalar> >
121 const RCP<
const VectorSpaceBase<Scalar> > rangeSpace = Teuchos::null,
122 const RCP<
const VectorSpaceBase<Scalar> > domainSpace = Teuchos::null
130 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
131 RCP<LinearOpBase<Scalar> >
134 const RCP<
const VectorSpaceBase<Scalar> > rangeSpace = Teuchos::null,
135 const RCP<
const VectorSpaceBase<Scalar> > domainSpace = Teuchos::null
143 template <
class Scalar,
class LocalOrdinal,
class GlobalOrdinal,
class Node>
144 RCP<const LinearOpBase<Scalar> >
147 const RCP<
const VectorSpaceBase<Scalar> > rangeSpace = Teuchos::null,
148 const RCP<
const VectorSpaceBase<Scalar> > domainSpace = Teuchos::null
172 template <class Scalar = Tpetra::Vector<>::scalar_type,
226 #endif // THYRA_TPETRA_THYRA_WRAPPERS_DECL_HPP
Teuchos::RCP< MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > createMultiVector(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &map, const size_t numVectors)
RCP< const MultiVectorBase< Scalar > > createConstMultiVector(const RCP< const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraMultiVector, const RCP< const VectorSpaceBase< Scalar > > rangeSpace=Teuchos::null, const RCP< const VectorSpaceBase< Scalar > > domainSpace=Teuchos::null)
RCP< const VectorBase< Scalar > > createConstVector(const RCP< const Tpetra::Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraVector, const RCP< const VectorSpaceBase< Scalar > > space=Teuchos::null)
Abstract interface for objects that represent a space for vectors.
GlobalOrdinal global_ordinal_type
RCP< const LinearOpBase< Scalar > > createConstLinearOp(const RCP< const Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraOperator, const RCP< const VectorSpaceBase< Scalar > > rangeSpace=Teuchos::null, const RCP< const VectorSpaceBase< Scalar > > domainSpace=Teuchos::null)
Interface for a collection of column vectors called a multi-vector.
Teuchos::RCP< Vector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > createVector(const Teuchos::RCP< const Map< LocalOrdinal, GlobalOrdinal, Node > > &map)
Abstract interface for finite-dimensional dense vectors.
LocalOrdinal local_ordinal_type
RCP< const VectorSpaceBase< Scalar > > createVectorSpace(const RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > &tpetraMap)
Create a Thyra::VectorSpaceBase object given a Tpetra::Map.
RCP< const Teuchos::Comm< Ordinal > > convertTpetraToThyraComm(const RCP< const Teuchos::Comm< int > > &tpetraComm)
Given an Tpetra Teuchos::Comm<int> object, return an equivalent Teuchos::Comm<Ordinal> object...
Base class for all linear operators.
RCP< LinearOpBase< Scalar > > createLinearOp(const RCP< Tpetra::Operator< Scalar, LocalOrdinal, GlobalOrdinal, Node > > &tpetraOperator, const RCP< const VectorSpaceBase< Scalar > > rangeSpace=Teuchos::null, const RCP< const VectorSpaceBase< Scalar > > domainSpace=Teuchos::null)