Hydraulic aperture equals the mechanical aperture s.t. multiplication of the permeability by the mechanical aperture yields the cubic law. The volumetric flux of incompressible fluid flow in a laminar regime within a fracture consisting of two parallel and smooth surfaces is given by the cubic law:
Q = W/(u L) b^3/12 \Delta p,
where, Q is the volumetric flux normal to the flow direction, W is the fracture width, u is the fluid viscosity, L is the fracture length, p is the fluid pressure, and b is the fracture hydraulic aperture.
In the context of Darcy’s law, the fracture permeability becomes:
k_f = b^2/12,
.
Ref: He, Xupeng, et al. "A corrected cubic law for single-phase laminar flow through rough-walled fractures." Advances in Water resources 154 (2021): 103984.
Definition at line 42 of file CubicLawPermeability.h.
#include <CubicLawPermeability.h>
Public Member Functions | |
CubicLawPermeability (std::string name, ParameterLib::Parameter< double > const *b) | |
void | checkScale () const override |
PropertyDataType | value (VariableArray const &variable_array, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const override |
PropertyDataType | dValue (VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const override |
![]() | |
virtual | ~Property () |
virtual PropertyDataType | initialValue (ParameterLib::SpatialPosition const &pos, double const t) const |
virtual PropertyDataType | value () const |
virtual PropertyDataType | value (VariableArray const &variable_array, VariableArray const &variable_array_prev, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
virtual PropertyDataType | dValue (VariableArray const &variable_array, VariableArray const &variable_array_prev, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
virtual PropertyDataType | d2Value (VariableArray const &variable_array, Variable const variable1, Variable const variable2, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
Default implementation: 2nd derivative of any constant property is zero. | |
virtual void | setProperties (std::vector< std::unique_ptr< Phase > > const &phases) |
Default implementation: | |
void | setScale (std::variant< Medium *, Phase *, Component * > scale) |
template<typename T > | |
T | initialValue (ParameterLib::SpatialPosition const &pos, double const t) const |
template<typename T > | |
T | value () const |
template<typename T > | |
T | value (VariableArray const &variable_array, VariableArray const &variable_array_prev, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | value (VariableArray const &variable_array, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | dValue (VariableArray const &variable_array, VariableArray const &variable_array_prev, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | dValue (VariableArray const &variable_array, Variable const variable, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
template<typename T > | |
T | d2Value (VariableArray const &variable_array, Variable const &variable1, Variable const &variable2, ParameterLib::SpatialPosition const &pos, double const t, double const dt) const |
Private Attributes | |
ParameterLib::Parameter< double > const * | _b = nullptr |
Predefined fracture aperture. | |
Additional Inherited Members | |
![]() | |
std::string | name_ |
PropertyDataType | value_ |
The single value of a property. | |
PropertyDataType | dvalue_ |
std::variant< Medium *, Phase *, Component * > | scale_ |
MaterialPropertyLib::CubicLawPermeability::CubicLawPermeability | ( | std::string | name, |
ParameterLib::Parameter< double > const * | b ) |
Definition at line 14 of file CubicLawPermeability.cpp.
References MaterialPropertyLib::name, and MaterialPropertyLib::Property::name_.
|
inlineoverridevirtual |
Reimplemented from MaterialPropertyLib::Property.
Definition at line 47 of file CubicLawPermeability.h.
References OGS_FATAL, and MaterialPropertyLib::Property::scale_.
|
overridevirtual |
Reimplemented from MaterialPropertyLib::Property.
Definition at line 32 of file CubicLawPermeability.cpp.
References _b, MaterialPropertyLib::fracture_aperture, and MaterialPropertyLib::VariableArray::fracture_aperture.
|
overridevirtual |
Reimplemented from MaterialPropertyLib::Property.
Definition at line 21 of file CubicLawPermeability.cpp.
References _b, and MaterialPropertyLib::VariableArray::fracture_aperture.
|
private |
Predefined fracture aperture.
Definition at line 69 of file CubicLawPermeability.h.