![]() |
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.
|
This class includes some utilities used for contact computations. More...
#include <contact_utilities.h>
Public Member Functions | |
Life Cycle | |
| ContactUtilities ()=default | |
| Constructor. More... | |
| virtual | ~ContactUtilities ()=default |
| Destructor. More... | |
Static Public Member Functions | |
Operations | |
| static double | CalculateRelativeSizeMesh (ModelPart &rModelPart) |
| This function computes the relative size of the mesh. More... | |
| static double | CalculateMaxNodalH (ModelPart &rModelPart) |
| This method computes the maximal nodal H. More... | |
| static double | CalculateMeanNodalH (ModelPart &rModelPart) |
| This method computes the mean nodal H. More... | |
| static double | CalculateMinimalNodalH (ModelPart &rModelPart) |
| This method computes the minimal nodal H. More... | |
| template<class TPointType > | |
| static void | ScaleNode (TPointType &rPointToScale, const array_1d< double, 3 > &rNormal, const double LengthSearch) |
| This function scales the points according to a factor (to increase the bounding box) More... | |
| static double | DistancePoints (const GeometryType::CoordinatesArrayType &rPointOrigin, const GeometryType::CoordinatesArrayType &rPointDestiny) |
| Calculates the distance between nodes. More... | |
| static void | ComputeStepJump (ModelPart &rModelPart, const double DeltaTime, const bool HalfJump=true) |
| It calculates the center updated in u_n+1 or u_n+1/2. More... | |
| static bool | CheckActivity (ModelPart &rModelPart, const bool ThrowError=true) |
| It checks the activity of the current contact simulation. More... | |
| static bool | CheckModelPartHasRotationDoF (ModelPart &rModelPart) |
| This method checks that the modelpart has a rotation DoF. More... | |
| static void | CleanContactModelParts (ModelPart &rModelPart) |
| This method removes the model parts with computing conditions. More... | |
| static void | ComputeExplicitContributionConditions (ModelPart &rModelPart) |
| It computes the explicit contributions of the conditions. More... | |
| static void | ActivateConditionWithActiveNodes (ModelPart &rModelPart) |
| It activates the conditions with active nodes. More... | |
| static array_1d< double, 3 > | GetHalfJumpCenter (GeometryType &rThisGeometry) |
| It calculates the center updated in u_n+1/2. More... | |
| template<std::size_t TDim, std::size_t TNumNodes> | |
| static BoundedMatrix< double, TNumNodes, TDim > | ComputeTangentMatrixSlip (const GeometryType &rGeometry, const std::size_t StepSlip=1) |
| It calculates the matrix containing the tangent vector of the r_gt (for frictional contact) More... | |
Type Definitions | |
| using | CoordinatesArrayType = Point::CoordinatesArrayType |
| using | GeometryType = Geometry< Node > |
| Definition of geometries. More... | |
| using | NodesArrayType = ModelPart::NodesContainerType |
| The containers of the components of the model parts. More... | |
| using | ConditionsArrayType = ModelPart::ConditionsContainerType |
| using | IndexType = std::size_t |
| Index type definition. More... | |
| using | SizeType = std::size_t |
| Size type definition. More... | |
| KRATOS_CLASS_POINTER_DEFINITION (ContactUtilities) | |
| Pointer definition of ExactMortarIntegrationUtility. More... | |
This class includes some utilities used for contact computations.
Definition of geometries.
| using Kratos::ContactUtilities::IndexType = std::size_t |
Index type definition.
The containers of the components of the model parts.
| using Kratos::ContactUtilities::SizeType = std::size_t |
Size type definition.
|
default |
Constructor.
This is the default constructor
|
virtualdefault |
Destructor.
|
static |
It activates the conditions with active nodes.
| rModelPart | The modelpart to check |
This method computes the maximal nodal H.
| rModelPart | The modelpart to compute |
This method computes the mean nodal H.
| rModelPart | The modelpart to compute |
This method computes the minimal nodal H.
| rModelPart | The modelpart to compute |
This function computes the relative size of the mesh.
| rModelPart | The modelpart to compute |
|
static |
It checks the activity of the current contact simulation.
| rModelPart | The modelpart to check the activity |
| ThrowError | If an error is thrown |
This method checks that the modelpart has a rotation DoF.
Used in the convergence criteria
| rModelPart | The modelpart to clean up |
|
static |
This method removes the model parts with computing conditions.
So for example we can remove potential errors in remeshing processes
| rModelPart | The modelpart to clean up |
|
static |
It computes the explicit contributions of the conditions.
| rModelPart | The modelpart to update |
|
static |
It calculates the center updated in u_n+1 or u_n+1/2.
| rModelPart | The modelpart to update |
| DeltaTime | The increment of time considered |
| HalfJump | If the jumpt is just half dt |
|
inlinestatic |
It calculates the matrix containing the tangent vector of the r_gt (for frictional contact)
| rGeometry | The geometry to calculate |
| StepSlip | The considered step slip |
|
static |
Calculates the distance between nodes.
| rPointOrigin | The first node |
| rPointDestiny | The second node |
|
static |
It calculates the center updated in u_n+1/2.
| rThisGeometry | The geometry to calculate |
| Kratos::ContactUtilities::KRATOS_CLASS_POINTER_DEFINITION | ( | ContactUtilities | ) |
Pointer definition of ExactMortarIntegrationUtility.
|
inlinestatic |
This function scales the points according to a factor (to increase the bounding box)
| rPointToScale | The point to scale |
| rNormal | The normal of the point |
| LengthSearch | The factor considered to "grow" the node |