9 #if !defined(KRATOS_WATER_PRESSURE_UTILITIES)
10 #define KRATOS_WATER_PRESSURE_UTILITIES
78 number_of_variables = 0;
88 number_of_variables = 0;
116 VectorType& CalculateAndAddHydromechanicalRHS( HydroMechanicalVariables & rVariables,
VectorType & rRightHandSide,
const VectorType & rBaseClassRHS,
const double & rIntegrationWeight);
118 VectorType & CalculateAndAddStabilization( HydroMechanicalVariables & rVariables,
Vector & rRightHandSide,
const double & rIntegrationWeight);
120 MatrixType& CalculateAndAddHydromechanicalLHS( HydroMechanicalVariables & rVariables,
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const double & rIntegrationWeight);
122 MatrixType & CalculateAndAddStabilizationLHS( HydroMechanicalVariables & rVariables,
Matrix & rLeftHandSide,
const double & rIntegrationWeight);
124 void GetPermeabilityTensor(
const PropertiesType & rProperties,
const Matrix & rTotalF,
Matrix & rK,
const double & rInitial_porosity,
const unsigned int & rDimension,
const double & rVolume );
131 void GetScalingConstant(
double& rScalingConstant,
const PropertiesType& pProperties);
133 void GetPermeabilityTensor(
const PropertiesType & rProperties,
const Matrix & rTotalF,
Matrix & rK ,
const double & rInitial_porosity,
const double & rVolume);
136 virtual void GetVoigtSize(
const unsigned int &
dimension,
unsigned int & voigtsize,
unsigned int & principal_dimension);
138 double & CalculateStabilizationFactor( HydroMechanicalVariables & rVariables,
double & rAlphaStabilization);
143 VectorType & CalculateMassBalance_WaterPressurePart( HydroMechanicalVariables & rVariables,
VectorType & rLocalRHS,
const double & rIntegrationWeight);
145 virtual VectorType& CalculateMassBalance_AddDisplacementPart( HydroMechanicalVariables & rVariables,
VectorType & rLocalRHS,
const double & rIntegrationWeight);
147 VectorType& CalculateWaterInternalForcesContribution( HydroMechanicalVariables & rVariables,
VectorType& rRightHandSideVector,
const double & rIntegrationWeight);
149 VectorType & CalculateVolumeForcesContribution( HydroMechanicalVariables & rVariables,
VectorType & rRightHandSideVector,
const double & rIntegrationWeight);
151 VectorType & CalculateStabilizationRHS( HydroMechanicalVariables & rVariables,
VectorType & rRightHandSideVector,
const double & rIntegrationWeight);
154 VectorType& AddReshapeBaseClassRHS(
VectorType & rRightHandSideVector,
const VectorType& rBaseClassRHS,
const unsigned int & number_of_variables,
const unsigned int & number_of_nodes);
156 VectorType& AddReshapeWaterPressureForces(
VectorType & rRightHandSide,
const VectorType& rPartialRHS,
const unsigned int number_of_variables,
const unsigned int number_of_points);
158 VectorType& AddReshapeWaterInternalForcesContribution(
VectorType & rRightHandSideVector,
const VectorType& rPartialRHS,
const unsigned int number_of_variables,
const unsigned int number_of_nodes,
const unsigned int dimension);
162 MatrixType & ComputeWaterPressureKuug( HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
164 virtual MatrixType & ComputeWaterPressureKUwP( HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
166 MatrixType & ComputeWaterPressureKwPwP( HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
168 virtual MatrixType & ComputeSolidSkeletonDeformationMatrix(HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
170 MatrixType & ComputeDarcyFlowGeometricTerms(HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
172 virtual MatrixType & ComputeDensityChangeTerm( HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
174 MatrixType & CalculateStabilizationLHS( HydroMechanicalVariables & rVariables,
MatrixType & rLocalLHS,
const double & rIntegrationWeight);
178 MatrixType & AddReshapeBaseClassLHS(
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const unsigned int dimension,
const unsigned int number_of_variables,
const unsigned int number_of_nodes);
180 virtual MatrixType & AddReshapeSolidSkeletonDeformationMatrix(
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const unsigned int dimension,
const unsigned int number_of_variables,
const unsigned int number_of_nodes);
182 MatrixType & AddReshapeKUU(
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const unsigned int dimension,
const unsigned int number_of_variables,
const unsigned int number_of_nodes);
184 MatrixType & AddReshapeKUwP(
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const unsigned int dimension,
const unsigned int number_of_variables,
const unsigned int number_of_nodes);
186 MatrixType & AddReshapeKwPwP(
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const unsigned int dimension,
const unsigned int number_of_variables,
const unsigned int number_of_nodes);
188 MatrixType & AddReshapeKwPU(
MatrixType & rLeftHandSide,
const MatrixType & rBaseClassLHS,
const unsigned int dimension,
const unsigned int number_of_variables,
const unsigned int number_of_nodes);
Geometry base class.
Definition: geometry.h:71
This class defines the node.
Definition: node.h:65
Properties encapsulates data shared by different Elements or Conditions. It can store any type of dat...
Definition: properties.h:69
Definition: water_pressure_utilities.hpp:30
Matrix MatrixType
Definition: water_pressure_utilities.hpp:33
Properties PropertiesType
Definition: water_pressure_utilities.hpp:41
Node NodeType
Definition: water_pressure_utilities.hpp:43
virtual ~WaterPressureUtilities()
Definition: water_pressure_utilities.hpp:113
unsigned int SizeType
Definition: water_pressure_utilities.hpp:39
Geometry< NodeType > GeometryType
Definition: water_pressure_utilities.hpp:44
bool mPPP
Definition: water_pressure_utilities.hpp:193
unsigned int IndexType
Definition: water_pressure_utilities.hpp:37
Vector VectorType
Definition: water_pressure_utilities.hpp:35
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
int dimension
Definition: isotropic_damage_automatic_differentiation.py:123
Definition: water_pressure_utilities.hpp:47
unsigned int number_of_variables
Definition: water_pressure_utilities.hpp:65
const VectorType & GetVolumeForce()
Definition: water_pressure_utilities.hpp:105
const PropertiesType & GetProperties()
Definition: water_pressure_utilities.hpp:100
void SetDeformationGradient(const MatrixType &rF0)
Definition: water_pressure_utilities.hpp:93
double ConstrainedModulus
Definition: water_pressure_utilities.hpp:63
void SetVolumeForce(const VectorType &rVolumeForce)
Definition: water_pressure_utilities.hpp:96
HydroMechanicalVariables(const GeometryType &rElementGeometry, const PropertiesType &rMaterialProperties)
Definition: water_pressure_utilities.hpp:81
const MatrixType & GetShapeFunctionsDerivatives()
Definition: water_pressure_utilities.hpp:103
const MatrixType & GetBMatrix()
Definition: water_pressure_utilities.hpp:101
const VectorType & GetShapeFunctions()
Definition: water_pressure_utilities.hpp:104
const MatrixType & GetDeformationGradient()
Definition: water_pressure_utilities.hpp:102
void SetBMatrix(const MatrixType &rBMatrix)
Definition: water_pressure_utilities.hpp:92
double CurrentRadius
Definition: water_pressure_utilities.hpp:62
void SetShapeFunctionsDerivatives(const MatrixType &rDN_DX)
Definition: water_pressure_utilities.hpp:94
void SetShapeFunctions(const VectorType &rN)
Definition: water_pressure_utilities.hpp:95
double detF0
Definition: water_pressure_utilities.hpp:61
const GeometryType & GetGeometry()
Definition: water_pressure_utilities.hpp:99
HydroMechanicalVariables()
Definition: water_pressure_utilities.hpp:67
double DeltaTime
Definition: water_pressure_utilities.hpp:60