KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
List of all members
Kratos::InterfaceCommunicator Class Reference

Object for exchanging data on the Interface. More...

#include <interface_communicator.h>

Inheritance diagram for Kratos::InterfaceCommunicator:
Collaboration diagram for Kratos::InterfaceCommunicator:

Public Member Functions

Life Cycle
 InterfaceCommunicator (ModelPart &rModelPartOrigin, MapperLocalSystemPointerVector &rMapperLocalSystems, Parameters SearchSettings)
 
virtual ~InterfaceCommunicator ()=default
 Destructor. More...
 
Operations
void ExchangeInterfaceData (const Communicator &rComm, const MapperInterfaceInfoUniquePointerType &rpRefInterfaceInfo)
 
Inquiry
int AreMeshesConforming ()
 
Input and output
virtual std::string Info () const
 Turn back information as a string. More...
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const
 Print object's data. More...
 

Protected Member Functions

Protected Operations
virtual void InitializeSearch (const MapperInterfaceInfoUniquePointerType &rpRefInterfaceInfo)
 
virtual void FinalizeSearch ()
 
virtual void InitializeSearchIteration (const MapperInterfaceInfoUniquePointerType &rpRefInterfaceInfo)
 
virtual void FinalizeSearchIteration (const MapperInterfaceInfoUniquePointerType &rpInterfaceInfo)
 
void FilterInterfaceInfosSuccessfulSearch ()
 
void AssignInterfaceInfos ()
 

Protected Attributes

Protected member Variables
ModelPartmrModelPartOrigin
 
const MapperLocalSystemPointerVectormrMapperLocalSystems
 
MapperInterfaceInfoPointerVectorType mMapperInterfaceInfosContainer
 
BinsUniquePointerType mpLocalBinStructure
 
InterfaceObjectContainerUniquePointerType mpInterfaceObjectsOrigin
 
Parameters mSearchSettings
 
double mSearchRadius = -1.0
 
int mEchoLevel = 0
 
int mMeshesAreConforming = 0
 

Type Definitions

typedef Kratos::unique_ptr< MapperInterfaceInfoMapperInterfaceInfoUniquePointerType
 
typedef Kratos::shared_ptr< MapperInterfaceInfoMapperInterfaceInfoPointerType
 
typedef std::vector< std::vector< MapperInterfaceInfoPointerType > > MapperInterfaceInfoPointerVectorType
 
typedef Kratos::unique_ptr< MapperLocalSystemMapperLocalSystemPointer
 
typedef std::vector< MapperLocalSystemPointerMapperLocalSystemPointerVector
 
typedef Kratos::unique_ptr< BinsObjectDynamic< InterfaceObjectConfigure > > BinsUniquePointerType
 
typedef InterfaceObjectConfigure::ContainerType InterfaceObjectContainerType
 
typedef Kratos::unique_ptr< InterfaceObjectContainerTypeInterfaceObjectContainerUniquePointerType
 
 KRATOS_CLASS_POINTER_DEFINITION (InterfaceCommunicator)
 Pointer definition of InterfaceCommunicator. More...
 

Detailed Description

Object for exchanging data on the Interface.

Mapping requires knowledge about the "other" side of the Interface. This class communicates the data required by the mappers, hence it also includes the (local) searching

Member Typedef Documentation

◆ BinsUniquePointerType

◆ InterfaceObjectContainerType

◆ InterfaceObjectContainerUniquePointerType

◆ MapperInterfaceInfoPointerType

◆ MapperInterfaceInfoPointerVectorType

◆ MapperInterfaceInfoUniquePointerType

◆ MapperLocalSystemPointer

◆ MapperLocalSystemPointerVector

Constructor & Destructor Documentation

◆ InterfaceCommunicator()

Kratos::InterfaceCommunicator::InterfaceCommunicator ( ModelPart rModelPartOrigin,
MapperLocalSystemPointerVector rMapperLocalSystems,
Parameters  SearchSettings 
)

◆ ~InterfaceCommunicator()

virtual Kratos::InterfaceCommunicator::~InterfaceCommunicator ( )
virtualdefault

Destructor.

Member Function Documentation

◆ AreMeshesConforming()

int Kratos::InterfaceCommunicator::AreMeshesConforming ( )
inline

◆ AssignInterfaceInfos()

void Kratos::InterfaceCommunicator::AssignInterfaceInfos ( )
protected

◆ ExchangeInterfaceData()

void Kratos::InterfaceCommunicator::ExchangeInterfaceData ( const Communicator rComm,
const MapperInterfaceInfoUniquePointerType rpRefInterfaceInfo 
)

◆ FilterInterfaceInfosSuccessfulSearch()

void Kratos::InterfaceCommunicator::FilterInterfaceInfosSuccessfulSearch ( )
protected

◆ FinalizeSearch()

void Kratos::InterfaceCommunicator::FinalizeSearch ( )
protectedvirtual

◆ FinalizeSearchIteration()

void Kratos::InterfaceCommunicator::FinalizeSearchIteration ( const MapperInterfaceInfoUniquePointerType rpInterfaceInfo)
protectedvirtual

◆ Info()

virtual std::string Kratos::InterfaceCommunicator::Info ( ) const
inlinevirtual

Turn back information as a string.

Reimplemented in Kratos::InterfaceCommunicatorMPI.

◆ InitializeSearch()

void Kratos::InterfaceCommunicator::InitializeSearch ( const MapperInterfaceInfoUniquePointerType rpRefInterfaceInfo)
protectedvirtual

◆ InitializeSearchIteration()

void Kratos::InterfaceCommunicator::InitializeSearchIteration ( const MapperInterfaceInfoUniquePointerType rpRefInterfaceInfo)
protectedvirtual

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::InterfaceCommunicator::KRATOS_CLASS_POINTER_DEFINITION ( InterfaceCommunicator  )

Pointer definition of InterfaceCommunicator.

◆ PrintData()

virtual void Kratos::InterfaceCommunicator::PrintData ( std::ostream &  rOStream) const
inlinevirtual

Print object's data.

Reimplemented in Kratos::InterfaceCommunicatorMPI.

◆ PrintInfo()

virtual void Kratos::InterfaceCommunicator::PrintInfo ( std::ostream &  rOStream) const
inlinevirtual

Print information about this object.

Reimplemented in Kratos::InterfaceCommunicatorMPI.

Member Data Documentation

◆ mEchoLevel

int Kratos::InterfaceCommunicator::mEchoLevel = 0
protected

◆ mMapperInterfaceInfosContainer

MapperInterfaceInfoPointerVectorType Kratos::InterfaceCommunicator::mMapperInterfaceInfosContainer
protected

◆ mMeshesAreConforming

int Kratos::InterfaceCommunicator::mMeshesAreConforming = 0
protected

◆ mpInterfaceObjectsOrigin

InterfaceObjectContainerUniquePointerType Kratos::InterfaceCommunicator::mpInterfaceObjectsOrigin
protected

◆ mpLocalBinStructure

BinsUniquePointerType Kratos::InterfaceCommunicator::mpLocalBinStructure
protected

◆ mrMapperLocalSystems

const MapperLocalSystemPointerVector& Kratos::InterfaceCommunicator::mrMapperLocalSystems
protected

◆ mrModelPartOrigin

ModelPart& Kratos::InterfaceCommunicator::mrModelPartOrigin
protected

◆ mSearchRadius

double Kratos::InterfaceCommunicator::mSearchRadius = -1.0
protected

◆ mSearchSettings

Parameters Kratos::InterfaceCommunicator::mSearchSettings
protected

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