Panzer  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node > Class Template Reference

#include <Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp>

Public Member Functions

 ArrayToFieldVectorEpetra (const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > &ugi)
 
template<typename ScalarT , typename ArrayT >
Teuchos::RCP< Epetra_MultiVectorgetGhostedDataVector (const std::string &fieldName, const std::map< std::string, ArrayT > &data) const
 
template<typename ScalarT , typename ArrayT >
Teuchos::RCP< Epetra_MultiVectorgetDataVector (const std::string &fieldName, const std::map< std::string, ArrayT > &data) const
 
Teuchos::RCP< const Epetra_MapgetFieldMap (const std::string &fieldName) const
 
Teuchos::RCP< const Epetra_MapgetFieldMap (int fieldNum) const
 

Protected Types

typedef Epetra_IntVector IntVector
 
typedef Epetra_MultiVector MultiVector
 
typedef Epetra_BlockMap Map
 

Protected Member Functions

void buildFieldVector (const Epetra_IntVector &source) const
 build unghosted field vector from ghosted field vector More...
 

Protected Attributes

Teuchos::RCP< const
UniqueGlobalIndexer
< LocalOrdinalT,
GlobalOrdinalT > > 
ugi_
 DOF mapping. More...
 
Teuchos::RCP< const IntVectorgh_reducedFieldVector_
 
Teuchos::RCP< const IntVectorgh_fieldVector_
 ghosted reduced field vector More...
 
std::map< int, Teuchos::RCP
< const Map > > 
gh_reducedFieldMaps_
 ghosted field vector More...
 
std::map< int, Teuchos::RCP
< const Map > > 
gh_fieldMaps_
 Maps for each field (as needed) More...
 
Teuchos::RCP< const IntVectorfieldVector_
 Maps for each field (as needed) More...
 
std::map< int, Teuchos::RCP
< const Map > > 
fieldMaps_
 (unghosted) field vector (as needed) More...
 

Private Member Functions

 ArrayToFieldVectorEpetra ()
 Maps for each field (as needed) More...
 
 ArrayToFieldVectorEpetra (const ArrayToFieldVectorEpetra &)
 

Detailed Description

template<typename LocalOrdinalT, typename GlobalOrdinalT, typename Node>
class panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >

This class assists in mapping arrays of field data to field vectors.

Definition at line 161 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.

Member Typedef Documentation

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
typedef Epetra_IntVector panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::IntVector
protected
template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
typedef Epetra_MultiVector panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::MultiVector
protected
template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
typedef Epetra_BlockMap panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::Map
protected

Constructor & Destructor Documentation

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::ArrayToFieldVectorEpetra ( const Teuchos::RCP< const UniqueGlobalIndexer< LocalOrdinalT, GlobalOrdinalT > > &  ugi)

Construct information for the unique global indexer. Notice that this requires global communication.

Definition at line 246 of file Panzer_UniqueGlobalIndexer_EpetraUtilities_impl.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::ArrayToFieldVectorEpetra ( )
private

Maps for each field (as needed)

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::ArrayToFieldVectorEpetra ( const ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node > &  )
private

Member Function Documentation

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
template<typename ScalarT , typename ArrayT >
Teuchos::RCP< Epetra_MultiVector > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::getGhostedDataVector ( const std::string &  fieldName,
const std::map< std::string, ArrayT > &  data 
) const

Get a Tpetra vector containing the data ordered according to the ordering from UGI::getOwnedAndGhostedIndices.

Parameters
[in]fieldNameName of field this data is from
[in]dataArray of data
Returns
Returns a vector populated with the data. This vector is related to the UGI::getOwnedAndGhostedIndices.

Definition at line 257 of file Panzer_UniqueGlobalIndexer_EpetraUtilities_impl.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
template<typename ScalarT , typename ArrayT >
Teuchos::RCP< Epetra_MultiVector > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::getDataVector ( const std::string &  fieldName,
const std::map< std::string, ArrayT > &  data 
) const

Get a Tpetra vector containing the data ordered according to the ordering from UGI::getOwnedIndices.

Parameters
[in]fieldNameName of field this data is from
[in]dataArray of data
Returns
Returns a vector populated with the data. This vector is related to the UGI::getOwnedIndices.

Definition at line 329 of file Panzer_UniqueGlobalIndexer_EpetraUtilities_impl.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP< const Epetra_Map > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::getFieldMap ( const std::string &  fieldName) const

Build a map that contains only global IDs associated with a particular field. This serves to go from a unique vector of all fields, to a vector containing the uniquely owned global ids for a single field.

Definition at line 386 of file Panzer_UniqueGlobalIndexer_EpetraUtilities_impl.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP< const Epetra_Map > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::getFieldMap ( int  fieldNum) const

Build a map that contains only global IDs associated with a particular field. This serves to go from a unique vector of all fields, to a vector containing the uniquely owned global ids for a single field.

Definition at line 394 of file Panzer_UniqueGlobalIndexer_EpetraUtilities_impl.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
void panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::buildFieldVector ( const Epetra_IntVector source) const
protected

build unghosted field vector from ghosted field vector

Definition at line 358 of file Panzer_UniqueGlobalIndexer_EpetraUtilities_impl.hpp.

Member Data Documentation

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP<const UniqueGlobalIndexer<LocalOrdinalT,GlobalOrdinalT> > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::ugi_
protected

DOF mapping.

Definition at line 217 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP<const IntVector> panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::gh_reducedFieldVector_
protected
template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP<const IntVector> panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::gh_fieldVector_
protected

ghosted reduced field vector

Definition at line 220 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
std::map<int,Teuchos::RCP<const Map> > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::gh_reducedFieldMaps_
mutableprotected

ghosted field vector

Definition at line 222 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
std::map<int,Teuchos::RCP<const Map> > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::gh_fieldMaps_
mutableprotected

Maps for each field (as needed)

Definition at line 223 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
Teuchos::RCP<const IntVector> panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::fieldVector_
mutableprotected

Maps for each field (as needed)

Definition at line 225 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.

template<typename LocalOrdinalT , typename GlobalOrdinalT , typename Node >
std::map<int,Teuchos::RCP<const Map> > panzer::ArrayToFieldVectorEpetra< LocalOrdinalT, GlobalOrdinalT, Node >::fieldMaps_
mutableprotected

(unghosted) field vector (as needed)

Definition at line 226 of file Panzer_UniqueGlobalIndexer_EpetraUtilities.hpp.


The documentation for this class was generated from the following files: