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.
Classes | List of all members
Kratos::MPICommunicator Class Reference

MPICommunicator manages the transfer of ModelPart data in MPI distributed memory environment. More...

#include <mpi_communicator.h>

Inheritance diagram for Kratos::MPICommunicator:
Collaboration diagram for Kratos::MPICommunicator:

Public Member Functions

Life Cycle
 KRATOS_DEPRECATED_MESSAGE ("This constructor is deprecated, please use the one that accepts a DataCommunicator") MPICommunicator(VariablesList *Variables_list)
 Constructor using the VariablesList of the ModelPart that will use this communicator. More...
 
 MPICommunicator (VariablesList *pVariablesList, const DataCommunicator &rDataCommunicator)
 Constructor using the VariablesList and a custom DataCommunicator. More...
 
 MPICommunicator (MPICommunicator const &rOther)
 Copy constructor. More...
 
Communicator::Pointer Create (const DataCommunicator &rDataCommunicator) const override
 
 ~MPICommunicator () override=default
 Destructor. More...
 
virtual Communicator::Pointer Create (const DataCommunicator &rDataCommunicator) const
 
Communicator::Pointer Create () const
 
Operators
MPICommunicatoroperator= (MPICommunicator const &rOther)=delete
 Assignment operator. More...
 
Access
bool IsDistributed () const override
 
Operations
bool SynchronizeNodalSolutionStepsData () override
 
bool SynchronizeDofs () override
 
bool SynchronizeVariable (Variable< int > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< double > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< bool > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< array_1d< double, 3 > > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< array_1d< double, 4 > > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< array_1d< double, 6 > > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< array_1d< double, 9 > > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< Vector > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< Matrix > const &rThisVariable) override
 
bool SynchronizeVariable (Variable< Quaternion< double >> const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< int > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< double > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< bool > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< array_1d< double, 3 > > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< array_1d< double, 4 > > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< array_1d< double, 6 > > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< array_1d< double, 9 > > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< Vector > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< Matrix > const &rThisVariable) override
 
bool SynchronizeNonHistoricalVariable (Variable< Quaternion< double >> const &rThisVariable) override
 
