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::FillCommunicator Class Reference

Base class defining the API for the fill communicator utilities. More...

#include <fill_communicator.h>

Inheritance diagram for Kratos::FillCommunicator:
Collaboration diagram for Kratos::FillCommunicator:

Public Types

Enum's
enum class  FillCommunicatorEchoLevel { NO_PRINTING = 0 , INFO = 1 , DEBUG_INFO = 2 }
 

Public Member Functions

Type Definitions
 KRATOS_CLASS_POINTER_DEFINITION (FillCommunicator)
 Pointer definition of FillCommunicator. More...
 
Life Cycle
 FillCommunicator (ModelPart &rModelPart)
 Constructor (deprecated) More...
 
 FillCommunicator (ModelPart &rModelPart, const DataCommunicator &rDataCommunicator)
 Constructor. More...
 
 FillCommunicator (FillCommunicator const &rOther)=delete
 Copy constructor. More...
 
virtual ~FillCommunicator ()=default
 Destructor. More...
 
Operators
FillCommunicatoroperator= (FillCommunicator const &rOther)=delete
 Assignment operator. More...
 
Operations
virtual void Execute ()
 Execute the communicator fill. More...
 
void PrintDebugInfo ()
 Function to print DETAILED mesh information WARNING: to be used for debugging only as many information are plotted. More...
 
virtual void PrintModelPartDebugInfo (const ModelPart &rModelPart)
 Function to print mesh information of the provided model part. More...
 
Access
void SetEchoLevel (const FillCommunicatorEchoLevel EchoLevel)
 Set the echo level. More...
 
FillCommunicatorEchoLevel GetEchoLevel () const
 Get the echo level. More...
 
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 Access
ModelPartGetBaseModelPart ()
 Get the base model part. More...
 

Protected Attributes

Protected member Variables
const DataCommunicatormrDataComm
 
FillCommunicatorEchoLevel mEchoLevel = FillCommunicatorEchoLevel::NO_PRINTING
 Data communicator reference. More...
 

Detailed Description

Base class defining the API for the fill communicator utilities.

The objective of this class is to set the API for the derived ParallelFillCommunicator utilities

Author
Ruben Zorrilla

Member Enumeration Documentation

◆ FillCommunicatorEchoLevel

Enumerator
NO_PRINTING 
INFO 
DEBUG_INFO 

Constructor & Destructor Documentation

◆ FillCommunicator() [1/3]

Kratos::FillCommunicator::FillCommunicator ( ModelPart rModelPart)

Constructor (deprecated)

Parameters
rModelPartThe model part to recompute the communication plan for MPI

◆ FillCommunicator() [2/3]

Kratos::FillCommunicator::FillCommunicator ( ModelPart rModelPart,
const DataCommunicator rDataCommunicator 
)

Constructor.

Parameters
rModelPartThe model part to recompute the communication plan for MPI
rDataCommunicatorThe communicator to recompute the communication plan for MPI

◆ FillCommunicator() [3/3]

Kratos::FillCommunicator::FillCommunicator ( FillCommunicator const &  rOther)
delete

Copy constructor.

◆ ~FillCommunicator()

virtual Kratos::FillCommunicator::~FillCommunicator ( )
virtualdefault

Destructor.

Member Function Documentation

◆ Execute()

void Kratos::FillCommunicator::Execute ( )
virtual

Execute the communicator fill.

This method is intended to perform the communicator filling. In the current serial case it does nothing.

Note
For the parallel implementation see ParallelFillCommunicator.

Reimplemented in Kratos::ParallelFillCommunicator.

◆ GetBaseModelPart()

ModelPart& Kratos::FillCommunicator::GetBaseModelPart ( )
inlineprotected

Get the base model part.

Returns
The base model part

◆ GetEchoLevel()

FillCommunicatorEchoLevel Kratos::FillCommunicator::GetEchoLevel ( ) const
inline

Get the echo level.

Returns
The echo level

◆ Info()

std::string Kratos::FillCommunicator::Info ( ) const
virtual

Turn back information as a string.

Reimplemented in Kratos::ParallelFillCommunicator.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::FillCommunicator::KRATOS_CLASS_POINTER_DEFINITION ( FillCommunicator  )

Pointer definition of FillCommunicator.

◆ operator=()

FillCommunicator& Kratos::FillCommunicator::operator= ( FillCommunicator const &  rOther)
delete

Assignment operator.

◆ PrintData()

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

Print object's data.

Reimplemented in Kratos::ParallelFillCommunicator.

◆ PrintDebugInfo()

void Kratos::FillCommunicator::PrintDebugInfo ( )

Function to print DETAILED mesh information WARNING: to be used for debugging only as many information are plotted.

◆ PrintInfo()

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

Print information about this object.

Reimplemented in Kratos::ParallelFillCommunicator.

◆ PrintModelPartDebugInfo()

void Kratos::FillCommunicator::PrintModelPartDebugInfo ( const ModelPart rModelPart)
virtual

Function to print mesh information of the provided model part.

This function is intended to check and print some mesh information

Note
In the current serial case it is almost empty and only basic checks are performed
Parameters
rModelPartReference to the model part to be checked

Reimplemented in Kratos::ParallelFillCommunicator.

◆ SetEchoLevel()

void Kratos::FillCommunicator::SetEchoLevel ( const FillCommunicatorEchoLevel  EchoLevel)
inline

Set the echo level.

Parameters
EchoLevelThe echo level

Member Data Documentation

◆ mEchoLevel

FillCommunicatorEchoLevel Kratos::FillCommunicator::mEchoLevel = FillCommunicatorEchoLevel::NO_PRINTING
protected

Data communicator reference.

◆ mrDataComm

const DataCommunicator& Kratos::FillCommunicator::mrDataComm
protected

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