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.
|
Object for storing data that is needed to construct the local-mapping-system. More...
#include <mapper_interface_info.h>
Public Types | |
Enum's | |
enum class | InfoType { Dummy } |
Public Member Functions | |
Life Cycle | |
MapperInterfaceInfo ()=default | |
Default constructor. More... | |
MapperInterfaceInfo (const CoordinatesArrayType &rCoordinates, const IndexType SourceLocalSystemIndex, const IndexType SourceRank) | |
virtual | ~MapperInterfaceInfo ()=default |
Destructor. More... | |
Operations | |
virtual void | ProcessSearchResult (const InterfaceObject &rInterfaceObject)=0 |
Processing the result of the search This function processes the results of the search, i.e. it extracts the information needed from the neighbor and saves it such that it can be later accesse by the MapperLocalSystem for assembling it's local system. This happens in the remote partition. More... | |
virtual void | ProcessSearchResultForApproximation (const InterfaceObject &rInterfaceObject) |
Processing the result of the search for computing an approximation This function processes the results of the search for computing an approximation. This can be necessary if e.g. a projection fails. In case an approximation is found the function "SetIsApproximation" has to be called to set internal flags for data-exchange and the computation of the local system by the MapperLocalSystem This happens in the remote partition. It's implementation is optional. More... | |
virtual MapperInterfaceInfo::Pointer | Create (const CoordinatesArrayType &rCoordinates, const IndexType SourceLocalSystemIndex, const IndexType SourceRank) const =0 |
virtual MapperInterfaceInfo::Pointer | Create () const =0 |
virtual InterfaceObject::ConstructionType | GetInterfaceObjectType () const =0 |
returning the type of construction for the InterfaceObject The returned type is used to create the object for the bin-search It is tightly coupled to this class since it decides which information can be extracted by this class More... | |
IndexType | GetLocalSystemIndex () const |
IndexType | GetSourceRank () const |
bool | GetLocalSearchWasSuccessful () const |
bool | GetIsApproximation () const |
CoordinatesArrayType & | Coordinates () |
Access | |
virtual void | GetValue (int &rValue, const InfoType ValueType) const |
virtual void | GetValue (std::size_t &rValue, const InfoType ValueType) const |
virtual void | GetValue (double &rValue, const InfoType ValueType) const |
virtual void | GetValue (bool &rValue, const InfoType ValueType) const |
virtual void | GetValue (GeometryType &rValue, const InfoType ValueType) const |
virtual void | GetValue (std::vector< int > &rValue, const InfoType ValueType) const |
virtual void | GetValue (std::vector< std::size_t > &rValue, const InfoType ValueType) const |
virtual void | GetValue (std::vector< double > &rValue, const InfoType ValueType) const |
virtual void | GetValue (std::vector< bool > &rValue, const InfoType ValueType) const |
virtual void | GetValue (std::vector< GeometryType > &rValue, const InfoType ValueType) const |
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 | |
void | SetLocalSearchWasSuccessful () |
void | SetIsApproximation () |
Protected Attributes | |
Protected member Variables | |
IndexType | mSourceLocalSystemIndex |
CoordinatesArrayType | mCoordinates |
IndexType | mSourceRank = 0 |
Type Definitions | |
typedef std::size_t | IndexType |
typedef InterfaceObject::CoordinatesArrayType | CoordinatesArrayType |
typedef InterfaceObject::NodeType | NodeType |
typedef InterfaceObject::GeometryType | GeometryType |
KRATOS_CLASS_POINTER_DEFINITION (MapperInterfaceInfo) | |
Pointer definition of MapperInterfaceInfo. More... | |
Private Access | |
class | Serializer |
Object for storing data that is needed to construct the local-mapping-system.
When constructing th local-mapper-system, some data from the "other" side of the Interface is needed which is different for every mapper. This class stores the data needed and provides it later when the local-system is constructed. For the data-exchange in MPI the data is saved using serialization
typedef std::size_t Kratos::MapperInterfaceInfo::IndexType |
|
strong |
|
default |
Default constructor.
|
inlineexplicit |
|
virtualdefault |
Destructor.
|
inline |
|
pure virtual |
|
pure virtual |
|
pure virtual |
returning the type of construction for the InterfaceObject The returned type is used to create the object for the bin-search It is tightly coupled to this class since it decides which information can be extracted by this class
Implemented in Kratos::NearestNeighborInterfaceInfo, Kratos::NearestElementInterfaceInfo, and Kratos::BarycentricInterfaceInfo.
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in Kratos::NearestNeighborInterfaceInfo, and Kratos::NearestElementInterfaceInfo.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in Kratos::NearestElementInterfaceInfo.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in Kratos::NearestElementInterfaceInfo.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in Kratos::NearestNeighborInterfaceInfo, and Kratos::NearestElementInterfaceInfo.
|
inlinevirtual |
|
inlinevirtual |
Turn back information as a string.
Kratos::MapperInterfaceInfo::KRATOS_CLASS_POINTER_DEFINITION | ( | MapperInterfaceInfo | ) |
Pointer definition of MapperInterfaceInfo.
|
inlinevirtual |
Print object's data.
|
inlinevirtual |
Print information about this object.
|
pure virtual |
Processing the result of the search This function processes the results of the search, i.e. it extracts the information needed from the neighbor and saves it such that it can be later accesse by the MapperLocalSystem for assembling it's local system. This happens in the remote partition.
rpInterfaceObject | The InterfaceObject found by the search |
Implemented in Kratos::NearestNeighborInterfaceInfo, Kratos::NearestElementInterfaceInfo, and Kratos::BarycentricInterfaceInfo.
|
inlinevirtual |
Processing the result of the search for computing an approximation This function processes the results of the search for computing an approximation. This can be necessary if e.g. a projection fails. In case an approximation is found the function "SetIsApproximation" has to be called to set internal flags for data-exchange and the computation of the local system by the MapperLocalSystem This happens in the remote partition. It's implementation is optional.
rpInterfaceObject | The InterfaceObject found by the search |
Reimplemented in Kratos::NearestElementInterfaceInfo.
|
inlineprotected |
|
inlineprotected |
|
friend |
|
protected |
|
protected |
|
protected |