9 #if !defined(KRATOS_BEAM_POINT_RIGID_CONTACT_CONDITION_H_INCLUDED )
10 #define KRATOS_BEAM_POINT_RIGID_CONTACT_CONDITION_H_INCLUDED
17 #include "boost/smart_ptr.hpp"
142 std::vector<MatrixType> *mpLeftHandSideMatrices;
143 std::vector<VectorType> *mpRightHandSideVectors;
146 const std::vector< Variable< MatrixType > > *mpLeftHandSideVariables;
149 const std::vector< Variable< VectorType > > *mpRightHandSideVariables;
161 void SetLeftHandSideMatrices( std::vector<MatrixType>& rLeftHandSideMatrices ) { mpLeftHandSideMatrices = &rLeftHandSideMatrices; };
165 void SetRightHandSideVectors( std::vector<VectorType>& rRightHandSideVectors ) { mpRightHandSideVectors = &rRightHandSideVectors; };
221 PropertiesType::Pointer pProperties )
const;
231 Condition::Pointer Clone(
IndexType NewId,
241 void InitializeNonLinearIteration(
ProcessInfo& rCurrentProcessInfo);
247 void FinalizeNonLinearIteration(
ProcessInfo& rCurrentProcessInfo);
259 void FinalizeSolutionStep(
ProcessInfo& rCurrentProcessInfo);
267 void GetDofList(DofsVectorType& rConditionDofList,
273 void EquationIdVector(EquationIdVectorType& rResult,
279 void GetValuesVector(
Vector& rValues,
285 void GetFirstDerivativesVector(
Vector& rValues,
291 void GetSecondDerivativesVector(
Vector& rValues,
305 void CalculateLocalSystem(
MatrixType& rLeftHandSideMatrix,
319 void CalculateLocalSystem(std::vector< MatrixType >& rLeftHandSideMatrices,
321 std::vector< VectorType >& rRightHandSideVectors,
331 void CalculateRightHandSide(
VectorType& rRightHandSideVector,
342 void CalculateRightHandSide(std::vector< VectorType >& rRightHandSideVectors,
352 void CalculateMassMatrix(
362 void CalculateDampingMatrix(
376 virtual void AddExplicitContribution(
const VectorType& rRHSVector,
390 virtual int Check(
const ProcessInfo& rCurrentProcessInfo );
444 void ClearNodalForces ();
451 virtual void InitializeSystemMatrices(
MatrixType& rLeftHandSideMatrix,
453 Flags& rCalculationFlags);
466 const double& rPointNumber);
471 virtual double& CalculateIntegrationWeight(
double& rIntegrationWeight);
486 double& rIntegrationWeight);
493 double& rIntegrationWeight);
499 virtual void CalculateAndAddKuug(
MatrixType& rLeftHandSideMatrix,
501 double& rIntegrationWeight);
507 virtual void CalculateAndAddContactForces(
Vector& rRightHandSideVector,
509 double& rIntegrationWeight );
562 virtual void save(
Serializer& rSerializer )
const
Definition: beam_math_utilities.hpp:31
Base class for all Conditions.
Definition: condition.h:59
IntegrationMethod
Definition: geometry_data.h:76
ProcessInfo holds the current value of different solution parameters.
Definition: process_info.h:59
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
Variable class contains all information needed to store and retrive data from a data container.
Definition: variable.h:63
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
std::size_t IndexType
The definition of the index type.
Definition: key_hash.h:35
Modeler::Pointer Create(const std::string &ModelerName, Model &rModel, const Parameters ModelParameters)
Checks if the modeler is registered.
Definition: modeler_factory.cpp:30
void InitializeSolutionStep(ConstructionUtility &rThisUtil, std::string ThermalSubModelPartName, std::string MechanicalSubModelPartName, std::string HeatFluxSubModelPartName, std::string HydraulicPressureSubModelPartName, bool thermal_conditions, bool mechanical_conditions, int phase)
Definition: add_custom_utilities_to_python.cpp:45
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
ModelPart::NodesContainerType NodesArrayType
Definition: gid_gauss_point_container.h:42
def load(f)
Definition: ode_solve.py:307