bool SynchronizeCurrentDataToMax (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal solution step data to the maximum value across all processes. More...
 
bool SynchronizeNonHistoricalDataToMax (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal data to the maximum value across all processes. More...
 
bool SynchronizeCurrentDataToAbsMax (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal solution step data to the absolute maximum value across all processes. More...
 
bool SynchronizeNonHistoricalDataToAbsMax (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal data to the absolute maximum value across all processes. More...
 
bool SynchronizeCurrentDataToMin (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal solution step data to the minimum value across all processes. More...
 
bool SynchronizeNonHistoricalDataToMin (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal data to the minimum value across all processes. More...
 
bool SynchronizeCurrentDataToAbsMin (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal solution step data to the absolute minimum value across all processes. More...
 
bool SynchronizeNonHistoricalDataToAbsMin (Variable< double > const &ThisVariable) override
 Synchronize variable in nodal data to the absolute minimum value across all processes. More...
 
bool AssembleCurrentData (Variable< int > const &ThisVariable) override
 
bool AssembleCurrentData (Variable< double > const &ThisVariable) override
 
bool AssembleCurrentData (Variable< array_1d< double, 3 > > const &ThisVariable) override
 
bool AssembleCurrentData (Variable< Vector > const &ThisVariable) override
 
bool AssembleCurrentData (Variable< Matrix > const &ThisVariable) override
 
bool AssembleNonHistoricalData (Variable< int > const &ThisVariable) override
 
bool AssembleNonHistoricalData (Variable< double > const &ThisVariable) override
 
bool AssembleNonHistoricalData (Variable< array_1d< double, 3 > > const &ThisVariable) override
 
bool AssembleNonHistoricalData (Variable< DenseVector< array_1d< double, 3 > > > const &ThisVariable) override
 
bool AssembleNonHistoricalData (Variable< Vector > const &ThisVariable) override
 
bool AssembleNonHistoricalData (Variable< Matrix > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< int > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< double > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< array_1d< double, 3 > > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< DenseVector< array_1d< double, 3 > > > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< DenseVector< int > > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< Vector > const &ThisVariable) override
 
bool SynchronizeElementalNonHistoricalVariable (Variable< Matrix > const &ThisVariable) override
 
bool TransferObjects (std::vector< NodesContainerType > &SendObjects, std::vector< NodesContainerType > &RecvObjects) override
 
bool TransferObjects (std::vector< ElementsContainerType > &SendObjects, std::vector< ElementsContainerType > &RecvObjects) override
 
bool TransferObjects (std::vector< ConditionsContainerType > &SendObjects, std::vector< ConditionsContainerType > &RecvObjects) override
 
bool TransferObjects (std::vector< NodesContainerType > &SendObjects, std::vector< NodesContainerType > &RecvObjects, Kratos::Serializer &particleSerializer) override
 
bool TransferObjects (std::vector< ElementsContainerType > &SendObjects, std::vector< ElementsContainerType > &RecvObjects, Kratos::Serializer &particleSerializer) override
 
bool TransferObjects (std::vector< ConditionsContainerType > &SendObjects, std::vector< ConditionsContainerType > &RecvObjects, Kratos::Serializer &particleSerializer) override
 
bool SynchronizeOrNodalFlags (const Flags &TheFlags) override
 
bool SynchronizeAndNodalFlags (const Flags &TheFlags) override
 
bool SynchronizeNodalFlags () override
 
bool SynchronizeElementalFlags () override
 
Input and output
std::string Info () const override
 Turn back information as a string. More...
 
- Public Member Functions inherited from Kratos::Communicator
 Communicator ()
 Default constructor. More...
 
 Communicator (const DataCommunicator &rDataCommunicator)
 Constructor using a custom DataCommunicator. More...
 
 Communicator (Communicator const &rOther)
 Copy constructor. More...
 
virtual ~Communicator ()=default
 Destructor. More...
 
Communicator::Pointer Create () const
 
Communicatoroperator= (Communicator const &rOther)=delete
 Assignment operator. More...
 
virtual int MyPID () const
 
virtual int TotalProcesses () const
 
SizeType GlobalNumberOfNodes () const
 
SizeType GlobalNumberOfElements () const
 
SizeType GlobalNumberOfConditions () const
 
SizeType GlobalNumberOfMasterSlaveConstraints () const
 
SizeType GetNumberOfColors () const
 
void SetNumberOfColors (SizeType NewNumberOfColors)
 
void AddColors (SizeType NumberOfAddedColors)
 
NeighbourIndicesContainerTypeNeighbourIndices ()
 
NeighbourIndicesContainerType const & NeighbourIndices () const
 
void SetLocalMesh (MeshType::Pointer pGivenMesh)
 Set the local mesh pointer to the given mesh. More...
 
MeshType::Pointer pLocalMesh ()
 Returns pointer to the mesh storing all local entities. More...
 
MeshType::Pointer pGhostMesh ()
 Returns pointer to the mesh storing all ghost entities. More...
 
MeshType::Pointer pInterfaceMesh ()
 Returns pointer to the mesh storing all interface entities. More...
 
const MeshType::Pointer pLocalMesh () const
 Returns a constant pointer to the mesh storing all local entities. More...
 
const MeshType::Pointer pGhostMesh () const
 Returns a constant pointer to the mesh storing all ghost entities. More...
 
const MeshType::Pointer pInterfaceMesh () const
 Returns a constant pointer to the mesh storing all interface entities. More...
 
MeshType::Pointer pLocalMesh (IndexType ThisIndex)
 
MeshType::Pointer pGhostMesh (IndexType ThisIndex)
 
MeshType::Pointer pInterfaceMesh (IndexType ThisIndex)
 
const MeshType::Pointer pLocalMesh (IndexType ThisIndex) const
 
const MeshType::Pointer pGhostMesh (IndexType ThisIndex) const
 
const MeshType::Pointer pInterfaceMesh (IndexType ThisIndex) const
 
MeshTypeLocalMesh ()
 Returns the reference to the mesh storing all local entities. More...
 
MeshTypeGhostMesh ()
 Returns the reference to the mesh storing all ghost entities. More...
 
MeshTypeInterfaceMesh ()
 Returns the reference to the mesh storing all interface entities. More...
 
MeshType const & LocalMesh () const
 Returns a constant reference to the mesh storing all local entities. More...
 
MeshType const & GhostMesh () const
 Returns a constant reference to the mesh storing all ghost entities. More...
 
MeshType const & InterfaceMesh () const
 Returns a constant reference to the mesh storing all interface entities. More...
 
MeshTypeLocalMesh (IndexType ThisIndex)
 
MeshTypeGhostMesh (IndexType ThisIndex)
 
MeshTypeInterfaceMesh (IndexType ThisIndex)
 
MeshType const & LocalMesh (IndexType ThisIndex) const
 
MeshType const & GhostMesh (IndexType ThisIndex) const
 
MeshType const & InterfaceMesh (IndexType ThisIndex) const
 
MeshesContainerTypeLocalMeshes ()
 
MeshesContainerTypeGhostMeshes ()
 
MeshesContainerTypeInterfaceMeshes ()
 
MeshesContainerType const & LocalMeshes () const
 
MeshesContainerType const & GhostMeshes () const
 
MeshesContainerType const & InterfaceMeshes () const
 
virtual const DataCommunicatorGetDataCommunicator () const
 
virtual bool TransferObjects (std::vector< NodesContainerType > &SendObjects, std::vector< NodesContainerType > &RecvObjects)
 
virtual bool TransferObjects (std::vector< ElementsContainerType > &SendObjects, std::vector< ElementsContainerType > &RecvObjects)
 
virtual bool TransferObjects (std::vector< ConditionsContainerType > &SendObjects, std::vector< ConditionsContainerType > &RecvObjects)
 
virtual bool TransferObjects (std::vector< NodesContainerType > &SendObjects, std::vector< NodesContainerType > &RecvObjects, Kratos::Serializer &particleSerializer)
 
virtual bool TransferObjects (std::vector< ElementsContainerType > &SendObjects, std::vector< ElementsContainerType > &RecvObjects, Kratos::Serializer &particleSerializer)
 
virtual bool TransferObjects (std::vector< ConditionsContainerType > &SendObjects, std::vector< ConditionsContainerType > &RecvObjects, Kratos::Serializer &particleSerializer)
 
void Clear ()
 
virtual void PrintInfo (std::ostream &rOStream) const
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream, std::string const &rPrefixString="") const
 Print object's data. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (Communicator)
 Pointer definition of Communicator. More...
 

Type Definitions

typedef Communicator BaseType
 
typedef BaseType::IndexType IndexType
 
typedef BaseType::SizeType SizeType
 
typedef BaseType::NodeType NodeType
 
typedef BaseType::PropertiesType PropertiesType
 
typedef BaseType::ElementType ElementType
 
typedef BaseType::ConditionType ConditionType
 
typedef BaseType::NeighbourIndicesContainerType NeighbourIndicesContainerType
 
typedef BaseType::MeshType MeshType
 
typedef BaseType::MeshesContainerType MeshesContainerType
 
typedef MeshType::NodesContainerType NodesContainerType
 Nodes container. Which is a vector set of nodes with their Id's as key. More...
 
typedef MeshType::NodeIterator NodeIterator
 
typedef MeshType::NodeConstantIterator NodeConstantIterator
 
typedef MeshType::PropertiesContainerType PropertiesContainerType
 Properties container. Which is a vector set of Properties with their Id's as key. More...
 
typedef MeshType::PropertiesIterator PropertiesIterator
 
typedef MeshType::PropertiesConstantIterator PropertiesConstantIterator
 
typedef MeshType::ElementsContainerType ElementsContainerType
 Element container. A vector set of Elements with their Id's as key. More...
 
typedef MeshType::ElementIterator ElementIterator
 
typedef MeshType::ElementConstantIterator ElementConstantIterator
 
typedef MeshType::ConditionsContainerType ConditionsContainerType
 Condintions container. A vector set of Conditions with their Id's as key. More...
 
typedef MeshType::ConditionIterator ConditionIterator
 
typedef MeshType::ConditionConstantIterator ConditionConstantIterator
 
 KRATOS_CLASS_POINTER_DEFINITION (MPICommunicator)
 Pointer definition of MPICommunicator. More...
 

Additional Inherited Members

- Public Types inherited from Kratos::Communicator
typedef unsigned int IndexType
 
typedef unsigned int SizeType
 
typedef Node NodeType
 
typedef Properties PropertiesType
 
typedef Element ElementType
 
typedef Condition ConditionType
 
typedef DenseVector< intNeighbourIndicesContainerType
 
typedef Mesh< NodeType, PropertiesType, ElementType, ConditionTypeMeshType
 
typedef PointerVector< MeshTypeMeshesContainerType
 
typedef MeshType::NodesContainerType NodesContainerType
 Nodes container. Which is a vector set of nodes with their Id's as key. More...
 
typedef MeshType::NodeIterator NodeIterator
 
typedef MeshType::NodeConstantIterator NodeConstantIterator
 
typedef MeshType::PropertiesContainerType PropertiesContainerType
 Properties container. Which is a vector set of Properties with their Id's as key. More...
 
typedef MeshType::PropertiesIterator PropertiesIterator
 
typedef MeshType::PropertiesConstantIterator PropertiesConstantIterator
 
typedef MeshType::ElementsContainerType ElementsContainerType
 Element container. A vector set of Elements with their Id's as key. More...
 
typedef MeshType::ElementIterator ElementIterator
 
typedef MeshType::ElementConstantIterator ElementConstantIterator
 
typedef MeshType::ConditionsContainerType ConditionsContainerType
 Condintions container. A vector set of Conditions with their Id's as key. More...
 
typedef MeshType::ConditionIterator ConditionIterator
 
typedef MeshType::ConditionConstantIterator ConditionConstantIterator
 
- Protected Attributes inherited from Kratos::Communicator
SizeType mNumberOfColors
 
NeighbourIndicesContainerType mNeighbourIndices
 
MeshType::Pointer mpLocalMesh
 
MeshType::Pointer mpGhostMesh
 
MeshType::Pointer mpInterfaceMesh
 
MeshesContainerType mLocalMeshes
 
MeshesContainerType mGhostMeshes
 
MeshesContainerType mInterfaceMeshes
 
const DataCommunicatormrDataCommunicator
 

Detailed Description

MPICommunicator manages the transfer of ModelPart data in MPI distributed memory environment.

Member Typedef Documentation

◆ BaseType

◆ ConditionConstantIterator

Const iterator over the Conditions. This iterator is an indirect iterator over Conditions::Pointer which turn back a reference to Condition by * operator and not a pointer for more convenient usage.

◆ ConditionIterator

Iterator over the Conditions. This iterator is an indirect iterator over Conditions::Pointer which turn back a reference to Condition by * operator and not a pointer for more convenient usage.

◆ ConditionsContainerType

Condintions container. A vector set of Conditions with their Id's as key.

◆ ConditionType

◆ ElementConstantIterator

Const iterator over the Elements. This iterator is an indirect iterator over Elements::Pointer which turn back a reference to Element by * operator and not a pointer for more convenient usage.

◆ ElementIterator

Iterator over the Elements. This iterator is an indirect iterator over Elements::Pointer which turn back a reference to Element by * operator and not a pointer for more convenient usage.

◆ ElementsContainerType

Element container. A vector set of Elements with their Id's as key.

Iterator over the properties. This iterator is an indirect iterator over Properties::Pointer which turn back a reference to properties by * operator and not a pointer for more convenient usage.

◆ ElementType

◆ IndexType

◆ MeshesContainerType

◆ MeshType

◆ NeighbourIndicesContainerType

◆ NodeConstantIterator

Const iterator over the nodes. This iterator is an indirect iterator over Node::Pointer which turn back a reference to node by * operator and not a pointer for more convenient usage.

◆ NodeIterator

Iterator over the nodes. This iterator is an indirect iterator over Node::Pointer which turn back a reference to node by * operator and not a pointer for more convenient usage.

◆ NodesContainerType

Nodes container. Which is a vector set of nodes with their Id's as key.

◆ NodeType

◆ PropertiesConstantIterator

Const iterator over the Properties. This iterator is an indirect iterator over Properties::Pointer which turn back a reference to Properties by * operator and not a pointer for more convenient usage.

◆ PropertiesContainerType

Properties container. Which is a vector set of Properties with their Id's as key.

Iterator over the properties. This iterator is an indirect iterator over Properties::Pointer which turn back a reference to properties by * operator and not a pointer for more convenient usage.

◆ PropertiesIterator

Iterator over the Properties. This iterator is an indirect iterator over Node::Pointer which turn back a reference to node by * operator and not a pointer for more convenient usage.

◆ PropertiesType

◆ SizeType

Constructor & Destructor Documentation

◆ MPICommunicator() [1/2]

Kratos::MPICommunicator::MPICommunicator ( VariablesList pVariablesList,
const DataCommunicator rDataCommunicator 
)
inline

Constructor using the VariablesList and a custom DataCommunicator.

Parameters
pVariablesListPointer to the VariablesList of the ModelPart that will use this communicator.
rDataCommunicatorReference to a DataCommunicator, which will be used for MPI calls.

◆ MPICommunicator() [2/2]

Kratos::MPICommunicator::MPICommunicator ( MPICommunicator const &  rOther)
inline

Copy constructor.

◆ ~MPICommunicator()

Kratos::MPICommunicator::~MPICommunicator ( )
overridedefault

Destructor.

Member Function Documentation

◆ AssembleCurrentData() [1/5]

bool Kratos::MPICommunicator::AssembleCurrentData ( Variable< array_1d< double, 3 > > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleCurrentData() [2/5]

bool Kratos::MPICommunicator::AssembleCurrentData ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleCurrentData() [3/5]

bool Kratos::MPICommunicator::AssembleCurrentData ( Variable< int > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleCurrentData() [4/5]

bool Kratos::MPICommunicator::AssembleCurrentData ( Variable< Matrix > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleCurrentData() [5/5]

bool Kratos::MPICommunicator::AssembleCurrentData ( Variable< Vector > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleNonHistoricalData() [1/6]

bool Kratos::MPICommunicator::AssembleNonHistoricalData ( Variable< array_1d< double, 3 > > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleNonHistoricalData() [2/6]

bool Kratos::MPICommunicator::AssembleNonHistoricalData ( Variable< DenseVector< array_1d< double, 3 > > > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleNonHistoricalData() [3/6]

bool Kratos::MPICommunicator::AssembleNonHistoricalData ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleNonHistoricalData() [4/6]

bool Kratos::MPICommunicator::AssembleNonHistoricalData ( Variable< int > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleNonHistoricalData() [5/6]

bool Kratos::MPICommunicator::AssembleNonHistoricalData ( Variable< Matrix > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ AssembleNonHistoricalData() [6/6]

bool Kratos::MPICommunicator::AssembleNonHistoricalData ( Variable< Vector > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ Create() [1/3]

Communicator::Pointer Kratos::Communicator::Create

◆ Create() [2/3]

Communicator::Pointer Kratos::Communicator::Create

◆ Create() [3/3]

Communicator::Pointer Kratos::MPICommunicator::Create ( const DataCommunicator rDataCommunicator) const
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ Info()

std::string Kratos::MPICommunicator::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::Communicator.

◆ IsDistributed()

bool Kratos::MPICommunicator::IsDistributed ( ) const
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::MPICommunicator::KRATOS_CLASS_POINTER_DEFINITION ( MPICommunicator  )

Pointer definition of MPICommunicator.

◆ KRATOS_DEPRECATED_MESSAGE()

Kratos::MPICommunicator::KRATOS_DEPRECATED_MESSAGE ( "This constructor is  deprecated,
please use the one that accepts a DataCommunicator  
)
inline

Constructor using the VariablesList of the ModelPart that will use this communicator.

◆ operator=()

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

Assignment operator.

◆ SynchronizeAndNodalFlags()

bool Kratos::MPICommunicator::SynchronizeAndNodalFlags ( const Flags TheFlags)
inlineoverridevirtual

Assemble the values of the chosen flags on each node with an AND operation.

Parameters
[in]TheFlagsNames of the flags to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeCurrentDataToAbsMax()

bool Kratos::MPICommunicator::SynchronizeCurrentDataToAbsMax ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal solution step data to the absolute maximum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeCurrentDataToAbsMin()

bool Kratos::MPICommunicator::SynchronizeCurrentDataToAbsMin ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal solution step data to the absolute minimum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeCurrentDataToMax()

bool Kratos::MPICommunicator::SynchronizeCurrentDataToMax ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal solution step data to the maximum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeCurrentDataToMin()

bool Kratos::MPICommunicator::SynchronizeCurrentDataToMin ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal solution step data to the minimum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeDofs()

bool Kratos::MPICommunicator::SynchronizeDofs ( )
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalFlags()

bool Kratos::MPICommunicator::SynchronizeElementalFlags ( )
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [1/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< array_1d< double, 3 > > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [2/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< DenseVector< array_1d< double, 3 > > > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [3/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< DenseVector< int > > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [4/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [5/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< int > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [6/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< Matrix > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeElementalNonHistoricalVariable() [7/7]

bool Kratos::MPICommunicator::SynchronizeElementalNonHistoricalVariable ( Variable< Vector > const &  ThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNodalFlags()

bool Kratos::MPICommunicator::SynchronizeNodalFlags ( )
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNodalSolutionStepsData()

bool Kratos::MPICommunicator::SynchronizeNodalSolutionStepsData ( )
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalDataToAbsMax()

bool Kratos::MPICommunicator::SynchronizeNonHistoricalDataToAbsMax ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal data to the absolute maximum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalDataToAbsMin()

bool Kratos::MPICommunicator::SynchronizeNonHistoricalDataToAbsMin ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal data to the absolute minimum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalDataToMax()

bool Kratos::MPICommunicator::SynchronizeNonHistoricalDataToMax ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal data to the maximum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalDataToMin()

bool Kratos::MPICommunicator::SynchronizeNonHistoricalDataToMin ( Variable< double > const &  ThisVariable)
inlineoverridevirtual

Synchronize variable in nodal data to the minimum value across all processes.

Parameters
ThisVariableThe variable to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [1/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< array_1d< double, 3 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [2/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< array_1d< double, 4 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [3/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< array_1d< double, 6 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [4/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< array_1d< double, 9 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [5/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< bool > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [6/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< double > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [7/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< int > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [8/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< Matrix > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [9/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< Quaternion< double >> const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeNonHistoricalVariable() [10/10]

bool Kratos::MPICommunicator::SynchronizeNonHistoricalVariable ( Variable< Vector > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeOrNodalFlags()

bool Kratos::MPICommunicator::SynchronizeOrNodalFlags ( const Flags TheFlags)
inlineoverridevirtual

Assemble the values of the chosen flags on each node with an OR operation.

Parameters
[in]TheFlagsNames of the flags to be synchronized.

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [1/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< array_1d< double, 3 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [2/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< array_1d< double, 4 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [3/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< array_1d< double, 6 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [4/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< array_1d< double, 9 > > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [5/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< bool > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [6/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< double > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [7/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< int > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [8/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< Matrix > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [9/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< Quaternion< double >> const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ SynchronizeVariable() [10/10]

bool Kratos::MPICommunicator::SynchronizeVariable ( Variable< Vector > const &  rThisVariable)
inlineoverridevirtual

Reimplemented from Kratos::Communicator.

◆ TransferObjects() [1/6]

bool Kratos::MPICommunicator::TransferObjects ( std::vector< ConditionsContainerType > &  SendObjects,
std::vector< ConditionsContainerType > &  RecvObjects 
)
inlineoverride

Transfer objects from a given process to a destination process

Parameters
SendObjectslist of objects to be send. SendObjects[i] -> Objects to process i
RecvObjectslist of objects to be received. RecvObjects[i] -> objects from process i

◆ TransferObjects() [2/6]

bool Kratos::MPICommunicator::TransferObjects ( std::vector< ConditionsContainerType > &  SendObjects,
std::vector< ConditionsContainerType > &  RecvObjects,
Kratos::Serializer particleSerializer 
)
inlineoverride

Transfer objects from a given process to a destination process

Parameters
SendObjectslist of objects to be send. SendObjects[i] -> Objects to process i
RecvObjectslist of objects to be received. RecvObjects[i] -> objects from process i

◆ TransferObjects() [3/6]

bool Kratos::MPICommunicator::TransferObjects ( std::vector< ElementsContainerType > &  SendObjects,
std::vector< ElementsContainerType > &  RecvObjects 
)
inlineoverride

Transfer objects from a given process to a destination process

Parameters
SendObjectslist of objects to be send. SendObjects[i] -> Objects to process i
RecvObjectslist of objects to be received. RecvObjects[i] -> objects from process i

◆ TransferObjects() [4/6]

bool Kratos::MPICommunicator::TransferObjects ( std::vector< ElementsContainerType > &  SendObjects,
std::vector< ElementsContainerType > &  RecvObjects,
Kratos::Serializer particleSerializer 
)
inlineoverride

Transfer objects from a given process to a destination process

Parameters
SendObjectslist of objects to be send. SendObjects[i] -> Objects to process i
RecvObjectslist of objects to be received. RecvObjects[i] -> objects from process i

◆ TransferObjects() [5/6]

bool Kratos::MPICommunicator::TransferObjects ( std::vector< NodesContainerType > &  SendObjects,
std::vector< NodesContainerType > &  RecvObjects 
)
inlineoverride

Transfer objects from a given process to a destination process

Parameters
SendObjectslist of objects to be send. SendObjects[i] -> Objects to process i
RecvObjectslist of objects to be received. RecvObjects[i] -> objects from process i

◆ TransferObjects() [6/6]

bool Kratos::MPICommunicator::TransferObjects ( std::vector< NodesContainerType > &  SendObjects,
std::vector< NodesContainerType > &  RecvObjects,
Kratos::Serializer particleSerializer 
)
inlineoverride

Transfer objects from a given process to a destination process

Parameters
SendObjectslist of objects to be send. SendObjects[i] -> Objects to process i
RecvObjectslist of objects to be received. RecvObjects[i] -> objects from process i

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