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.
Classes | List of all members
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster > Class Template Reference

MeshTyingMortarCondition. More...

#include <mesh_tying_mortar_condition.h>

Inheritance diagram for Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >:
Collaboration diagram for Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >:

Classes

struct  DofData
 

Public Member Functions

Life Cycle
 MeshTyingMortarCondition ()
 Default constructor. More...
 
 MeshTyingMortarCondition (IndexType NewId, GeometryType::Pointer pGeometry)
 
 MeshTyingMortarCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties)
 
 MeshTyingMortarCondition (IndexType NewId, GeometryType::Pointer pGeometry, PropertiesType::Pointer pProperties, GeometryType::Pointer pMasterGeometry)
 
 MeshTyingMortarCondition (MeshTyingMortarCondition const &rOther)
 Copy constructor. More...
 
 ~MeshTyingMortarCondition () 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
 Initialize 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 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 ProcessInfo &rCurrentProcessInfo)
 
virtual void AddExplicitContribution (const VectorType &rRHSVector, const Variable< VectorType > &rRHSVariable, const Variable< double > &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 double version) More...
 
virtual void AddExplicitContribution (const VectorType &rRHSVector, const Variable< VectorType > &rRHSVariable, const Variable< array_1d< double, 3 > > &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 vector version) More...
 
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, 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 &rCurrentProcessInfo, const bool ComputeLHS=true, const bool ComputeRHS=true)
 Calculates the condition contribution. More...
 
void InitializeDofData (DofData &rDofData)
 Initializes the DofData object. More...
 
bool CalculateAe (const array_1d< double, 3 > &rNormalMaster, MatrixDualLM &rAe, GeneralVariables &rVariables, const ConditionArrayListType &rConditionsPointsSlave, const IntegrationMethod ThisIntegrationMethod)
 Calculate Ae matrix. More...
 
void CalculateKinematics (GeneralVariables &rVariables, const MatrixDualLM &rAe, const array_1d< double, 3 > &rNormalMaster, const PointType &rLocalPointDecomp, const PointType &rLocalPointParent, const GeometryPointType &rGeometryDecomp, const bool DualLM=false)
 Calculate condition kinematics. More...
 
void CalculateLocalLHS (Matrix &rLocalLHS, const MortarConditionMatrices &rMortarConditionMatrices, const DofData &rDofData, const ProcessInfo &rCurrentProcessInfo)
 Calculates the local contibution of the LHS. More...
 
void CalculateLocalRHS (Vector &rLocalRHS, const MortarConditionMatrices &rMortarConditionMatrices, const DofData &rDofData, const ProcessInfo &rCurrentProcessInfo)
 Calculates the local contibution of the LHS. More...
 
void MasterShapeFunctionValue (GeneralVariables &rVariables, const array_1d< double, 3 > &rNormalMaster, const PointType &rLocalPoint)
 Calculates the values of the shape functions for the master element. More...
 
IntegrationMethod GetIntegrationMethod () const override
 It returns theintegration method considered. More...
 

Protected Attributes

Protected member Variables
MortarConditionMatrices mMortarConditionMatrices
 
std::vector< const Variable< double > * > mpDoFVariables
 The mortar operators. More...
 
std::vector< const Variable< double > * > mpLMVariables
 The list of DoF variables. More...
 

Type Definitions

using BaseType = PairedCondition
 Base class definitions. More...
 
using VectorType = typename BaseType::VectorType
 Type definition for the vector used in the condition. More...
 
using MatrixType = typename BaseType::MatrixType
 Type definition for the matrix used in the condition. More...
 
using IndexType = typename BaseType::IndexType
 Type definition for the index used in the condition. More...
 
using GeometryPointerType = typename BaseType::GeometryType::Pointer
 Type definition for the pointer to the geometry used in the condition. More...
 
using NodesArrayType = typename BaseType::NodesArrayType
 Type definition for the array of nodes used in the condition. More...
 
using PropertiesPointerType = typename BaseType::PropertiesType::Pointer
 Type definition for the pointer to the properties used in the condition. More...
 
using PointType = Point
 Definition of a point. More...
 
using GeometryType = Geometry< Node >
 Definition of the geometry type. More...
 
using IntegrationPointsType = typename GeometryType::IntegrationPointsArrayType
 Type definition for the integration points in the geometry. More...
 
