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

Implementation of a SolutionTransfer object that uses the DataTransferKit (https://github.com/CNERG/DataTransferKit) to transfer variables back and forth between systems. More...

#include <dtk_solution_transfer.h>

Inheritance diagram for libMesh::DTKSolutionTransfer:
[legend]

Public Member Functions

 DTKSolutionTransfer (const libMesh::Parallel::Communicator &comm)
 
virtual ~DTKSolutionTransfer ()
 
virtual void transfer (const Variable &from_var, const Variable &to_var) override
 Transfer the values of a variable to another. More...
 
const Parallel::Communicatorcomm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 

Protected Types

typedef DataTransferKit::SharedDomainMap< DTKAdapter::MeshContainerType, DTKAdapter::MeshContainerTypeshared_domain_map_type
 

Protected Attributes

Teuchos::RCP< const Teuchos::Comm< int > > comm_default
 COMM_WORLD for now. More...
 
std::map< EquationSystems *, DTKAdapter * > adapters
 The DTKAdapter associated with each EquationSystems. More...
 
std::map< std::pair< EquationSystems *, EquationSystems * >, shared_domain_map_type *> dtk_maps
 The dtk shared domain maps for pairs of EquationSystems (from, to) More...
 
const Parallel::Communicator_communicator
 

Detailed Description

Implementation of a SolutionTransfer object that uses the DataTransferKit (https://github.com/CNERG/DataTransferKit) to transfer variables back and forth between systems.

Author
Derek Gaston
Date
2013

Definition at line 54 of file dtk_solution_transfer.h.

Member Typedef Documentation

◆ shared_domain_map_type

Definition at line 74 of file dtk_solution_transfer.h.

Constructor & Destructor Documentation

◆ DTKSolutionTransfer()

libMesh::DTKSolutionTransfer::DTKSolutionTransfer ( const libMesh::Parallel::Communicator comm)

◆ ~DTKSolutionTransfer()

virtual libMesh::DTKSolutionTransfer::~DTKSolutionTransfer ( )
virtual

Member Function Documentation

◆ comm()

const Parallel::Communicator& libMesh::ParallelObject::comm ( ) const
inherited

◆ n_processors()

processor_id_type libMesh::ParallelObject::n_processors ( ) const
inherited
Returns
The number of processors in the group.

Definition at line 93 of file parallel_object.h.

References libMesh::ParallelObject::_communicator, and libMesh::Parallel::Communicator::size().

Referenced by libMesh::MeshBase::partition().

94  { return cast_int<processor_id_type>(_communicator.size()); }
processor_id_type size() const
Definition: communicator.h:175
const Parallel::Communicator & _communicator

◆ processor_id()

processor_id_type libMesh::ParallelObject::processor_id ( ) const
inherited

◆ transfer()

virtual void libMesh::DTKSolutionTransfer::transfer ( const Variable from_var,
const Variable to_var 
)
overridevirtual

Transfer the values of a variable to another.

This is meant for transferring values from one EquationSystems to another even in the case of having different meshes.

Note
The first time this function is called for one combination of EquationSystems, a lot of setup and caching is done. Subsequent transfers between the same EquationSystems will be much faster.

Implements libMesh::SolutionTransfer.

Member Data Documentation

◆ _communicator

const Parallel::Communicator& libMesh::ParallelObject::_communicator
protectedinherited

◆ adapters

std::map<EquationSystems *, DTKAdapter *> libMesh::DTKSolutionTransfer::adapters
protected

The DTKAdapter associated with each EquationSystems.

Definition at line 80 of file dtk_solution_transfer.h.

◆ comm_default

Teuchos::RCP<const Teuchos::Comm<int> > libMesh::DTKSolutionTransfer::comm_default
protected

COMM_WORLD for now.

Definition at line 77 of file dtk_solution_transfer.h.

◆ dtk_maps

std::map<std::pair<EquationSystems *, EquationSystems *>, shared_domain_map_type * > libMesh::DTKSolutionTransfer::dtk_maps
protected

The dtk shared domain maps for pairs of EquationSystems (from, to)

Definition at line 83 of file dtk_solution_transfer.h.


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