libMesh
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
libMesh::DTKAdapter Class Reference

The DTKAdapter is used with the DTKSolutionTransfer object to adapt libmesh data to the DTK interface. More...

#include <dtk_adapter.h>

Public Types

typedef DataTransferKit::MeshContainer< int > MeshContainerType
 
typedef DataTransferKit::FieldContainer< double > FieldContainerType
 
typedef DataTransferKit::MeshTraits< MeshContainerType >::global_ordinal_type GlobalOrdinal
 
typedef DataTransferKit::FieldEvaluator< GlobalOrdinal, FieldContainerTypeEvaluatorType
 
typedef Teuchos::RCP< EvaluatorTypeRCP_Evaluator
 

Public Member Functions

 DTKAdapter (Teuchos::RCP< const Teuchos::Comm< int >> in_comm, EquationSystems &in_es)
 
Teuchos::RCP< DataTransferKit::MeshManager< MeshContainerType > > get_mesh_manager ()
 
RCP_Evaluator get_variable_evaluator (std::string var_name)
 
Teuchos::RCP< DataTransferKit::FieldManager< MeshContainerType > > get_target_coords ()
 
Teuchos::RCP< DataTransferKit::FieldManager< FieldContainerType > > get_values_to_fill (std::string var_name)
 
void update_variable_values (std::string var_name)
 After computing values for a variable in this EquationSystems we need to take those values and put them in the actual solution vector. More...
 

Protected Member Functions

Systemfind_sys (std::string var_name)
 Small helper function for finding the system containing the variable. More...
 
DataTransferKit::DTK_ElementTopology get_element_topology (const Elem *elem)
 
void get_semi_local_nodes (std::set< unsigned int > &semi_local_nodes)
 Helper function that fills the std::set with all of the node numbers of nodes connected to local elements. More...
 

Protected Attributes

Teuchos::RCP< const Teuchos::Comm< int > > comm
 
EquationSystemses
 
const MeshBasemesh
 
unsigned int dim
 
unsigned int num_local_nodes
 
Teuchos::ArrayRCP< int > vertices
 
Teuchos::RCP< DataTransferKit::MeshManager< MeshContainerType > > mesh_manager
 
RCP_Evaluator field_evaluator
 
Teuchos::RCP< DataTransferKit::FieldManager< MeshContainerType > > target_coords
 
std::map< std::string, Teuchos::RCP< DataTransferKit::FieldManager< FieldContainerType > > > values_to_fill
 Map of variable names to arrays to be filled by a transfer. More...
 
std::map< std::string, RCP_Evaluatorevaluators
 Map of variable names to RCP_Evaluator objects. More...
 

Detailed Description

The DTKAdapter is used with the DTKSolutionTransfer object to adapt libmesh data to the DTK interface.

Author
Derek Gaston
Date
2013

Definition at line 52 of file dtk_adapter.h.

Member Typedef Documentation

◆ EvaluatorType

typedef DataTransferKit::FieldEvaluator<GlobalOrdinal,FieldContainerType> libMesh::DTKAdapter::EvaluatorType

Definition at line 60 of file dtk_adapter.h.

◆ FieldContainerType

typedef DataTransferKit::FieldContainer<double> libMesh::DTKAdapter::FieldContainerType

Definition at line 58 of file dtk_adapter.h.

◆ GlobalOrdinal

typedef DataTransferKit::MeshTraits<MeshContainerType>::global_ordinal_type libMesh::DTKAdapter::GlobalOrdinal

Definition at line 59 of file dtk_adapter.h.

◆ MeshContainerType

typedef DataTransferKit::MeshContainer<int> libMesh::DTKAdapter::MeshContainerType

Definition at line 57 of file dtk_adapter.h.

◆ RCP_Evaluator

Definition at line 61 of file dtk_adapter.h.

Constructor & Destructor Documentation

◆ DTKAdapter()

libMesh::DTKAdapter::DTKAdapter ( Teuchos::RCP< const Teuchos::Comm< int >>  in_comm,
EquationSystems in_es 
)

Member Function Documentation

◆ find_sys()