using ConditionArrayListType = typename std::vector< array_1d< PointType, TDim > >
 Type definition for the array list of conditions with points. More...
 
using LineType = Line2D2< Point >
 Line type definition. More...
 
using TriangleType = Triangle3D3< Point >
 Triangle type definition. More...
 
using DecompositionType = typename std::conditional< TDim==2, LineType, TriangleType >::type
 Type definition for the decomposition based on dimension. More...
 
using MatrixDualLM = BoundedMatrix< double, TNumNodes, TNumNodes >
 Type definition for the matrix used for dual Lagrange multipliers. More...
 
using GeneralVariables = MortarKinematicVariables< TNumNodes, TNumNodesMaster >
 Type definition for general kinematic variables of the mortar condition. More...
 
using AeData = DualLagrangeMultiplierOperators< TNumNodes, TNumNodesMaster >
 Type definition for the operators of dual Lagrange multipliers. More...
 
using MortarConditionMatrices = MortarOperator< TNumNodes, TNumNodesMaster >
 Type definition for the mortar condition matrices. More...
 
using IntegrationUtility = ExactMortarIntegrationUtility< TDim, TNumNodes, false, TNumNodesMaster >
 Type definition for the integration utility of the mortar condition. More...
 
static constexpr double CheckThresholdCoefficient = 1.0e-12
 
 KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION (MeshTyingMortarCondition)
 Counted pointer of MeshTyingMortarCondition. 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 SizeType TNumNodesMaster = TNumNodes>
class Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >

MeshTyingMortarCondition.

This is a mesh tying 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
TNumNodesMasterThe number of nodes of the master

Member Typedef Documentation

◆ AeData

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::AeData = DualLagrangeMultiplierOperators<TNumNodes, TNumNodesMaster>

Type definition for the operators of dual Lagrange multipliers.

◆ BaseType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::BaseType = PairedCondition

Base class definitions.

◆ ConditionArrayListType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::ConditionArrayListType = typename std::vector<array_1d<PointType, TDim> >

Type definition for the array list of conditions with points.

◆ DecompositionType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::DecompositionType = typename std::conditional<TDim == 2, LineType, TriangleType>::type

Type definition for the decomposition based on dimension.

◆ GeneralVariables

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::GeneralVariables = MortarKinematicVariables<TNumNodes, TNumNodesMaster>

Type definition for general kinematic variables of the mortar condition.

◆ GeometryPointerType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::GeometryPointerType = typename BaseType::GeometryType::Pointer

Type definition for the pointer to the geometry used in the condition.

◆ GeometryType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::GeometryType = Geometry<Node>

Definition of the geometry type.

◆ IndexType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::IndexType = typename BaseType::IndexType

Type definition for the index used in the condition.

◆ IntegrationPointsType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::IntegrationPointsType = typename GeometryType::IntegrationPointsArrayType

Type definition for the integration points in the geometry.

◆ IntegrationUtility

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::IntegrationUtility = ExactMortarIntegrationUtility<TDim, TNumNodes, false, TNumNodesMaster>

Type definition for the integration utility of the mortar condition.

◆ LineType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::LineType = Line2D2<Point>

Line type definition.

◆ MatrixDualLM

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MatrixDualLM = BoundedMatrix<double, TNumNodes, TNumNodes>

Type definition for the matrix used for dual Lagrange multipliers.

◆ MatrixType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MatrixType = typename BaseType::MatrixType

Type definition for the matrix used in the condition.

◆ MortarConditionMatrices

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MortarConditionMatrices = MortarOperator<TNumNodes, TNumNodesMaster>

Type definition for the mortar condition matrices.

◆ NodesArrayType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::NodesArrayType = typename BaseType::NodesArrayType

Type definition for the array of nodes used in the condition.

◆ PointType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::PointType = Point

Definition of a point.

◆ PropertiesPointerType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::PropertiesPointerType = typename BaseType::PropertiesType::Pointer

Type definition for the pointer to the properties used in the condition.

◆ TriangleType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::TriangleType = Triangle3D3<Point>

Triangle type definition.

◆ VectorType

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
using Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::VectorType = typename BaseType::VectorType

Type definition for the vector used in the condition.

Constructor & Destructor Documentation

◆ MeshTyingMortarCondition() [1/5]

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MeshTyingMortarCondition ( )
inline

Default constructor.

