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::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster > Class Template Reference

MortarContactCondition. More...

#include <mortar_contact_condition.h>

Inheritance diagram for Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >:
Collaboration diagram for Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >:

Public Member Functions

Life Cycle
 MortarContactCondition ()
 Default constructor. More...
 
 MortarContactCondition (IndexType NewId, GeometryType::Pointer pGeometry)
 
 MortarContactCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties)
 
 MortarContactCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties, GeometryType::Pointer pMasterGeometry)
 
 MortarContactCondition (MortarContactCondition const &rOther)
 Copy constructor. More...
 
 ~MortarContactCondition () override
 Destructor. More...
 
Operations
void Initialize (const ProcessInfo &rCurrentProcessInfo) override
 Called at the beginning of each solution step. More...
 
void InitializeSolutionStep (const ProcessInfo &rCurrentProcessInfo) override
 Called at the beginning of each solution step. More...
 
void InitializeNonLinearIteration (const ProcessInfo &rCurrentProcessInfo) override
 Called at the beginning of each iteration. More...
 
void FinalizeSolutionStep (const ProcessInfo &rCurrentProcessInfo) override
 Called at the ending of each solution step. More...
 
void FinalizeNonLinearIteration (const ProcessInfo &rCurrentProcessInfo) override
 Called at the end of each iteration. More...
 
void CalculateMassMatrix (MatrixType &rMassMatrix, const ProcessInfo &rCurrentProcessInfo) override
 This method computes the mass matrix. More...
 
void CalculateDampingMatrix (MatrixType &rDampingMatrix, const ProcessInfo &rCurrentProcessInfo) override
 Initialize Damping Matrix. More...
 
Condition::Pointer Create (IndexType NewId, NodesArrayType const &rThisNodes, PropertiesType::Pointer pProperties) const override
 Creates a new element pointer from an arry of nodes. More...
 
Condition::Pointer Create (IndexType NewId, GeometryType::Pointer pGeom, PropertiesType::Pointer pProperties) const override
 Creates a new element pointer from an existing geometry. More...
 
Condition::Pointer Create (IndexType NewId, GeometryType::Pointer pGeom, PropertiesType::Pointer pProperties, GeometryType::Pointer pMasterGeom) const override
 Creates a new element pointer from an existing geometry. More...
 
void AddExplicitContribution (const ProcessInfo &rCurrentProcessInfo) override
 This is called during the assembling process in order to calculate the condition contribution in explicit calculation. More...
 
void AddExplicitContribution (const VectorType &rRHSVector, const Variable< VectorType > &rRHSVariable, const Variable< double > &rDestinationVariable, const ProcessInfo &rCurrentProcessInfo) override
 This function is designed to make the element to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable rDestinationVariable (double version) More...
 
void AddExplicitContribution (const VectorType &rRHSVector, const Variable< VectorType > &rRHSVariable, const Variable< array_1d< double, 3 > > &rDestinationVariable, const ProcessInfo &rCurrentProcessInfo) override
 This function is designed to make the element to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable (array_1d<double, 3>) version rDestinationVariable. More...
 
void EquationIdVector (EquationIdVectorType &rResult, const ProcessInfo &rCurrentProcessInfo) const override
 Sets on rResult the ID's of the element degrees of freedom. More...
 
void GetDofList (DofsVectorType &rConditionalDofList, const ProcessInfo &rCurrentProcessInfo) const override
 Sets on ConditionalDofList the degrees of freedom of the considered element geometry. More...
 
void CalculateOnIntegrationPoints (const Variable< double > &rVariable, std::vector< double > &rOutput, const ProcessInfo &rCurrentProcessInfo) override
 Calculate a double Variable. More...
 
void CalculateOnIntegrationPoints (const Variable< array_1d< double, 3 > > &rVariable, std::vector< array_1d< double, 3 > > &rOutput, const ProcessInfo &rCurrentProcessInfo) override
 Calculate a array_1d Variable. More...
 
void CalculateOnIntegrationPoints (const Variable< Vector > &rVariable, std::vector< Vector > &rOutput, const ProcessInfo &rCurrentProcessInfo) override
 Calculate a Vector Variable. More...
 
int Check (const ProcessInfo &rCurrentProcessInfo) const override
 This function provides the place to perform checks on the completeness of the input. More...
 
Input and output
std::string Info () const override
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
- Public Member Functions inherited from Kratos::PairedCondition
 PairedCondition ()
 Default constructor. More...
 
 PairedCondition (IndexType NewId, GeometryType::Pointer pGeometry)
 
 PairedCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties)
 
 PairedCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties, GeometryType::Pointer pPairedGeometry)
 
 PairedCondition (PairedCondition const &rOther)
 Copy constructor. More...
 
 ~PairedCondition () override
 Destructor. More...
 
void Initialize (const ProcessInfo &rCurrentProcessInfo) override
 Called at the beginning of each solution step. More...
 
void InitializeSolutionStep (const ProcessInfo &rCurrentProcessInfo) override
 Called at the beginning of each solution step. More...
 
void InitializeNonLinearIteration (const ProcessInfo &rCurrentProcessInfo) override
 Called at the beginning of each iteration. More...
 
Condition::Pointer Create (IndexType NewId, NodesArrayType const &rThisNodes, PropertiesType::Pointer pProperties) const override
 Creates a new element pointer from an arry of nodes. More...
 
Condition::Pointer Create (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties) const override
 Creates a new element pointer from an existing geometry. More...
 
GeometryType::Pointer pGetParentGeometry ()
 This method returns the parent geometry. More...
 
GeometryType::Pointer const pGetParentGeometry () const
 This method returns the parent geometry (constant version) More...
 
GeometryType::Pointer pGetPairedGeometry ()
 This method returns the paired geometry. More...
 
GeometryType::Pointer const pGetPairedGeometry () const
 This method returns the paired geometry (constant version) More...
 
GeometryTypeGetParentGeometry ()
 This method returns the parent geometry. More...
 
