OGS
HydroMechanicsProcessData.h
Go to the documentation of this file.
1
11#pragma once
12
13#include <Eigen/Core>
14#include <memory>
15#include <utility>
16
22
23namespace MeshLib
24{
25class Element;
26}
27
28namespace ProcessLib
29{
30namespace LIE
31{
32namespace HydroMechanics
33{
34template <int GlobalDim>
36{
38 MeshLib::PropertyVector<int> const* const material_ids_,
39 std::map<
40 int,
42 solid_materials_,
43 ParameterLib::Parameter<double> const& intrinsic_permeability_,
44 ParameterLib::Parameter<double> const& specific_storage_,
45 ParameterLib::Parameter<double> const& fluid_viscosity_,
46 ParameterLib::Parameter<double> const& fluid_density_,
47 ParameterLib::Parameter<double> const& biot_coefficient_,
48 ParameterLib::Parameter<double> const& porosity_,
49 ParameterLib::Parameter<double> const& solid_density_,
50 Eigen::Matrix<double, GlobalDim, 1>
51 specific_body_force_,
54 std::unique_ptr<FracturePropertyHM>&& fracture_prop,
55 ParameterLib::Parameter<double> const& initial_effective_stress_,
57 initial_fracture_effective_stress_,
58 bool const deactivate_matrix_in_flow_,
59 double const reference_temperature_)
60 : material_ids(material_ids_),
61 solid_materials{std::move(solid_materials_)},
62 intrinsic_permeability(intrinsic_permeability_),
63 specific_storage(specific_storage_),
64 fluid_viscosity(fluid_viscosity_),
65 fluid_density(fluid_density_),
66 biot_coefficient(biot_coefficient_),
67 porosity(porosity_),
68 solid_density(solid_density_),
69 specific_body_force(std::move(specific_body_force_)),
71 fracture_property{std::move(fracture_prop)},
72 initial_effective_stress(initial_effective_stress_),
73 initial_fracture_effective_stress(initial_fracture_effective_stress_),
74 deactivate_matrix_in_flow(deactivate_matrix_in_flow_),
75 reference_temperature(reference_temperature_)
76 {
77 }
78
80
83
85 void operator=(HydroMechanicsProcessData const&) = delete;
86
89
91 std::map<int,
92 std::unique_ptr<MaterialLib::Solids::MechanicsBase<GlobalDim>>>
101 Eigen::Matrix<double, GlobalDim, 1> const specific_body_force;
102 std::unique_ptr<MaterialLib::Fracture::FractureModelBase<GlobalDim>>
104 std::unique_ptr<FracturePropertyHM> fracture_property;
107
109 std::unique_ptr<MeshLib::ElementStatus> p_element_status;
111
112 // mesh properties for output
118
123
127
129
131};
132
133} // namespace HydroMechanics
134} // namespace LIE
135} // namespace ProcessLib
Definition of the ElementStatus class.
ParameterLib::Parameter< double > const & intrinsic_permeability
ParameterLib::Parameter< double > const & initial_fracture_effective_stress
Eigen::Matrix< double, GlobalDim, 1 > const specific_body_force
std::map< int, std::unique_ptr< MaterialLib::Solids::MechanicsBase< GlobalDim > > > solid_materials
HydroMechanicsProcessData(HydroMechanicsProcessData const &)=delete
Copies are forbidden.
void operator=(HydroMechanicsProcessData const &)=delete
Assignments are not needed.
void operator=(HydroMechanicsProcessData &&)=delete
Assignments are not needed.
ParameterLib::Parameter< double > const & initial_effective_stress
HydroMechanicsProcessData(MeshLib::PropertyVector< int > const *const material_ids_, std::map< int, std::unique_ptr< MaterialLib::Solids::MechanicsBase< GlobalDim > > > &&solid_materials_, ParameterLib::Parameter< double > const &intrinsic_permeability_, ParameterLib::Parameter< double > const &specific_storage_, ParameterLib::Parameter< double > const &fluid_viscosity_, ParameterLib::Parameter< double > const &fluid_density_, ParameterLib::Parameter< double > const &biot_coefficient_, ParameterLib::Parameter< double > const &porosity_, ParameterLib::Parameter< double > const &solid_density_, Eigen::Matrix< double, GlobalDim, 1 > specific_body_force_, std::unique_ptr< MaterialLib::Fracture::FractureModelBase< GlobalDim > > &&fracture_model, std::unique_ptr< FracturePropertyHM > &&fracture_prop, ParameterLib::Parameter< double > const &initial_effective_stress_, ParameterLib::Parameter< double > const &initial_fracture_effective_stress_, bool const deactivate_matrix_in_flow_, double const reference_temperature_)
HydroMechanicsProcessData(HydroMechanicsProcessData &&other)=default
std::unique_ptr< MaterialLib::Fracture::FractureModelBase< GlobalDim > > fracture_model