OGS
|
Classes | |
struct | CapillaryPressureData |
struct | ConstitutiveSetting |
struct | CreateConstitutiveSetting |
struct | IntegrationPointData |
struct | LocalAssemblerInterface |
struct | MediaData |
struct | MicroPorosityParameters |
struct | MicroPorosityStateSpace |
class | RichardsMechanicsLocalAssembler |
class | RichardsMechanicsProcess |
struct | RichardsMechanicsProcessData |
struct | SaturationSecantDerivative |
struct | SecondaryData |
Typedefs | |
template<int DisplacementDim> | |
using | KelvinVector = KV::KelvinVectorType<DisplacementDim> |
template<int DisplacementDim> | |
using | KelvinMatrix = KV::KelvinMatrixType<DisplacementDim> |
template<int DisplacementDim> | |
using | GlobalDimVector = Eigen::Vector<double, DisplacementDim> |
template<int DisplacementDim> | |
using | GlobalDimMatrix |
using | TemperatureData = BaseLib::StrongType<double, struct TemperatureDataTag> |
template<int DisplacementDim> | |
using | StatefulData |
Data whose state must be tracked by the process. | |
template<int DisplacementDim> | |
using | StatefulDataPrev |
template<int DisplacementDim> | |
using | OutputData |
Data that is needed for output purposes, but not directly for the assembly. | |
template<int DisplacementDim> | |
using | ConstitutiveData |
Data that is needed for the equation system assembly. | |
template<int DisplacementDim> | |
using | ConstitutiveTempData = std::tuple<> |
template<int DisplacementDim> | |
using | ConstitutiveModels = std::tuple<> |
Constitutive models used for assembly. | |
using | Density = BaseLib::StrongType<double, struct DensityTag> |
using | DrySolidDensity = BaseLib::StrongType<double, struct DrySolidDensityTag> |
using | EffectivePorePressure |
using | LiquidDensity = BaseLib::StrongType<double, struct LiquidDensityTag> |
using | MicroPressure = BaseLib::StrongType<double, struct MicroPressureTag> |
using | MicroSaturation = BaseLib::StrongType<double, struct MicroSaturationTag> |
template<int DisplacementDim> | |
using | StiffnessTensor |
Functions | |
template<int DisplacementDim> | |
std::ostream & | operator<< (std::ostream &os, MicroPorosityStateSpace< DisplacementDim > const &state) |
template<int DisplacementDim> | |
MicroPorosityStateSpace< DisplacementDim > | computeMicroPorosity (MathLib::KelvinVector::KelvinVectorType< DisplacementDim > const &I_2_C_el_inverse, double const rho_LR_m, double const mu_LR, MicroPorosityParameters const µ_porosity_parameters, double const alpha_B, double const phi, double const p_L, double const p_L_m_prev, MaterialPropertyLib::VariableArray const &, double const S_L_m_prev, double const phi_m_prev, ParameterLib::SpatialPosition const pos, double const t, double const dt, MaterialPropertyLib::Property const &saturation_micro, MaterialPropertyLib::Property const &swelling_stress_rate) |
template<int D> | |
constexpr GlobalDimVector< D > | DVnan () |
Used to set a D dimensional vector to all not-a-number. | |
template<int D> | |
constexpr GlobalDimMatrix< D > | DMnan () |
Used to set a D x D matrix to all not-a-number. | |
template<int DisplacementDim, typename TRMProcessData > | |
ConstitutiveModels< DisplacementDim > | createConstitutiveModels (TRMProcessData const &process_data, MaterialLib::Solids::MechanicsBase< DisplacementDim > const &solid_material) |
constexpr std::string_view | ioName (struct DrySolidDensityTag *) |
constexpr std::string_view | ioName (struct MicroPressureTag *) |
constexpr std::string_view | ioName (struct MicroSaturationTag *) |
void | checkMPLProperties (std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media) |
template<int DisplacementDim> | |
std::unique_ptr< Process > | createRichardsMechanicsProcess (std::string const &name, MeshLib::Mesh &mesh, std::unique_ptr< ProcessLib::AbstractJacobianAssembler > &&jacobian_assembler, std::vector< ProcessVariable > const &variables, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, unsigned const integration_order, BaseLib::ConfigTree const &config, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media) |
template std::unique_ptr< Process > | createRichardsMechanicsProcess< 2 > (std::string const &name, MeshLib::Mesh &mesh, std::unique_ptr< ProcessLib::AbstractJacobianAssembler > &&jacobian_assembler, std::vector< ProcessVariable > const &variables, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, unsigned const integration_order, BaseLib::ConfigTree const &config, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media) |
template std::unique_ptr< Process > | createRichardsMechanicsProcess< 3 > (std::string const &name, MeshLib::Mesh &mesh, std::unique_ptr< ProcessLib::AbstractJacobianAssembler > &&jacobian_assembler, std::vector< ProcessVariable > const &variables, std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const ¶meters, std::optional< ParameterLib::CoordinateSystem > const &local_coordinate_system, unsigned const integration_order, BaseLib::ConfigTree const &config, std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const &media) |
template<int DisplacementDim> | |
void | updateSwellingStressAndVolumetricStrain (MaterialPropertyLib::Medium const &medium, MaterialPropertyLib::Phase const &solid_phase, MathLib::KelvinVector::KelvinMatrixType< DisplacementDim > const &C_el, double const rho_LR, double const mu, std::optional< MicroPorosityParameters > micro_porosity_parameters, double const alpha, double const phi, double const p_cap_ip, MPL::VariableArray &variables, MPL::VariableArray &variables_prev, ParameterLib::SpatialPosition const &x_position, double const t, double const dt, ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::SwellingDataStateful< DisplacementDim > &sigma_sw, PrevState< ProcessLib::ThermoRichardsMechanics::ConstitutiveStress_StrainTemperature::SwellingDataStateful< DisplacementDim > > const &sigma_sw_prev, PrevState< ProcessLib::ThermoRichardsMechanics::TransportPorosityData > const phi_M_prev, PrevState< ProcessLib::ThermoRichardsMechanics::PorosityData > const phi_prev, ProcessLib::ThermoRichardsMechanics::TransportPorosityData &phi_M, PrevState< MicroPressure > const p_L_m_prev, PrevState< MicroSaturation > const S_L_m_prev, MicroPressure &p_L_m, MicroSaturation &S_L_m) |
using ProcessLib::RichardsMechanics::ConstitutiveData |
Data that is needed for the equation system assembly.
Definition at line 60 of file ConstitutiveData.h.
using ProcessLib::RichardsMechanics::ConstitutiveModels = std::tuple<> |
Constitutive models used for assembly.
Definition at line 21 of file ConstitutiveModels.h.
using ProcessLib::RichardsMechanics::ConstitutiveTempData = std::tuple<> |
Data that stores intermediate values, which are not needed outside the constitutive setting.
Definition at line 76 of file ConstitutiveData.h.
using ProcessLib::RichardsMechanics::Density = BaseLib::StrongType<double, struct DensityTag> |
using ProcessLib::RichardsMechanics::DrySolidDensity = BaseLib::StrongType<double, struct DrySolidDensityTag> |
Definition at line 20 of file DrySolidDensity.h.
Definition at line 17 of file EffectivePorePressure.h.
using ProcessLib::RichardsMechanics::GlobalDimMatrix |
using ProcessLib::RichardsMechanics::GlobalDimVector = Eigen::Vector<double, DisplacementDim> |
using ProcessLib::RichardsMechanics::KelvinMatrix = KV::KelvinMatrixType<DisplacementDim> |
using ProcessLib::RichardsMechanics::KelvinVector = KV::KelvinVectorType<DisplacementDim> |
using ProcessLib::RichardsMechanics::LiquidDensity = BaseLib::StrongType<double, struct LiquidDensityTag> |
Definition at line 17 of file LiquidDensity.h.
using ProcessLib::RichardsMechanics::MicroPressure = BaseLib::StrongType<double, struct MicroPressureTag> |
Definition at line 19 of file MicroPressure.h.
using ProcessLib::RichardsMechanics::MicroSaturation = BaseLib::StrongType<double, struct MicroSaturationTag> |
Definition at line 19 of file MicroSaturation.h.
using ProcessLib::RichardsMechanics::OutputData |
Data that is needed for output purposes, but not directly for the assembly.
Definition at line 54 of file ConstitutiveData.h.
using ProcessLib::RichardsMechanics::StatefulData |
Data whose state must be tracked by the process.
Definition at line 35 of file ConstitutiveData.h.
using ProcessLib::RichardsMechanics::StatefulDataPrev |
Definition at line 49 of file ConstitutiveData.h.
using ProcessLib::RichardsMechanics::StiffnessTensor |
Definition at line 18 of file StiffnessTensor.h.
using ProcessLib::RichardsMechanics::TemperatureData = BaseLib::StrongType<double, struct TemperatureDataTag> |
void ProcessLib::RichardsMechanics::checkMPLProperties | ( | std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const & | media | ) |
Definition at line 32 of file CreateRichardsMechanicsProcess.cpp.
References MaterialPropertyLib::biot_coefficient, MaterialPropertyLib::bishops_effective_stress, MaterialPropertyLib::density, MaterialPropertyLib::porosity, MaterialPropertyLib::reference_temperature, MaterialPropertyLib::relative_permeability, MaterialPropertyLib::saturation, and MaterialPropertyLib::viscosity.
Referenced by createRichardsMechanicsProcess().
MicroPorosityStateSpace< DisplacementDim > ProcessLib::RichardsMechanics::computeMicroPorosity | ( | MathLib::KelvinVector::KelvinVectorType< DisplacementDim > const & | I_2_C_el_inverse, |
double const | rho_LR_m, | ||
double const | mu_LR, | ||
MicroPorosityParameters const & | micro_porosity_parameters, | ||
double const | alpha_B, | ||
double const | phi, | ||
double const | p_L, | ||
double const | p_L_m_prev, | ||
MaterialPropertyLib::VariableArray const & | , | ||
double const | S_L_m_prev, | ||
double const | phi_m_prev, | ||
ParameterLib::SpatialPosition const | pos, | ||
double const | t, | ||
double const | dt, | ||
MaterialPropertyLib::Property const & | saturation_micro, | ||
MaterialPropertyLib::Property const & | swelling_stress_rate ) |
Definition at line 64 of file ComputeMicroPorosity.h.
References MaterialPropertyLib::VariableArray::capillary_pressure, MathLib::KelvinVector::kelvin_vector_dimensions(), MaterialPropertyLib::VariableArray::liquid_saturation, ProcessLib::RichardsMechanics::MicroPorosityParameters::mass_exchange_coefficient, ProcessLib::RichardsMechanics::MicroPorosityParameters::nonlinear_solver_parameters, OGS_FATAL, and MathLib::KelvinVector::tensorToKelvin().
Referenced by updateSwellingStressAndVolumetricStrain().
ConstitutiveModels< DisplacementDim > ProcessLib::RichardsMechanics::createConstitutiveModels | ( | TRMProcessData const & | process_data, |
MaterialLib::Solids::MechanicsBase< DisplacementDim > const & | solid_material ) |
Definition at line 24 of file ConstitutiveModels.h.
References ProcessLib::Graph::constructModels(), and ProcessLib::ThermoRichardsMechanics::SpecificBodyForceData< DisplacementDim >::specific_body_force.
std::unique_ptr< Process > ProcessLib::RichardsMechanics::createRichardsMechanicsProcess | ( | std::string const & | name, |
MeshLib::Mesh & | mesh, | ||
std::unique_ptr< ProcessLib::AbstractJacobianAssembler > && | jacobian_assembler, | ||
std::vector< ProcessVariable > const & | variables, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters, | ||
std::optional< ParameterLib::CoordinateSystem > const & | local_coordinate_system, | ||
unsigned const | integration_order, | ||
BaseLib::ConfigTree const & | config, | ||
std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const & | media ) |
Primary process variables as they appear in the global component vector:
Definition at line 57 of file CreateRichardsMechanicsProcess.cpp.
References BaseLib::ConfigTree::checkConfigParameter(), checkMPLProperties(), MaterialLib::Solids::createConstitutiveRelations(), ProcessLib::createInitialStress(), MaterialPropertyLib::createMaterialSpatialDistributionMap(), NumLib::createNewtonRaphsonSolverParameters(), ProcessLib::createSecondaryVariables(), DBUG(), ProcessLib::findProcessVariables(), BaseLib::ConfigTree::getConfigParameter(), BaseLib::ConfigTree::getConfigParameterOptional(), BaseLib::ConfigTree::getConfigSubtree(), BaseLib::ConfigTree::getConfigSubtreeOptional(), ProcessLib::ProcessVariable::getName(), ProcessLib::ProcessVariable::getNumberOfGlobalComponents(), and OGS_FATAL.
template std::unique_ptr< Process > ProcessLib::RichardsMechanics::createRichardsMechanicsProcess< 2 > | ( | std::string const & | name, |
MeshLib::Mesh & | mesh, | ||
std::unique_ptr< ProcessLib::AbstractJacobianAssembler > && | jacobian_assembler, | ||
std::vector< ProcessVariable > const & | variables, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters, | ||
std::optional< ParameterLib::CoordinateSystem > const & | local_coordinate_system, | ||
unsigned const | integration_order, | ||
BaseLib::ConfigTree const & | config, | ||
std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const & | media ) |
Referenced by ProjectData::parseProcesses().
template std::unique_ptr< Process > ProcessLib::RichardsMechanics::createRichardsMechanicsProcess< 3 > | ( | std::string const & | name, |
MeshLib::Mesh & | mesh, | ||
std::unique_ptr< ProcessLib::AbstractJacobianAssembler > && | jacobian_assembler, | ||
std::vector< ProcessVariable > const & | variables, | ||
std::vector< std::unique_ptr< ParameterLib::ParameterBase > > const & | parameters, | ||
std::optional< ParameterLib::CoordinateSystem > const & | local_coordinate_system, | ||
unsigned const | integration_order, | ||
BaseLib::ConfigTree const & | config, | ||
std::map< int, std::shared_ptr< MaterialPropertyLib::Medium > > const & | media ) |
Referenced by ProjectData::parseProcesses().
|
constexpr |
Used to set a D x D matrix to all not-a-number.
Definition at line 48 of file Base.h.
References ProcessLib::ConstitutiveRelations::nan.
|
constexpr |
Used to set a D dimensional vector to all not-a-number.
Definition at line 41 of file Base.h.
References ProcessLib::ConstitutiveRelations::nan.
|
constexpr |
Definition at line 22 of file DrySolidDensity.h.
|
constexpr |
Definition at line 21 of file MicroPressure.h.
|
constexpr |
Definition at line 21 of file MicroSaturation.h.
std::ostream & ProcessLib::RichardsMechanics::operator<< | ( | std::ostream & | os, |
MicroPorosityStateSpace< DisplacementDim > const & | state ) |
Definition at line 44 of file ComputeMicroPorosity.h.
References ProcessLib::RichardsMechanics::MicroPorosityStateSpace< DisplacementDim >::e_sw, ProcessLib::RichardsMechanics::MicroPorosityStateSpace< DisplacementDim >::p_L_m, ProcessLib::RichardsMechanics::MicroPorosityStateSpace< DisplacementDim >::phi_m, and ProcessLib::RichardsMechanics::MicroPorosityStateSpace< DisplacementDim >::sigma_sw.
Definition at line 35 of file RichardsMechanicsFEM-impl.h.
References MaterialPropertyLib::VariableArray::capillary_pressure, computeMicroPorosity(), MaterialPropertyLib::formEigenTensor< 3 >(), MaterialPropertyLib::Medium::hasProperty(), MaterialPropertyLib::Phase::hasProperty(), MathLib::KelvinVector::kelvin_vector_dimensions(), MaterialPropertyLib::Medium::property(), MaterialPropertyLib::Phase::property(), MathLib::KelvinVector::tensorToKelvin(), MaterialPropertyLib::VariableArray::transport_porosity, and MaterialPropertyLib::VariableArray::volumetric_strain.
Referenced by ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::assembleWithJacobianEvalConstitutiveSetting(), and ProcessLib::RichardsMechanics::RichardsMechanicsLocalAssembler< ShapeFunctionDisplacement, ShapeFunctionPressure, DisplacementDim >::computeSecondaryVariableConcrete().