◆ MeshTyingMortarCondition() [2/5]

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MeshTyingMortarCondition ( IndexType  NewId,
GeometryType::Pointer  pGeometry 
)
inline

◆ MeshTyingMortarCondition() [3/5]

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MeshTyingMortarCondition ( IndexType  NewId,
GeometryType::Pointer  pGeometry,
PropertiesType::Pointer  pProperties 
)
inline

◆ MeshTyingMortarCondition() [4/5]

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MeshTyingMortarCondition ( IndexType  NewId,
GeometryType::Pointer  pGeometry,
PropertiesType::Pointer  pProperties,
GeometryType::Pointer  pMasterGeometry 
)
inline

◆ MeshTyingMortarCondition() [5/5]

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MeshTyingMortarCondition ( MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster > const &  rOther)
inline

Copy constructor.

◆ ~MeshTyingMortarCondition()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::~MeshTyingMortarCondition ( )
overridedefault

Destructor.

Member Function Documentation

◆ CalculateAe()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
bool Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateAe ( const array_1d< double, 3 > &  rNormalMaster,
MatrixDualLM rAe,
GeneralVariables rVariables,
const ConditionArrayListType rConditionsPointsSlave,
const IntegrationMethod  ThisIntegrationMethod 
)
protected

Calculate Ae matrix.

Parameters
rNormalMasterThe master normal
rAeThe Ae matrix
rVariablesThe variables
rConditionsPointsSlaveThe conditions points slave
ThisIntegrationMethodThe integration method

◆ CalculateConditionSystem()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateConditionSystem ( MatrixType rLeftHandSideMatrix,
VectorType rRightHandSideVector,
const ProcessInfo rCurrentProcessInfo,
const bool  ComputeLHS = true,
const bool  ComputeRHS = true 
)
protected

Calculates the condition contribution.

Parameters
rLeftHandSideMatrixthe condition left hand side matrix
rRightHandSideVectorthe condition right hand side
rCurrentProcessInfothe current process info instance
ComputeLHSwhether to compute the left hand side
ComputeRHSwhether to compute the right hand side