GeometryType const & GetParentGeometry () const
 This method returns the parent geometry (constant version) More...
 
GeometryTypeGetPairedGeometry ()
 This method returns the paired geometry. More...
 
GeometryType const & GetPairedGeometry () const
 This method returns the paired geometry (constant version) More...
 
void SetPairedNormal (const array_1d< double, 3 > &rPairedNormal)
 This method sets the paired normal. More...
 
array_1d< double, 3 > const & GetPairedNormal () const
 This method returns the paired normal. More...
 
std::string Info () const override
 Turn back information as a string. More...
 
void PrintInfo (std::ostream &rOStream) const override
 Print information about this object. More...
 
void PrintData (std::ostream &rOStream) const override
 Print object's data. More...
 
 KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (PairedCondition)
 Counted pointer of PairedCondition. More...
 
- Public Member Functions inherited from Kratos::Condition
 Condition (IndexType NewId=0)
 
 Condition (IndexType NewId, const NodesArrayType &ThisNodes)
 
 Condition (IndexType NewId, GeometryType::Pointer pGeometry)
 
 Condition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties)
 
 Condition (Condition const &rOther)
 Copy constructor. More...
 
 ~Condition () override
 Destructor. More...
 
Conditionoperator= (Condition const &rOther)
 Assignment operator. More...
 
virtual Pointer Clone (IndexType NewId, NodesArrayType const &ThisNodes) const
 It creates a new condition pointer and clones the previous condition data. More...
 
virtual void GetValuesVector (Vector &values, int Step=0) const
 
virtual void GetFirstDerivativesVector (Vector &values, int Step=0) const
 
virtual void GetSecondDerivativesVector (Vector &values, int Step=0) const
 
virtual void ResetConstitutiveLaw ()
 
