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

Short class definition. More...

#include <mapper_vertex_morphing.h>

Inheritance diagram for Kratos::MapperVertexMorphing:
Collaboration diagram for Kratos::MapperVertexMorphing:

Public Member Functions

Life Cycle
 MapperVertexMorphing (ModelPart &rOriginModelPart, ModelPart &rDestinationModelPart, Parameters MapperSettings)
 Default constructor. More...
 
virtual ~MapperVertexMorphing ()
 Destructor. More...
 
Operations
void Initialize () override
 
void Map (const Variable< array_3d > &rOriginVariable, const Variable< array_3d > &rDestinationVariable) override
 
void Map (const Variable< double > &rOriginVariable, const Variable< double > &rDestinationVariable) override
 
void InverseMap (const Variable< array_3d > &rDestinationVariable, const Variable< array_3d > &rOriginVariable) override
 
void InverseMap (const Variable< double > &rDestinationVariable, const Variable< double > &rOriginVariable) override
 
void Update () override
 
Input and output
virtual std::string Info () const override
 Turn back information as a string. More...
 
virtual void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
virtual void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
- Public Member Functions inherited from Kratos::Mapper< TSparseSpace, TDenseSpace >
 Mapper ()=default
 Constructor. More...
 
virtual ~Mapper ()=default
 Destructor. More...
 
 Mapper ()
 Default constructor. More...
 
virtual ~Mapper ()
 Destructor. More...
 
virtual void UpdateInterface (Kratos::Flags MappingOptions, double SearchRadius)=0
 Updates the mapping-system after the geometry/mesh has changed After changes in the topology (e.g. remeshing or sliding interfaces) the relations for the mapping have to be recomputed. This means that the search has to be conducted again and the mapping-system has to be rebuilt, hence this is expensive. More...
 
virtual void Map (const Variable< double > &rOriginVariable, const Variable< double > &rDestinationVariable, Kratos::Flags MappingOptions)=0
 Mapping from Origin to Destination, Scalar Variable Data is exchanged on the Interface, from the Origin-Modelpart to the Destination-ModelPart (the modelparts were specified in the construction Phase of the Mapper) More...
 
virtual void Map (const Variable< array_1d< double, 3 > > &rOriginVariable, const Variable< array_1d< double, 3 > > &rDestinationVariable, Kratos::Flags MappingOptions)=0
 Mapping from Origin to Destination, Vector Variable Same as Map, but maps an array3-variable. More...
 
virtual void InverseMap (const Variable< double > &rOriginVariable, const Variable< double > &rDestinationVariable, Kratos::Flags MappingOptions)=0
 Mapping from Destination to Origin, Scalar Variable Data is exchanged on the Interface, from the Destination-Modelpart to the Origin-ModelPart (the modelparts were specified in the construction Phase of the Mapper) It does the opposite of Map. More...
 
virtual void InverseMap (const Variable< array_1d< double, 3 > > &rOriginVariable, const Variable< array_1d< double, 3 > > &rDestinationVariable, Kratos::Flags MappingOptions)=0
 Mapping from Destination to Origin, Vector Variable Same as InveseMap, but maps an array3-variable. More...
 
virtual MapperUniquePointerType Clone (ModelPart &rModelPartOrigin, ModelPart &rModelPartDestination, Parameters JsonParameters) const =0
 Cloning the Mapper returns a clone of the current Mapper pure virtual, has to be implemented in every derived mapper, used in the creation of the Mappers. More...
 
virtual TMappingMatrixTypeGetMappingMatrix ()
 This method returns the mapping-matrix. More...
 
virtual ModelPartGetInterfaceModelPartOrigin ()
 
virtual ModelPartGetInterfaceModelPartDestination ()
 
virtual int AreMeshesConforming () const
 Quering for mesh conformity This function is deprecated and will eventually be removed, hence it is best not to use it returns 1 if all the nodes are conform and 0 otherwise. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (Mapper)
 
 KRATOS_CLASS_POINTER_DEFINITION (Mapper)
 Pointer definition of Mapper. More...
 

Protected Member Functions

Protected Operations
virtual void InitializeComputationOfMappingMatrix ()
 
double GetVertexMorphingRadius (const NodeType &rNode) const override
 
Protected Operators

Protected Attributes

Protected member Variables
ModelPartmrOriginModelPart
 
ModelPartmrDestinationModelPart
 
Parameters mMapperSettings
 
FilterFunction::UniquePointer mpFilterFunction
 
bool mIsMappingInitialized = false
 

Type Definitions

typedef Node NodeType
 
typedef Node ::Pointer NodeTypePointer
 
typedef std::vector< NodeType::Pointer > NodeVector
 
typedef std::vector< NodeType::Pointer >::iterator NodeIterator
 
typedef std::vector< double >::iterator DoubleVectorIterator
 
typedef ModelPart::ConditionsContainerType ConditionsArrayType
 
typedef array_1d< double, 3 > array_3d
 
typedef UblasSpace< double, CompressedMatrix, VectorSparseSpaceType
 
typedef SparseSpaceType::MatrixType SparseMatrixType
 
typedef SparseSpaceType::VectorType VectorType
 
typedef Bucket< 3, NodeType, NodeVector, NodeTypePointer, NodeIterator, DoubleVectorIteratorBucketType
 
typedef Tree< KDTreePartition< BucketType > > KDTree
 
 KRATOS_CLASS_POINTER_DEFINITION (MapperVertexMorphing)
 Pointer definition of MapperVertexMorphing. More...
 

Additional Inherited Members

- Public Types inherited from Kratos::Mapper< TSparseSpace, TDenseSpace >
typedef Kratos::unique_ptr< MapperMapperUniquePointerType
 
typedef TSparseSpace::MatrixType TMappingMatrixType
 
typedef array_1d< double, 3 > array_3d
 
typedef Node NodeType
 

Detailed Description

Short class definition.

Detail class definition.

Member Typedef Documentation

◆ array_3d

◆ BucketType

◆ ConditionsArrayType

◆ DoubleVectorIterator

◆ KDTree

◆ NodeIterator

typedef std::vector<NodeType::Pointer>::iterator Kratos::MapperVertexMorphing::NodeIterator

◆ NodeType

◆ NodeTypePointer

◆ NodeVector

typedef std::vector<NodeType::Pointer> Kratos::MapperVertexMorphing::NodeVector

◆ SparseMatrixType

◆ SparseSpaceType

◆ VectorType

Constructor & Destructor Documentation

◆ MapperVertexMorphing()

Kratos::MapperVertexMorphing::MapperVertexMorphing ( ModelPart rOriginModelPart,
ModelPart rDestinationModelPart,
Parameters  MapperSettings 
)
inline

Default constructor.

◆ ~MapperVertexMorphing()

virtual Kratos::MapperVertexMorphing::~MapperVertexMorphing ( )
inlinevirtual

Destructor.

Member Function Documentation

◆ GetVertexMorphingRadius()

double Kratos::MapperVertexMorphing::GetVertexMorphingRadius ( const NodeType rNode) const
inlineoverrideprotectedvirtual

◆ Info()

virtual std::string Kratos::MapperVertexMorphing::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::Mapper< TSparseSpace, TDenseSpace >.

Reimplemented in Kratos::MapperVertexMorphingImprovedIntegration.

◆ Initialize()

void Kratos::MapperVertexMorphing::Initialize ( void  )
overridevirtual

◆ InitializeComputationOfMappingMatrix()

void Kratos::MapperVertexMorphing::InitializeComputationOfMappingMatrix ( )
protectedvirtual

◆ InverseMap() [1/2]

void Kratos::MapperVertexMorphing::InverseMap ( const Variable< array_3d > &  rDestinationVariable,
const Variable< array_3d > &  rOriginVariable 
)
overridevirtual

◆ InverseMap() [2/2]

void Kratos::MapperVertexMorphing::InverseMap ( const Variable< double > &  rDestinationVariable,
const Variable< double > &  rOriginVariable 
)
overridevirtual

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::MapperVertexMorphing::KRATOS_CLASS_POINTER_DEFINITION ( MapperVertexMorphing  )

Pointer definition of MapperVertexMorphing.

◆ Map() [1/2]

void Kratos::MapperVertexMorphing::Map ( const Variable< array_3d > &  rOriginVariable,
const Variable< array_3d > &  rDestinationVariable 
)
overridevirtual

◆ Map() [2/2]

void Kratos::MapperVertexMorphing::Map ( const Variable< double > &  rOriginVariable,
const Variable< double > &  rDestinationVariable 
)
overridevirtual

◆ PrintData()

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

Print object's data.

Reimplemented from Kratos::Mapper< TSparseSpace, TDenseSpace >.

Reimplemented in Kratos::MapperVertexMorphingImprovedIntegration.

◆ PrintInfo()

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

Print information about this object.

Reimplemented from Kratos::Mapper< TSparseSpace, TDenseSpace >.

Reimplemented in Kratos::MapperVertexMorphingImprovedIntegration.

◆ Update()

void Kratos::MapperVertexMorphing::Update ( )
overridevirtual

Member Data Documentation

◆ mIsMappingInitialized

bool Kratos::MapperVertexMorphing::mIsMappingInitialized = false
protected

◆ mMapperSettings

Parameters Kratos::MapperVertexMorphing::mMapperSettings
protected

◆ mpFilterFunction

FilterFunction::UniquePointer Kratos::MapperVertexMorphing::mpFilterFunction
protected

◆ mrDestinationModelPart

ModelPart& Kratos::MapperVertexMorphing::mrDestinationModelPart
protected

◆ mrOriginModelPart

ModelPart& Kratos::MapperVertexMorphing::mrOriginModelPart
protected

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