43#ifndef __Panzer_TpetraVector_ReadOnly_GlobalEvaluationData_hpp__
44#define __Panzer_TpetraVector_ReadOnly_GlobalEvaluationData_hpp__
46#include "Tpetra_Import.hpp"
47#include "Tpetra_Vector.hpp"
48#include "Tpetra_Map.hpp"
50#include "Teuchos_RCP.hpp"
52#include "Thyra_VectorSpaceBase.hpp"
53#include "Thyra_VectorBase.hpp"
63template <
typename ScalarT,
typename LocalOrdinalT,
typename GlobalOrdinalT,
67 typedef Tpetra::Vector<ScalarT,LocalOrdinalT,GlobalOrdinalT,NodeT>
VectorType;
68 typedef Tpetra::Map<LocalOrdinalT,GlobalOrdinalT,NodeT>
MapType;
69 typedef Tpetra::Import<LocalOrdinalT,GlobalOrdinalT,NodeT>
ImportType;
87 const Teuchos::RCP<const MapType>& ghostedMap,
88 const Teuchos::RCP<const MapType>& ownedMap)
108 void initialize(
const Teuchos::RCP<const ImportType>& importer,
109 const Teuchos::RCP<const MapType>& ghostedMap,
110 const Teuchos::RCP<const MapType>& ownedMap);
139 Teuchos::RCP<const Thyra::VectorBase<double> >
getOwnedVector()
const;
148 void print(std::ostream & os)
const;
TpetraVector_ReadOnly_GlobalEvaluationData(const TpetraVector_ReadOnly_GlobalEvaluationData &src)
Teuchos::RCP< const VectorType > getOwnedVector_Tpetra() const
Get the owned vector (Tpetra version)
void useConstantValues(const std::vector< GlobalOrdinalT > &indices, double value)
Teuchos::RCP< Thyra::VectorBase< double > > getGhostedVector() const
Get the ghosted vector (Thyra version)
std::vector< FilteredGlobalPair > globalFilteredPairs_
Teuchos::RCP< const MapType > ownedMap_
TpetraVector_ReadOnly_GlobalEvaluationData()
Default constructor.
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > ghostedSpace_
std::vector< FilteredLocalPair > filteredPairs_
virtual bool requiresDirichletAdjustment() const
Nothing to do (its read only)
virtual void globalToGhost(int mem)
Teuchos::RCP< VectorType > getGhostedVector_Tpetra() const
Get the ghosted vector (Tpetra version)
Teuchos::RCP< const VectorType > ownedVector_
Teuchos::RCP< const Thyra::VectorSpaceBase< double > > ownedSpace_
void print(std::ostream &os) const
Diagnostic function.
bool isInitialized() const
Is this object initialized.
virtual void initializeData()
Clear out the ghosted vector.
Tpetra::Import< LocalOrdinalT, GlobalOrdinalT, NodeT > ImportType
void setOwnedVector(const Teuchos::RCP< const Thyra::VectorBase< double > > &ownedVector)
Set the owned vector (Thyra version)
Tpetra::Map< LocalOrdinalT, GlobalOrdinalT, NodeT > MapType
void setOwnedVector_Tpetra(const Teuchos::RCP< const VectorType > &ownedVector)
Set the owned vector (Tpetra version)
std::pair< std::vector< LocalOrdinalT >, double > FilteredLocalPair
virtual void ghostToGlobal(int)
For this class this method does nothing.
std::pair< std::vector< GlobalOrdinalT >, double > FilteredGlobalPair
Tpetra::Vector< ScalarT, LocalOrdinalT, GlobalOrdinalT, NodeT > VectorType
Teuchos::RCP< VectorType > ghostedVector_
TpetraVector_ReadOnly_GlobalEvaluationData(const Teuchos::RCP< const ImportType > &importer, const Teuchos::RCP< const MapType > &ghostedMap, const Teuchos::RCP< const MapType > &ownedMap)
void initialize(const Teuchos::RCP< const ImportType > &importer, const Teuchos::RCP< const MapType > &ghostedMap, const Teuchos::RCP< const MapType > &ownedMap)
Teuchos::RCP< const Thyra::VectorBase< double > > getOwnedVector() const
Get the owned vector (Thyra version)
Teuchos::RCP< const MapType > ghostedMap_
Teuchos::RCP< const ImportType > importer_
Kokkos::Compat::KokkosDeviceWrapperNode< PHX::Device > TpetraNodeType