virtual void CalculateFirstDerivativesContributions (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateFirstDerivativesLHS (MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateFirstDerivativesRHS (VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateSecondDerivativesContributions (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateSecondDerivativesLHS (MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateSecondDerivativesRHS (VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
virtual void AddExplicitContribution (const MatrixType &rLHSMatrix, const Variable< MatrixType > &rLHSVariable, const Variable< Matrix > &rDestinationVariable, const ProcessInfo &rCurrentProcessInfo)
 This function is designed to make the condition to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable rDestinationVariable. (This is the matrix version) More...
 
virtual void Calculate (const Variable< double > &rVariable, double &Output, const ProcessInfo &rCurrentProcessInfo)
 
virtual void Calculate (const Variable< array_1d< double, 3 > > &rVariable, array_1d< double, 3 > &Output, const ProcessInfo &rCurrentProcessInfo)
 
virtual void Calculate (const Variable< Vector > &rVariable, Vector &Output, const ProcessInfo &rCurrentProcessInfo)
 
virtual void Calculate (const Variable< Matrix > &rVariable, Matrix &Output, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< bool > &rVariable, std::vector< bool > &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< int > &rVariable, std::vector< int > &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< array_1d< double, 3 >> &rVariable, std::vector< array_1d< double, 3 >> &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< array_1d< double, 4 >> &rVariable, std::vector< array_1d< double, 4 >> &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< array_1d< double, 6 >> &rVariable, std::vector< array_1d< double, 6 >> &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< array_1d< double, 9 >> &rVariable, std::vector< array_1d< double, 9 >> &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateOnIntegrationPoints (const Variable< Matrix > &rVariable, std::vector< Matrix > &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< bool > &rVariable, const std::vector< bool > &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< int > &rVariable, const std::vector< int > &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< double > &rVariable, const std::vector< double > &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< array_1d< double, 3 >> &rVariable, const std::vector< array_1d< double, 3 >> &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< array_1d< double, 4 >> &rVariable, const std::vector< array_1d< double, 4 >> &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< array_1d< double, 6 >> &rVariable, const std::vector< array_1d< double, 6 >> &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< array_1d< double, 9 >> &rVariable, const std::vector< array_1d< double, 9 >> &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< Vector > &rVariable, const std::vector< Vector > &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void SetValuesOnIntegrationPoints (const Variable< Matrix > &rVariable, const std::vector< Matrix > &rValues, const ProcessInfo &rCurrentProcessInfo)
 
virtual void MassMatrix (MatrixType &rMassMatrix, const ProcessInfo &rCurrentProcessInfo)
 
virtual void AddMassMatrix (MatrixType &rLeftHandSideMatrix, double coeff, const ProcessInfo &rCurrentProcessInfo)
 
virtual void DampMatrix (MatrixType &rDampMatrix, const ProcessInfo &rCurrentProcessInfo)
 
virtual void AddInertiaForces (VectorType &rRightHandSideVector, double coeff, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateLocalVelocityContribution (MatrixType &rDampingMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateSensitivityMatrix (const Variable< double > &rDesignVariable, Matrix &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
virtual void CalculateSensitivityMatrix (const Variable< array_1d< double, 3 > > &rDesignVariable, Matrix &rOutput, const ProcessInfo &rCurrentProcessInfo)
 
PropertiesType::Pointer pGetProperties ()
 returns the pointer to the property of the condition. Does not throw an error, to allow copying of conditions which don't have any property assigned. More...
 
const PropertiesType::Pointer pGetProperties () const
 
PropertiesTypeGetProperties ()
 
PropertiesType const & GetProperties () const
 
void SetProperties (PropertiesType::Pointer pProperties)
 
bool HasProperties () const
 Check that the Condition has a correctly initialized pointer to a Properties instance. More...
 
virtual const Parameters GetSpecifications () const
 This method provides the specifications/requirements of the element. More...
 
 KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (Condition)
 Pointer definition of Condition. More...
 
- Public Member Functions inherited from Kratos::GeometricalObject
 GeometricalObject (IndexType NewId=0)
 Default constructor. More...
 
 GeometricalObject (IndexType NewId, GeometryType::Pointer pGeometry)
 Default constructor. More...
 
 ~GeometricalObject () override
 Destructor. More...
 
 GeometricalObject (GeometricalObject const &rOther)
 Copy constructor. More...
 
GeometricalObjectoperator= (GeometricalObject const &rOther)
 Assignment operator. More...
 
virtual void SetGeometry (GeometryType::Pointer pGeometry)
 Sets the pointer to the geometry. More...
 
GeometryType::Pointer pGetGeometry ()
 Returns the pointer to the geometry. More...
 
const GeometryType::Pointer pGetGeometry () const
 Returns the pointer to the geometry (const version) More...
 
GeometryTypeGetGeometry ()
 Returns the reference of the geometry. More...
 
GeometryType const & GetGeometry () const
 Returns the reference of the geometry (const version) More...
 
FlagsGetFlags ()
 Returns the flags of the object. More...
 
Flags const & GetFlags () const
 Returns the flags of the object (const version) More...
 
void SetFlags (Flags const &rThisFlags)
 Sets the flags of the object. More...
 
DataValueContainerData ()
 
DataValueContainerGetData ()
 
DataValueContainer const & GetData () const
 
void SetData (DataValueContainer const &rThisData)
 
template<class TDataType >
bool Has (const Variable< TDataType > &rThisVariable) const
 
template<class TVariableType >
void SetValue (const TVariableType &rThisVariable, typename TVariableType::Type const &rValue)
 
template<class TVariableType >
TVariableType::Type & GetValue (const TVariableType &rThisVariable)
 
template<class TVariableType >
TVariableType::Type const & GetValue (const TVariableType &rThisVariable) const
 
unsigned int use_count () const noexcept
 
 KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (GeometricalObject)
 Pointer definition of GeometricalObject. More...
 
bool IsActive () const
 Checks if the GeometricalObject is active. More...
 
- Public Member Functions inherited from Kratos::IndexedObject
 IndexedObject (IndexType NewId=0)
 Default constructor. More...
 
virtual ~IndexedObject ()
 Destructor. More...
 
 IndexedObject (IndexedObject const &rOther)
 Copy constructor. More...
 
IndexedObjectoperator= (IndexedObject const &rOther)
 Assignment operator. More...
 
template<class TObjectType >
IndexType operator() (TObjectType const &rThisObject) const
 
IndexType Id () const
 
IndexType GetId () const
 
virtual void SetId (IndexType NewId)
 
IndexTypeDepricatedIdAccess ()
 TODO: remove this function when removing data_file_io object. More...
 
 KRATOS_CLASS_POINTER_DEFINITION (IndexedObject)
 Pointer definition of IndexedObject. More...
 
- Public Member Functions inherited from Kratos::Flags
Flagsoperator= (Flags const &rOther)
 Assignment operator. More...
 
 operator bool () const
 
Flags operator~ () const
 
bool operator! () const
 
void AssignFlags (Flags const &rOther)
 
void Set (const Flags ThisFlag)
 
void Set (const Flags ThisFlag, bool Value)
 
void Reset (const Flags ThisFlag)
 
void Flip (const Flags ThisFlag)
 
void SetPosition (IndexType Position, bool Value=true)
 
bool GetPosition (IndexType Position) const
 
void FlipPosition (IndexType Position)
 
void ClearPosition (IndexType Position)
 
void Clear ()
 
Flags AsFalse () const
 
bool Is (Flags const &rOther) const
 
bool IsDefined (Flags const &rOther) const
 
bool IsNot (Flags const &rOther) const
 
bool IsNotDefined (Flags const &rOther) const
 
 KRATOS_CLASS_POINTER_DEFINITION (Flags)
 Pointer definition of Flags. More...
 
const Flagsoperator|= (const Flags &Other)
 
const Flagsoperator&= (const Flags &Other)
 
 Flags ()
 Default constructor. More...
 
 Flags (Flags const &rOther)
 Copy constructor. More...
 
virtual ~Flags ()
 Destructor. More...
 

Protected Member Functions

Protected Operations
void CalculateLocalSystem (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) override
 This is called during the assembling process in order to calculate all condition contributions to the global system matrix and the right hand side. More...
 
void CalculateRightHandSide (VectorType &rRightHandSideVector, const ProcessInfo &rCurrentProcessInfo) override
 This is called during the assembling process in order to calculate the condition right hand side vector only. More...
 
void CalculateLeftHandSide (MatrixType &rLeftHandSideMatrix, const ProcessInfo &rCurrentProcessInfo) override
 This is called during the assembling process in order to calculate the condition left hand side matrix only. More...
 
void CalculateConditionSystem (MatrixType &rLeftHandSideMatrix, VectorType &rRightHandSideVector, const ProcessInfo &CurrentProcessInfo, const bool ComputeLHS=true, const bool ComputeRHS=true)
 Calculates the condition contribution. More...
 
virtual void CalculateLocalLHS (Matrix &rLocalLHS, const MortarConditionMatrices &rMortarConditionMatrices, const DerivativeDataType &rDerivativeData, const IndexType rActiveInactive, const ProcessInfo &rCurrentProcessInfo)
 Calculates the local contibution of the LHS. More...
 
virtual void CalculateLocalRHS (Vector &rLocalRHS, const MortarConditionMatrices &rMortarConditionMatrices, const DerivativeDataType &rDerivativeData, const IndexType rActiveInactive, const ProcessInfo &rCurrentProcessInfo)
 Calculates the local contibution of the RHS. More...
 
virtual IndexType GetActiveInactiveValue (const GeometryType &CurrentGeometry) const
 Returns a value depending of the active/inactive set. More...
 
bool CheckIsolatedElement (const double DeltaTime, const bool HalfJump=true)
 It checks if the element is isolated or not. More...
 
IntegrationMethod GetIntegrationMethod () const override
 It returns theintegration method considered. More...
 
virtual bool IsAxisymmetric () const
 This functions returns if the computation is axisymmetric or not. More...
 
virtual double GetAxisymmetricCoefficient (const GeneralVariables &rVariables) const
 This functions computes the integration weight to consider. More...
 
virtual void ResizeLHS (MatrixType &rLeftHandSideMatrix)
 This method just resizes the LHS matrix. More...
 
virtual void ResizeRHS (VectorType &rRightHandSideVector)
 
virtual void ZeroLHS (MatrixType &rLeftHandSideMatrix)
 
virtual void ZeroRHS (VectorType &rRightHandSideVector)
 

Type Definitions

using BaseType = PairedCondition
 Base class definitions. More...
 
using VectorType = typename BaseType::VectorType
 Vector type definition. More...
 
using MatrixType = typename BaseType::MatrixType
 Matrix type definition. More...
 
using IndexType = typename BaseType::IndexType
 Index type definition. More...
 
using GeometryPointerType = typename BaseType::GeometryType::Pointer
 Geometry pointer definition. More...
 
using NodesArrayType = typename BaseType::NodesArrayType
 Nodes array type definition. More...
 
using PropertiesPointerType = typename BaseType::PropertiesType::Pointer
 Properties pointer definition. More...
 
using PointType = Point
 Point definition. More...
 
using GeometryType = Geometry< Node >
 Geometry type definition. More...
 
using IntegrationPointsType = typename GeometryType::IntegrationPointsArrayType
 
using BelongType = typename std::conditional< TNumNodes==2, PointBelongsLine2D2N, typename std::conditional< TNumNodes==3, typename std::conditional< TNumNodesMaster==3, PointBelongsTriangle3D3N, PointBelongsTriangle3D3NQuadrilateral3D4N >::type, typename std::conditional< TNumNodesMaster==3, PointBelongsQuadrilateral3D4NTriangle3D3N, PointBelongsQuadrilateral3D4N >::type >::type >::type
 The type of points belongs to be considered. More...
 
using PointBelongType = PointBelong< TNumNodes, TNumNodesMaster >
 The definition of the point with belonging. More...
 
using GeometryPointBelongType = Geometry< PointBelongType >
 Type definition for the geometry with point belonging. More...
 
using ConditionArrayType = array_1d< PointBelongType, TDim >
 Type definition for an array of points with belonging. More...
 
using ConditionArrayListType = typename std::vector< ConditionArrayType >
 Type definition for a list of arrays of points with belonging. More...
 
using LineType = Line2D2< PointType >
 Type definition for a line in 2D. More...
 
using TriangleType = Triangle3D3< PointType >
 Type definition for a triangle in 3D. More...
 
using DecompositionType = typename std::conditional< TDim==2, LineType, TriangleType >::type
 The decomposition type. More...
 
using DerivativeDataType = typename std::conditional< TFrictional==FrictionalCase::FRICTIONAL||TFrictional==FrictionalCase::FRICTIONAL_PENALTY, DerivativeDataFrictional< TDim, TNumNodes, TNumNodesMaster >, DerivativeData< TDim, TNumNodes, TNumNodesMaster > >::type
 The derivative data type. More...
 
using GeneralVariables = MortarKinematicVariablesWithDerivatives< TDim, TNumNodes, TNumNodesMaster >
 Type definition for general variables with derivatives. More...
 
using AeData = DualLagrangeMultiplierOperatorsWithDerivatives< TDim, TNumNodes, IsFrictional, TNumNodesMaster >
 Type definition for AE data with derivatives. More...
 
using MortarConditionMatrices = MortarOperatorWithDerivatives< TDim, TNumNodes, IsFrictional, TNumNodesMaster >
 Type definition for mortar condition matrices with derivatives. More...
 
using IntegrationUtility = ExactMortarIntegrationUtility< TDim, TNumNodes, true, TNumNodesMaster >
 Type definition for integration utility with derivatives. More...
 
using DerivativesUtilitiesType = DerivativesUtilities< TDim, TNumNodes, IsFrictional, TNormalVariation, TNumNodesMaster >
 Type definition for derivatives utilities with derivatives. More...
 
static constexpr IndexType MatrixSize = (TFrictional == FrictionalCase::FRICTIONLESS) ? TDim * (TNumNodesMaster + TNumNodes) + TNumNodes : (TFrictional == FrictionalCase::FRICTIONLESS_COMPONENTS || TFrictional == FrictionalCase::FRICTIONAL) ? TDim * (TNumNodesMaster + TNumNodes + TNumNodes) : TDim * (TNumNodesMaster + TNumNodes)
 The matrix size definition. More...
 
static constexpr bool IsFrictional = (TFrictional == FrictionalCase::FRICTIONAL || TFrictional == FrictionalCase::FRICTIONAL_PENALTY) ? true: false
 The definition of the frictional flag. More...
 
static constexpr double CheckThresholdCoefficient = 1.0e-12
 
 KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (MortarContactCondition)
 Counted pointer of MortarContactCondition. More...
 

Un accessible methods

class Serializer
 

Additional Inherited Members

- Public Types inherited from Kratos::PairedCondition
using BaseType = Condition
 Basetype definition. More...
 
using PointType = Point
 Point type definition. More...
 
using GeometryType = Geometry< Node >
 Geometry type definition. More...
 
using CouplingGeometryType = CouplingGeometry< Node >
 Coupling geometry type definition. More...
 
using VectorType = BaseType::VectorType
 Vector type definition. More...
 
using MatrixType = BaseType::MatrixType
 Matrix type definition. More...
 
using IndexType = BaseType::IndexType
 Index type definition. More...
 
using GeometryPointerType = BaseType::GeometryType::Pointer
 Geometry pointer type definition. More...
 
using NodesArrayType = BaseType::NodesArrayType
 Nodes array type definition. More...
 
using PropertiesPointerType = BaseType::PropertiesType::Pointer
 Properties pointer type definition. More...
 
- Public Types inherited from Kratos::Condition
typedef Condition ConditionType
 definition of condition type More...
 
typedef GeometricalObject BaseType
 base type: an GeometricalObject that automatically has a unique number More...
 
typedef Node NodeType
 definition of node type (default is: Node) More...
 
typedef Properties PropertiesType
 
typedef Geometry< NodeTypeGeometryType
 definition of the geometry type with given NodeType More...
 
typedef Geometry< NodeType >::PointsArrayType NodesArrayType
 definition of nodes container type, redefined from GeometryType More...
 
typedef Vector VectorType
 
typedef Matrix MatrixType
 
typedef std::size_t IndexType
 
typedef std::size_t SizeType
 
typedef Dof< doubleDofType
 
typedef std::vector< std::size_t > EquationIdVectorType
 
typedef std::vector< DofType::PointerDofsVectorType
 
typedef PointerVectorSet< DofTypeDofsArrayType
 
typedef GeometryData::IntegrationMethod IntegrationMethod
 Type definition for integration methods. More...
 
typedef GeometryData GeometryDataType
 
- Public Types inherited from Kratos::GeometricalObject
typedef Node NodeType
 Definition of the node type. More...
 
typedef Geometry< NodeTypeGeometryType
 The geometry type definition. More...
 
typedef std::size_t IndexType
 Defines the index type. More...
 
typedef std::size_t result_type
 Defines the result type. More...
 
- Public Types inherited from Kratos::IndexedObject
typedef std::size_t IndexType
 The definition of the index type. More...
 
typedef std::size_t result_type
 The definition of the result_type. More...
 
- Public Types inherited from Kratos::Flags
enum  FlagsList {
  Flag0 = BlockType(1) , Flag1 = BlockType(1) << 1 , Flag2 = BlockType(1) << 2 , Flag3 = BlockType(1) << 3 ,
  Flag4 = BlockType(1) << 4 , Flag5 = BlockType(1) << 5 , Flag6 = BlockType(1) << 6 , Flag7 = BlockType(1) << 7 ,
  Flag8 = BlockType(1) << 8 , Flag9 = BlockType(1) << 9 , Flag10 = BlockType(1) << 10 , Flag11 = BlockType(1) << 11 ,
  Flag12 = BlockType(1) << 12 , Flag13 = BlockType(1) << 13 , Flag14 = BlockType(1) << 14 , Flag15 = BlockType(1) << 15 ,
  Flag16 = BlockType(1) << 16 , Flag17 = BlockType(1) << 17 , Flag18 = BlockType(1) << 18 , Flag19 = BlockType(1) << 19 ,
  Flag20 = BlockType(1) << 20 , Flag21 = BlockType(1) << 21 , Flag22 = BlockType(1) << 22 , Flag23 = BlockType(1) << 23 ,
  Flag24 = BlockType(1) << 24 , Flag25 = BlockType(1) << 25 , Flag26 = BlockType(1) << 26 , Flag27 = BlockType(1) << 27 ,
  Flag28 = BlockType(1) << 28 , Flag29 = BlockType(1) << 29 , Flag30 = BlockType(1) << 30
}
 
typedef int64_t BlockType
 
typedef int64_t FlagType
 
typedef std::size_t IndexType
 
- Static Public Member Functions inherited from Kratos::GeometricalObject
static bool HasSameType (const GeometricalObject &rLHS, const GeometricalObject &rRHS)
 Checks if two GeometricalObject have the same type. More...
 
static bool HasSameType (const GeometricalObject *rLHS, const GeometricalObject *rRHS)
 Checks if two GeometricalObject have the same type (pointer version) More...
 
static bool HasSameGeometryType (const GeometricalObject &rLHS, const GeometricalObject &rRHS)
 Checks if two GeometricalObject have the same geometry type. More...
 
static bool HasSameGeometryType (const GeometricalObject *rLHS, const GeometricalObject *rRHS)
 Checks if two GeometricalObject have the same geometry type (pointer version) More...
 
static bool IsSame (const GeometricalObject &rLHS, const GeometricalObject &rRHS)
 Checks if two GeometricalObject are the same. More...
 
static bool IsSame (const GeometricalObject *rLHS, const GeometricalObject *rRHS)
 Checks if two GeometricalObject are the same (pointer version) More...
 
- Static Public Member Functions inherited from Kratos::Flags
static const Flags AllDefined ()
 
static const Flags AllTrue ()
 
static Flags Create (IndexType ThisPosition, bool Value=true)
 

Detailed Description

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
class Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >

MortarContactCondition.

This is a contact condition which employes the mortar method with dual lagrange multiplier The method has been taken from the Alexander Popps thesis: Popp, Alexander: Mortar Methods for Computational Contact Mechanics and General Interface Problems, Technische Universität München, jul 2012

Author
Vicente Mataix Ferrandiz
Template Parameters
TDimThe dimension of work
TNumNodesThe number of nodes of the slave
TFrictionalIf we are solving a frictional or frictionless problem
TNormalVariationIf we are consider normal variation
TNumNodesMasterThe number of nodes of the master

Member Typedef Documentation

◆ AeData

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::AeData = DualLagrangeMultiplierOperatorsWithDerivatives<TDim, TNumNodes, IsFrictional, TNumNodesMaster>

Type definition for AE data with derivatives.

◆ BaseType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::BaseType = PairedCondition

Base class definitions.

◆ BelongType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::BelongType = typename std::conditional<TNumNodes == 2, PointBelongsLine2D2N, typename std::conditional<TNumNodes == 3, typename std::conditional<TNumNodesMaster == 3, PointBelongsTriangle3D3N, PointBelongsTriangle3D3NQuadrilateral3D4N>::type, typename std::conditional<TNumNodesMaster == 3, PointBelongsQuadrilateral3D4NTriangle3D3N, PointBelongsQuadrilateral3D4N>::type>::type>::type

The type of points belongs to be considered.

◆ ConditionArrayListType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::ConditionArrayListType = typename std::vector<ConditionArrayType>

Type definition for a list of arrays of points with belonging.

◆ ConditionArrayType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::ConditionArrayType = array_1d<PointBelongType, TDim>

Type definition for an array of points with belonging.

◆ DecompositionType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::DecompositionType = typename std::conditional<TDim == 2, LineType, TriangleType >::type

The decomposition type.

◆ DerivativeDataType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::DerivativeDataType = typename std::conditional<TFrictional == FrictionalCase::FRICTIONAL || TFrictional == FrictionalCase::FRICTIONAL_PENALTY, DerivativeDataFrictional<TDim, TNumNodes, TNumNodesMaster>, DerivativeData<TDim, TNumNodes, TNumNodesMaster> >::type

The derivative data type.

◆ DerivativesUtilitiesType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::DerivativesUtilitiesType = DerivativesUtilities<TDim, TNumNodes, IsFrictional, TNormalVariation, TNumNodesMaster>

Type definition for derivatives utilities with derivatives.

◆ GeneralVariables

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GeneralVariables = MortarKinematicVariablesWithDerivatives<TDim, TNumNodes, TNumNodesMaster>

Type definition for general variables with derivatives.

◆ GeometryPointBelongType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GeometryPointBelongType = Geometry<PointBelongType>

Type definition for the geometry with point belonging.

◆ GeometryPointerType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GeometryPointerType = typename BaseType::GeometryType::Pointer

Geometry pointer definition.

◆ GeometryType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GeometryType = Geometry<Node>

Geometry type definition.

◆ IndexType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::IndexType = typename BaseType::IndexType

Index type definition.

◆ IntegrationPointsType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::IntegrationPointsType = typename GeometryType::IntegrationPointsArrayType

◆ IntegrationUtility

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::IntegrationUtility = ExactMortarIntegrationUtility<TDim, TNumNodes, true, TNumNodesMaster>

Type definition for integration utility with derivatives.

◆ LineType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::LineType = Line2D2<PointType>

Type definition for a line in 2D.

◆ MatrixType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MatrixType = typename BaseType::MatrixType

Matrix type definition.

◆ MortarConditionMatrices

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MortarConditionMatrices = MortarOperatorWithDerivatives<TDim, TNumNodes, IsFrictional, TNumNodesMaster>

Type definition for mortar condition matrices with derivatives.

◆ NodesArrayType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::NodesArrayType = typename BaseType::NodesArrayType

Nodes array type definition.

◆ PointBelongType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::PointBelongType = PointBelong<TNumNodes, TNumNodesMaster>

The definition of the point with belonging.

◆ PointType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::PointType = Point

Point definition.

◆ PropertiesPointerType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::PropertiesPointerType = typename BaseType::PropertiesType::Pointer

Properties pointer definition.

◆ TriangleType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::TriangleType = Triangle3D3<PointType>

Type definition for a triangle in 3D.

◆ VectorType

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::VectorType = typename BaseType::VectorType

Vector type definition.

Constructor & Destructor Documentation

◆ MortarContactCondition() [1/5]

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MortarContactCondition ( )
inline

Default constructor.

◆ MortarContactCondition() [2/5]

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MortarContactCondition ( IndexType  NewId,
GeometryType::Pointer  pGeometry 
)
inline

◆ MortarContactCondition() [3/5]

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MortarContactCondition ( IndexType  NewId,
GeometryType::Pointer  pGeometry,
PropertiesType::Pointer  pProperties 
)
inline

◆ MortarContactCondition() [4/5]

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MortarContactCondition ( IndexType  NewId,
GeometryType::Pointer  pGeometry,
PropertiesType::Pointer  pProperties,
GeometryType::Pointer  pMasterGeometry 
)
inline

◆ MortarContactCondition() [5/5]

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MortarContactCondition ( MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster > const &  rOther)
inline

Copy constructor.

◆ ~MortarContactCondition()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::~MortarContactCondition ( )
overridedefault

Destructor.

Member Function Documentation

◆ AddExplicitContribution() [1/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::AddExplicitContribution ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

This is called during the assembling process in order to calculate the condition contribution in explicit calculation.

NodalData is modified Inside the function, so the the "AddEXplicit" FUNCTIONS THE ONLY FUNCTIONS IN WHICH A CONDITION IS ALLOWED TO WRITE ON ITS NODES. The caller is expected to ensure thread safety hence SET/UNSETLOCK MUST BE PERFORMED IN THE STRATEGY BEFORE CALLING THIS FUNCTION

Parameters
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ AddExplicitContribution() [2/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::AddExplicitContribution ( const VectorType rRHSVector,
const Variable< VectorType > &  rRHSVariable,
const Variable< array_1d< double, 3 > > &  rDestinationVariable,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

This function is designed to make the element to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable (array_1d<double, 3>) version rDestinationVariable.

The "AddEXplicit" FUNCTIONS THE ONLY FUNCTIONS IN WHICH AN ELEMENT IS ALLOWED TO WRITE ON ITS NODES. The caller is expected to ensure thread safety hence SET/UNSETLOCK MUST BE PERFORMED IN THE STRATEGY BEFORE CALLING THIS FUNCTION

Parameters
rRHSVectorinput variable containing the RHS vector to be assembled
rRHSVariablevariable describing the type of the RHS vector to be assembled
rDestinationVariablevariable in the database to which the rRHSVector will be assembled
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, and Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >.

◆ AddExplicitContribution() [3/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::AddExplicitContribution ( const VectorType rRHSVector,
const Variable< VectorType > &  rRHSVariable,
const Variable< double > &  rDestinationVariable,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

This function is designed to make the element to assemble an rRHS vector identified by a variable rRHSVariable by assembling it to the nodes on the variable rDestinationVariable (double version)

The "AddEXplicit" FUNCTIONS THE ONLY FUNCTIONS IN WHICH AN ELEMENT IS ALLOWED TO WRITE ON ITS NODES. The caller is expected to ensure thread safety hence SET/UNSETLOCK MUST BE PERFORMED IN THE STRATEGY BEFORE CALLING THIS FUNCTION

Parameters
rRHSVectorinput variable containing the RHS vector to be assembled
rRHSVariablevariable describing the type of the RHS vector to be assembled
rDestinationVariablevariable in the database to which the rRHSVector will be assembled
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, and Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >.

◆ CalculateConditionSystem()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateConditionSystem ( MatrixType rLeftHandSideMatrix,
VectorType rRightHandSideVector,
const ProcessInfo CurrentProcessInfo,
const bool  ComputeLHS = true,
const bool  ComputeRHS = true 
)
protected

Calculates the condition contribution.

◆ CalculateDampingMatrix()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateDampingMatrix ( MatrixType rDampingMatrix,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

Initialize Damping Matrix.

Parameters
rDampingMatrixThe damping matrix to be computed
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ CalculateLeftHandSide()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateLeftHandSide ( MatrixType rLeftHandSideMatrix,
const ProcessInfo rCurrentProcessInfo 
)
overrideprotectedvirtual

This is called during the assembling process in order to calculate the condition left hand side matrix only.

Parameters
rLeftHandSideMatrixthe condition left hand side matrix
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ CalculateLocalLHS()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateLocalLHS ( Matrix rLocalLHS,
const MortarConditionMatrices rMortarConditionMatrices,
const DerivativeDataType rDerivativeData,
const IndexType  rActiveInactive,
const ProcessInfo rCurrentProcessInfo 
)
protectedvirtual

Calculates the local contibution of the LHS.

Parameters
rLocalLHSThe local LHS to compute
rMortarConditionMatricesThe mortar operators to be considered
rDerivativeDataThe class containing all the derivatives uses to compute the jacobian
rActiveInactiveThe integer that is used to identify which case is the currectly computed

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ CalculateLocalRHS()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateLocalRHS ( Vector rLocalRHS,
const MortarConditionMatrices rMortarConditionMatrices,
const DerivativeDataType rDerivativeData,
const IndexType  rActiveInactive,
const ProcessInfo rCurrentProcessInfo 
)
protectedvirtual

Calculates the local contibution of the RHS.

Parameters
rLocalRHSThe local RHS to compute
rMortarConditionMatricesThe mortar operators to be considered
rDerivativeDataThe class containing all the derivatives uses to compute the jacobian
rActiveInactiveThe integer that is used to identify which case is the currectly computed

◆ CalculateLocalSystem()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateLocalSystem ( MatrixType rLeftHandSideMatrix,
VectorType rRightHandSideVector,
const ProcessInfo rCurrentProcessInfo 
)
overrideprotectedvirtual

This is called during the assembling process in order to calculate all condition contributions to the global system matrix and the right hand side.

Parameters
rLeftHandSideMatrixthe condition left hand side matrix
rRightHandSideVectorthe condition right hand side
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ CalculateMassMatrix()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateMassMatrix ( MatrixType rMassMatrix,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

This method computes the mass matrix.

Parameters
rMassMatrixThe mass matrix to be computed
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ CalculateOnIntegrationPoints() [1/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateOnIntegrationPoints ( const Variable< array_1d< double, 3 > > &  rVariable,
std::vector< array_1d< double, 3 > > &  rOutput,
const ProcessInfo rCurrentProcessInfo 
)
override

Calculate a array_1d Variable.

Parameters
rVariableInternal values
rCurrentProcessInfoThe current process information
rOutputThe values of interest (array_1d)

◆ CalculateOnIntegrationPoints() [2/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateOnIntegrationPoints ( const Variable< double > &  rVariable,
std::vector< double > &  rOutput,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

Calculate a double Variable.

Parameters
rVariableInternal values
rCurrentProcessInfoThe current process information
rOutputThe values of interest (doubles)

Reimplemented from Kratos::Condition.

◆ CalculateOnIntegrationPoints() [3/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateOnIntegrationPoints ( const Variable< Vector > &  rVariable,
std::vector< Vector > &  rOutput,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

Calculate a Vector Variable.

Parameters
rVariableInternal values
rCurrentProcessInfoThe current process information
rOutputThe values of interest (vector)

Reimplemented from Kratos::Condition.

◆ CalculateRightHandSide()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CalculateRightHandSide ( VectorType rRightHandSideVector,
const ProcessInfo rCurrentProcessInfo 
)
overrideprotectedvirtual

This is called during the assembling process in order to calculate the condition right hand side vector only.

Parameters
rRightHandSideVectorthe condition right hand side vector
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ Check()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
int Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::Check ( const ProcessInfo rCurrentProcessInfo) const
overridevirtual

This function provides the place to perform checks on the completeness of the input.

It is designed to be called only once (or anyway, not often) typically at the beginning of the calculations, so to verify that nothing is missing from the input or that no common error is found.

Parameters
rCurrentProcessInfoThe current process information

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ CheckIsolatedElement()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
bool Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CheckIsolatedElement ( const double  DeltaTime,
const bool  HalfJump = true 
)
protected

It checks if the element is isolated or not.

Parameters
DeltaTimeThe increment of time in each time step
HalfJumpIf the increment of time considered is just half or the whole time step

◆ Create() [1/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
Condition::Pointer Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::Create ( IndexType  NewId,
GeometryType::Pointer  pGeom,
PropertiesType::Pointer  pProperties 
) const
overridevirtual

Creates a new element pointer from an existing geometry.

Parameters
NewIdthe ID of the new element
pGeomthe geometry taken to create the condition
pPropertiesthe properties assigned to the new element
Returns
a Pointer to the new element

Reimplemented from Kratos::Condition.

◆ Create() [2/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
Condition::Pointer Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::Create ( IndexType  NewId,
GeometryType::Pointer  pGeom,
PropertiesType::Pointer  pProperties,
GeometryType::Pointer  pMasterGeom 
) const
overridevirtual

Creates a new element pointer from an existing geometry.

Parameters
NewIdthe ID of the new element
pGeomthe geometry taken to create the condition
pPropertiesthe properties assigned to the new element
pMasterGeomthe paired geometry
Returns
a Pointer to the new element

Reimplemented from Kratos::PairedCondition.

◆ Create() [3/3]

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
Condition::Pointer Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::Create ( IndexType  NewId,
NodesArrayType const &  rThisNodes,
PropertiesType::Pointer  pProperties 
) const
overridevirtual

Creates a new element pointer from an arry of nodes.

Parameters
NewIdthe ID of the new element
rThisNodesthe nodes of the new element
pPropertiesthe properties assigned to the new element
Returns
a Pointer to the new element

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ EquationIdVector()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::EquationIdVector ( EquationIdVectorType rResult,
const ProcessInfo rCurrentProcessInfo 
) const
overridevirtual

Sets on rResult the ID's of the element degrees of freedom.

Parameters
rResultThe result vector with the ID's of the DOF
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ FinalizeNonLinearIteration()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::FinalizeNonLinearIteration ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the end of each iteration.

Parameters
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ FinalizeSolutionStep()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::FinalizeSolutionStep ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the ending of each solution step.

Parameters
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ GetActiveInactiveValue()

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
virtual IndexType Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GetActiveInactiveValue ( const GeometryType CurrentGeometry) const
inlineprotectedvirtual

Returns a value depending of the active/inactive set.

Parameters
CurrentGeometryThe geometry containing the nodes that are needed to be checked as active or inactive
Returns
The integer that can be used to identify the case to compute

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< TDim, TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< TDim, TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< TDim, TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< TDim, TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 2, 2, true >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< TDim, TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 2, 2, true >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 2, 2, false >.

◆ GetAxisymmetricCoefficient()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
double Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GetAxisymmetricCoefficient ( const GeneralVariables rVariables) const
protectedvirtual

◆ GetDofList()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GetDofList ( DofsVectorType rConditionalDofList,
const ProcessInfo rCurrentProcessInfo 
) const
overridevirtual

Sets on ConditionalDofList the degrees of freedom of the considered element geometry.

Parameters
rConditionalDofListThe list of DoF
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ GetIntegrationMethod()

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
IntegrationMethod Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::GetIntegrationMethod ( ) const
inlineoverrideprotectedvirtual

It returns theintegration method considered.

Reimplemented from Kratos::Condition.

◆ Info()

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
std::string Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactAxisymCondition< 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactAxisymCondition< 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< 2, true >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ Initialize()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::Initialize ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the beginning of each solution step.

Parameters
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ InitializeNonLinearIteration()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::InitializeNonLinearIteration ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the beginning of each iteration.

Parameters
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ InitializeSolutionStep()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::InitializeSolutionStep ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the beginning of each solution step.

Parameters
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ IsAxisymmetric()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
bool Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::IsAxisymmetric
protectedvirtual

◆ KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION()

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION ( MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >  )

Counted pointer of MortarContactCondition.

◆ PrintData()

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::PrintData ( std::ostream &  rOStream) const
inlineoverridevirtual

Print object's data.

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactAxisymCondition< 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactAxisymCondition< 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< 2, true >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ PrintInfo()

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::PrintInfo ( std::ostream &  rOStream) const
inlineoverridevirtual

Print information about this object.

Reimplemented from Kratos::Condition.

Reimplemented in Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, TNumNodes, TNormalVariation >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionlessMortarContactAxisymCondition< 2, true >, Kratos::PenaltyMethodFrictionlessMortarContactAxisymCondition< 2, false >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, TNumNodes, TNormalVariation, TNumNodes >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 3, 3, false, 4 >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, true >, Kratos::PenaltyMethodFrictionalMortarContactCondition< 2, 2, false >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< TNumNodes, TNormalVariation, TNumNodesMaster >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< 2, true >, Kratos::PenaltyMethodFrictionalMortarContactAxisymCondition< 2, false >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionlessComponentsMortarContactCondition< 3, 3, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, true, 4 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 4, false, 3 >, Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, true, 4 >, and Kratos::AugmentedLagrangianMethodFrictionalMortarContactCondition< 3, 3, false, 4 >.

◆ ResizeLHS()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::ResizeLHS ( MatrixType rLeftHandSideMatrix)
protectedvirtual

This method just resizes the LHS matrix.

Parameters
rLeftHandSideMatrixThe LHS matrix

◆ ResizeRHS()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::ResizeRHS ( VectorType rRightHandSideVector)
protectedvirtual

This method just resizes the RHS vector

Parameters
rRightHandSideVectorThe RHS vector

◆ ZeroLHS()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::ZeroLHS ( MatrixType rLeftHandSideMatrix)
protectedvirtual

This method just sets as zero the LHS matrix

Parameters
rLeftHandSideMatrixThe LHS matrix

◆ ZeroRHS()

template<SizeType TDim, SizeType TNumNodes, FrictionalCase TFrictional, bool TNormalVariation, SizeType TNumNodesMaster>
void Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::ZeroRHS ( VectorType rRightHandSideVector)
protectedvirtual

This method just sets as zero the RHS vector

Parameters
rRightHandSideVectorThe RHS vector

Friends And Related Function Documentation

◆ Serializer

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
friend class Serializer
friend

Member Data Documentation

◆ CheckThresholdCoefficient

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
constexpr double Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::CheckThresholdCoefficient = 1.0e-12
staticconstexpr

◆ IsFrictional

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
constexpr bool Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::IsFrictional = (TFrictional == FrictionalCase::FRICTIONAL || TFrictional == FrictionalCase::FRICTIONAL_PENALTY) ? true: false
staticconstexpr

The definition of the frictional flag.

◆ MatrixSize

template<const SizeType TDim, const SizeType TNumNodes, const FrictionalCase TFrictional, const bool TNormalVariation, const SizeType TNumNodesMaster = TNumNodes>
constexpr IndexType Kratos::MortarContactCondition< TDim, TNumNodes, TFrictional, TNormalVariation, TNumNodesMaster >::MatrixSize = (TFrictional == FrictionalCase::FRICTIONLESS) ? TDim * (TNumNodesMaster + TNumNodes) + TNumNodes : (TFrictional == FrictionalCase::FRICTIONLESS_COMPONENTS || TFrictional == FrictionalCase::FRICTIONAL) ? TDim * (TNumNodesMaster + TNumNodes + TNumNodes) : TDim * (TNumNodesMaster + TNumNodes)
staticconstexpr

The matrix size definition.


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