◆ CalculateDampingMatrix()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateDampingMatrix ( MatrixType rDampingMatrix,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

Initialize Damping Matrix.

Parameters
rDampingMatrixThe damping matrix
rCurrentProcessInfoThe current process info

Reimplemented from Kratos::Condition.

◆ CalculateKinematics()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateKinematics ( GeneralVariables rVariables,
const MatrixDualLM rAe,
const array_1d< double, 3 > &  rNormalMaster,
const PointType rLocalPointDecomp,
const PointType rLocalPointParent,
const GeometryPointType rGeometryDecomp,
const bool  DualLM = false 
)
protected

Calculate condition kinematics.

Parameters
rVariablesThe variables
rAeThe Ae matrix
rNormalMasterThe master normal
rLocalPointDecompThe local point decomposition
rLocalPointParentThe local point parent
rGeometryDecompThe geometry decomposition
rDualLMThe dual LM flag

SLAVE CONDITION ///

MASTER CONDITION ///

◆ CalculateLeftHandSide()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateLocalLHS ( Matrix rLocalLHS,
const MortarConditionMatrices rMortarConditionMatrices,
const DofData rDofData,
const ProcessInfo rCurrentProcessInfo 
)
protected

Calculates the local contibution of the LHS.

Parameters
rLocalLHSThe local LHS to compute
rMortarConditionMatricesThe mortar operators to be considered
rDofDataThe class containing all the information needed in order to compute the jacobian
rCurrentProcessInfothe current process info instance

◆ CalculateLocalRHS()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateLocalRHS ( Vector rLocalRHS,
const MortarConditionMatrices rMortarConditionMatrices,
const DofData rDofData,
const ProcessInfo rCurrentProcessInfo 
)
protected

Calculates the local contibution of the LHS.

Parameters
rLocalRHSThe local RHS to compute
rMortarConditionMatricesThe mortar operators to be considered
rDofDataThe class containing all the information needed in order to compute the jacobian
rCurrentProcessInfothe current process info instance

◆ CalculateLocalSystem()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateMassMatrix ( MatrixType rMassMatrix,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

Initialize Mass Matrix.

Parameters
rMassMatrixThe mass matrix
rCurrentProcessInfoThe current process info

Reimplemented from Kratos::Condition.

◆ CalculateOnIntegrationPoints() [1/3]

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CalculateOnIntegrationPoints ( const Variable< array_1d< double, 3 >> &  rVariable,
std::vector< array_1d< double, 3 >> &  rOutput,
const ProcessInfo rCurrentProcessInfo 
)
overridevirtual

Calculate a array_1d Variable.

Parameters
rVariableThe variable to calculate
rOutputThe output variable
rCurrentProcessInfoThe current process info

Reimplemented from Kratos::Condition.

◆ CalculateOnIntegrationPoints() [2/3]

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

Calculate a double Variable.

Parameters
rVariableThe variable to calculate
rOutputThe output variable
rCurrentProcessInfoThe current process info

Reimplemented from Kratos::Condition.

◆ CalculateOnIntegrationPoints() [3/3]

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

Calculate a Vector Variable.

Parameters
rVariableThe variable to calculate
rOutputThe output variable
rCurrentProcessInfoThe current process info

Reimplemented from Kratos::Condition.

◆ CalculateRightHandSide()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
int Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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.

◆ Create() [1/3]

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
Condition::Pointer Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
Condition::Pointer Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
Condition::Pointer Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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.

◆ EquationIdVector()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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.

◆ FinalizeNonLinearIteration()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::FinalizeSolutionStep ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the ending of each solution step.

Parameters
rCurrentProcessInfoThe current process info instance

Reimplemented from Kratos::Condition.

◆ GetDofList()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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 DOFs
rCurrentProcessInfothe current process info instance

Reimplemented from Kratos::Condition.

◆ GetIntegrationMethod()

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
IntegrationMethod Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::GetIntegrationMethod ( ) const
inlineoverrideprotectedvirtual

It returns theintegration method considered.

Returns
The integration method

Reimplemented from Kratos::Condition.

◆ Info()

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
std::string Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::Info ( ) const
inlineoverridevirtual

Turn back information as a string.

Reimplemented from Kratos::Condition.

◆ Initialize()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::Initialize ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the beginning of each solution step.

Reimplemented from Kratos::Condition.

◆ InitializeDofData()

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::InitializeDofData ( DofData rDofData)
inlineprotected

Initializes the DofData object.

Parameters
rDofDatathe DofData object to be initialized
Template Parameters
TTensorThe type of the DoF variables

◆ InitializeNonLinearIteration()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, 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, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::InitializeSolutionStep ( const ProcessInfo rCurrentProcessInfo)
overridevirtual

Called at the beginning of each solution step.

Parameters
rCurrentProcessInfoThe current process info instance

Reimplemented from Kratos::Condition.

◆ KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION()

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::KRATOS_CLASS_INTRUSIVE_POINTER_DEFINITION ( MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >  )

Counted pointer of MeshTyingMortarCondition.

◆ MasterShapeFunctionValue()

template<SizeType TDim, SizeType TNumNodes, SizeType TNumNodesMaster>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::MasterShapeFunctionValue ( GeneralVariables rVariables,
const array_1d< double, 3 > &  rNormalMaster,
const PointType rLocalPoint 
)
protected

Calculates the values of the shape functions for the master element.

Parameters
rVariablesThe variables
rNormalMasterThe master normal
rLocalPointThe local point

◆ PrintData()

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::PrintData ( std::ostream &  rOStream) const
inlineoverridevirtual

Print object's data.

Reimplemented from Kratos::Condition.

◆ PrintInfo()

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
void Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::PrintInfo ( std::ostream &  rOStream) const
inlineoverridevirtual

Print information about this object.

Reimplemented from Kratos::Condition.

Friends And Related Function Documentation

◆ Serializer

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
friend class Serializer
friend

Member Data Documentation

◆ CheckThresholdCoefficient

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
constexpr double Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::CheckThresholdCoefficient = 1.0e-12
staticconstexpr

◆ mMortarConditionMatrices

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
MortarConditionMatrices Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::mMortarConditionMatrices
protected

◆ mpDoFVariables

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
std::vector<const Variable<double>*> Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::mpDoFVariables
protected

The mortar operators.

◆ mpLMVariables

template<const SizeType TDim, const SizeType TNumNodes, const SizeType TNumNodesMaster = TNumNodes>
std::vector<const Variable<double>*> Kratos::MeshTyingMortarCondition< TDim, TNumNodes, TNumNodesMaster >::mpLMVariables
protected

The list of DoF variables.


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