#include <Panzer_Interpolation.hpp>
Inherits Tpetra::Operator< Tpetra::Operator<>::scalar_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type >::local_ordinal_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type >::local_ordinal_type >::global_ordinal_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type >::local_ordinal_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type, typename Tpetra::Operator< Tpetra::Operator<>::scalar_type >::local_ordinal_type >::global_ordinal_type >::node_type >.
|
| | MatrixFreeInterpolationOp (const Teuchos::RCP< const panzer::ConnManager > &conn, const Teuchos::RCP< panzer::DOFManager > &_domain_ugi, const Teuchos::RCP< panzer::DOFManager > &_range_ugi, const std::string &_domain_basis_name, const std::string &_range_basis_name, Intrepid2::EOperator _op=Intrepid2::OPERATOR_VALUE, size_t _worksetSize=1000) |
| |
| void | allocateColumnMapVector (size_t numVectors) |
| |
| void | precomputeOwnersAndOrientations (const Teuchos::RCP< const panzer::ConnManager > &conn) |
| |
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getDomainMap () const |
| | Returns the Tpetra::Map object associated with the domain of this operator.
|
| |
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | getRangeMap () const |
| | Returns the Tpetra::Map object associated with the range of this operator.
|
| |
| void | apply (const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Teuchos::ETransp mode=Teuchos::NO_TRANS, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const |
| |
| void | applyNonTransposed (const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const |
| |
| void | applyTransposed (const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &X, Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > &Y, Scalar alpha=Teuchos::ScalarTraits< Scalar >::one(), Scalar beta=Teuchos::ScalarTraits< Scalar >::zero()) const |
| |
| bool | hasTransposeApply () const |
| |
| void | setName (std::string &_name) |
| |
|
| std::string | name |
| |
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | domainMap_ |
| |
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | rangeMap_ |
| |
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > | columnMap_ |
| |
| Teuchos::RCP< const Tpetra::Import< LocalOrdinal, GlobalOrdinal, Node > > | import_ |
| |
| Teuchos::RCP< Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > > | colmapMV_ |
| |
| std::string | domain_basis_name |
| |
| std::string | range_basis_name |
| |
| Intrepid2::EOperator | op |
| |
| size_t | worksetSize |
| |
| Teuchos::RCP< panzer::DOFManager > | domain_ugi |
| |
| Teuchos::RCP< panzer::DOFManager > | range_ugi |
| |
| Kokkos::View< LocalOrdinal *, DeviceSpace > | owner_d_ |
| |
| std::map< std::string, Kokkos::DynRankView< Intrepid2::Orientation, DeviceSpace > > | orientations_ |
| |
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
class panzer::MatrixFreeInterpolationOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >
Definition at line 50 of file Panzer_Interpolation.hpp.
◆ DeviceSpace
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ MatrixFreeInterpolationOp()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
◆ allocateColumnMapVector()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
◆ precomputeOwnersAndOrientations()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
◆ getDomainMap()
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > panzer::MatrixFreeInterpolationOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getDomainMap |
( |
| ) |
const |
|
inline |
Returns the Tpetra::Map object associated with the domain of this operator.
Definition at line 71 of file Panzer_Interpolation.hpp.
◆ getRangeMap()
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
| Teuchos::RCP< const Tpetra::Map< LocalOrdinal, GlobalOrdinal, Node > > panzer::MatrixFreeInterpolationOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::getRangeMap |
( |
| ) |
const |
|
inline |
Returns the Tpetra::Map object associated with the range of this operator.
Definition at line 77 of file Panzer_Interpolation.hpp.
◆ apply()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
| void panzer::MatrixFreeInterpolationOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::apply |
( |
const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
X, |
|
|
Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
Y, |
|
|
Teuchos::ETransp |
mode = Teuchos::NO_TRANS, |
|
|
Scalar |
alpha = Teuchos::ScalarTraits<Scalar>::one(), |
|
|
Scalar |
beta = Teuchos::ScalarTraits<Scalar>::zero() |
|
) |
| const |
◆ applyNonTransposed()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
| void panzer::MatrixFreeInterpolationOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::applyNonTransposed |
( |
const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
X, |
|
|
Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
Y, |
|
|
Scalar |
alpha = Teuchos::ScalarTraits<Scalar>::one(), |
|
|
Scalar |
beta = Teuchos::ScalarTraits<Scalar>::zero() |
|
) |
| const |
◆ applyTransposed()
template<class Scalar , class LocalOrdinal , class GlobalOrdinal , class Node >
| void panzer::MatrixFreeInterpolationOp< Scalar, LocalOrdinal, GlobalOrdinal, Node >::applyTransposed |
( |
const Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
X, |
|
|
Tpetra::MultiVector< Scalar, LocalOrdinal, GlobalOrdinal, Node > & |
Y, |
|
|
Scalar |
alpha = Teuchos::ScalarTraits<Scalar>::one(), |
|
|
Scalar |
beta = Teuchos::ScalarTraits<Scalar>::zero() |
|
) |
| const |
◆ hasTransposeApply()
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ setName()
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ name
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ domainMap_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ rangeMap_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ columnMap_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ import_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ colmapMV_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ domain_basis_name
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ range_basis_name
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ op
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ worksetSize
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ domain_ugi
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ range_ugi
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ owner_d_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
◆ orientations_
template<class Scalar = Tpetra::Operator<>::scalar_type, class LocalOrdinal = typename Tpetra::Operator<Scalar>::local_ordinal_type, class GlobalOrdinal = typename Tpetra::Operator<Scalar, LocalOrdinal>::global_ordinal_type, class Node = typename Tpetra::Operator<Scalar, LocalOrdinal, GlobalOrdinal>::node_type>
The documentation for this class was generated from the following files: