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.
Typedefs | Functions
Kratos::MoveMeshUtilities Namespace Reference

Typedefs

typedef Element::GeometryType GeometryType
 
typedef Element::VectorType VectorType
 

Functions

void CheckJacobianDimension (GeometryType::JacobiansType &rInvJ0, VectorType &rDetJ0, const GeometryType &rGeometry)
 
void MoveMesh (ModelPart::NodesContainerType &rNodes)
 
void MoveModelPart (ModelPart &rModelPart, const array_1d< double, 3 > &rRotationAxis, const double rotationAngle, const array_1d< double, 3 > &rReferencePoint, const array_1d< double, 3 > &rTranslationVector)
 Impose mesh movement on all nodes of a model part. More...
 
void MoveModelPart (ModelPart &rModelPart, const Parameters rotationAxis, const Parameters rotationAngle, const Parameters referencePoint, const Parameters translationVector)
 Impose parametric mesh movement on all nodes of a model part, as a function of the current position, time, and initial position. More...
 
void MoveModelPart (ModelPart &rModelPart, const AffineTransform &rTransform)
 Impose mesh movement on all nodes of a model part. More...
 
void MoveModelPart (ModelPart &rModelPart, ParametricAffineTransform &rTransform)
 Impose parametric mesh movement on all nodes of a model part. More...
 
ModelPartGenerateMeshPart (ModelPart &rModelPart, const std::string &rElementName)
 
void InitializeMeshPartWithElements (ModelPart &rDestinationModelPart, ModelPart &rOriginModelPart, Properties::Pointer pProperties, const std::string &rElementName)
 
void SuperImposeVariables (ModelPart &rModelPart, const Variable< array_1d< double, 3 > > &rVariable, const Variable< array_1d< double, 3 > > &rVariableToSuperImpose)
 
void SuperImposeMeshDisplacement (ModelPart &rModelPart, const Variable< array_1d< double, 3 > > &rVariableToSuperImpose)
 
void SuperImposeMeshVelocity (ModelPart &rModelPart, const Variable< array_1d< double, 3 > > &rVariableToSuperImpose)
 

Typedef Documentation

◆ GeometryType

◆ VectorType

Function Documentation

◆ CheckJacobianDimension()

void Kratos::MoveMeshUtilities::CheckJacobianDimension ( GeometryType::JacobiansType rInvJ0,
VectorType rDetJ0,
const GeometryType rGeometry 
)

◆ GenerateMeshPart()

ModelPart * Kratos::MoveMeshUtilities::GenerateMeshPart ( ModelPart rModelPart,
const std::string &  rElementName 
)

◆ InitializeMeshPartWithElements()

void Kratos::MoveMeshUtilities::InitializeMeshPartWithElements ( ModelPart rDestinationModelPart,
ModelPart rOriginModelPart,
Properties::Pointer  pProperties,
const std::string &  rElementName 
)

◆ MoveMesh()

void Kratos::MoveMeshUtilities::MoveMesh ( ModelPart::NodesContainerType rNodes)

◆ MoveModelPart() [1/4]

void Kratos::MoveMeshUtilities::MoveModelPart ( ModelPart rModelPart,
const AffineTransform rTransform 
)

Impose mesh movement on all nodes of a model part.

◆ MoveModelPart() [2/4]

void Kratos::MoveMeshUtilities::MoveModelPart ( ModelPart rModelPart,
const array_1d< double, 3 > &  rRotationAxis,
const double  rotationAngle,
const array_1d< double, 3 > &  rReferencePoint,
const array_1d< double, 3 > &  rTranslationVector 
)

Impose mesh movement on all nodes of a model part.

the movement is a linear transformation (see AffineTransform ) defined by the specified by the arguments.

Parameters
rModelPartmodel part containing the nodes to set MESH_DISPLACEMENT on.
rRotationAxisaxis of rotation.
rotationAngleangle of rotation (radians).
rReferencePointpoint on the axis of rotation.
rTranslationVectortranslation vector (applied AFTER the rotation).

◆ MoveModelPart() [3/4]

void Kratos::MoveMeshUtilities::MoveModelPart ( ModelPart rModelPart,
const Parameters  rotationAxis,
const Parameters  rotationAngle,
const Parameters  referencePoint,
const Parameters  translationVector 
)

Impose parametric mesh movement on all nodes of a model part, as a function of the current position, time, and initial position.

the movement is a linear transformation (see ParametricAffineTransform ) defined by the specified by the arguments.

Parameters
rModelPartmodel part containing the nodes to set MESH_DISPLACEMENT on.
rRotationAxisaxis of rotation (vector of size 3).
rRotationAngleangle of rotation (scalar - radians).
rReferencePointpoint on the axis of rotation (vector of size 3).
rTranslationVectortranslation vector (vector of size 3 - applied AFTER the rotation).

◆ MoveModelPart() [4/4]

void Kratos::MoveMeshUtilities::MoveModelPart ( ModelPart rModelPart,
ParametricAffineTransform rTransform 
)

Impose parametric mesh movement on all nodes of a model part.

◆ SuperImposeMeshDisplacement()

void Kratos::MoveMeshUtilities::SuperImposeMeshDisplacement ( ModelPart rModelPart,
const Variable< array_1d< double, 3 > > &  rVariableToSuperImpose 
)

◆ SuperImposeMeshVelocity()

void Kratos::MoveMeshUtilities::SuperImposeMeshVelocity ( ModelPart rModelPart,
const Variable< array_1d< double, 3 > > &  rVariableToSuperImpose 
)

◆ SuperImposeVariables()

void Kratos::MoveMeshUtilities::SuperImposeVariables ( ModelPart rModelPart,
const Variable< array_1d< double, 3 > > &  rVariable,
const Variable< array_1d< double, 3 > > &  rVariableToSuperImpose 
)