System* libMesh::DTKAdapter::find_sys ( std::string  var_name)
protected

Small helper function for finding the system containing the variable.

Note
This implies that variable names are unique across all systems!

◆ get_element_topology()

DataTransferKit::DTK_ElementTopology libMesh::DTKAdapter::get_element_topology ( const Elem elem)
protected
Returns
The DTK ElementTopology for a given Elem.

◆ get_mesh_manager()

Teuchos::RCP<DataTransferKit::MeshManager<MeshContainerType> > libMesh::DTKAdapter::get_mesh_manager ( )

Definition at line 64 of file dtk_adapter.h.

References mesh_manager.

64 { return mesh_manager; }
Teuchos::RCP< DataTransferKit::MeshManager< MeshContainerType > > mesh_manager
Definition: dtk_adapter.h:102

◆ get_semi_local_nodes()

void libMesh::DTKAdapter::get_semi_local_nodes ( std::set< unsigned int > &  semi_local_nodes)
protected

Helper function that fills the std::set with all of the node numbers of nodes connected to local elements.

◆ get_target_coords()

Teuchos::RCP<DataTransferKit::FieldManager<MeshContainerType> > libMesh::DTKAdapter::get_target_coords ( )

Definition at line 66 of file dtk_adapter.h.

References target_coords.

66 { return target_coords; }
Teuchos::RCP< DataTransferKit::FieldManager< MeshContainerType > > target_coords
Definition: dtk_adapter.h:104

◆ get_values_to_fill()

Teuchos::RCP<DataTransferKit::FieldManager<FieldContainerType> > libMesh::DTKAdapter::get_values_to_fill ( std::string  var_name)

◆ get_variable_evaluator()

RCP_Evaluator libMesh::DTKAdapter::get_variable_evaluator ( std::string  var_name)

◆ update_variable_values()

void libMesh::DTKAdapter::update_variable_values ( std::string  var_name)

After computing values for a variable in this EquationSystems we need to take those values and put them in the actual solution vector.

Member Data Documentation

◆ comm

Teuchos::RCP<const Teuchos::Comm<int> > libMesh::DTKAdapter::comm
protected

Definition at line 94 of file dtk_adapter.h.

◆ dim

unsigned int libMesh::DTKAdapter::dim
protected

Definition at line 97 of file dtk_adapter.h.

◆ es

EquationSystems& libMesh::DTKAdapter::es
protected

Definition at line 95 of file dtk_adapter.h.

◆ evaluators

std::map<std::string, RCP_Evaluator> libMesh::DTKAdapter::evaluators
protected

Map of variable names to RCP_Evaluator objects.

Definition at line 110 of file dtk_adapter.h.

◆ field_evaluator

RCP_Evaluator libMesh::DTKAdapter::field_evaluator
protected

Definition at line 103 of file dtk_adapter.h.

◆ mesh

const MeshBase& libMesh::DTKAdapter::mesh
protected

Definition at line 96 of file dtk_adapter.h.

◆ mesh_manager

Teuchos::RCP<DataTransferKit::MeshManager<MeshContainerType> > libMesh::DTKAdapter::mesh_manager
protected

Definition at line 102 of file dtk_adapter.h.

Referenced by get_mesh_manager().

◆ num_local_nodes

unsigned int libMesh::DTKAdapter::num_local_nodes
protected

Definition at line 99 of file dtk_adapter.h.

◆ target_coords

Teuchos::RCP<DataTransferKit::FieldManager<MeshContainerType> > libMesh::DTKAdapter::target_coords
protected

Definition at line 104 of file dtk_adapter.h.

Referenced by get_target_coords().

◆ values_to_fill

std::map<std::string, Teuchos::RCP<DataTransferKit::FieldManager<FieldContainerType> > > libMesh::DTKAdapter::values_to_fill
protected

Map of variable names to arrays to be filled by a transfer.

Definition at line 107 of file dtk_adapter.h.

◆ vertices

Teuchos::ArrayRCP<int> libMesh::DTKAdapter::vertices
protected

Definition at line 100 of file dtk_adapter.h.


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