HydroFemPhysics
The GeMA Hydraulic FEM Physics Plugin
Loading...
Searching...
No Matches
GmpHydraulicMaterialDualPorosity Class Reference
Inheritance diagram for GmpHydraulicMaterialDualPorosity:
Collaboration diagram for GmpHydraulicMaterialDualPorosity:

Public Types

enum  shapeFactorType {
  warrenRoot , kazemi , limAzis , coat ,
  user , none
}
 

Public Member Functions

 GmpHydraulicMaterialDualPorosity (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual const QVariantMap * materialMetaDataMap ()
 Returns a pointer to the material attribute map, built when the function is called for the first time.
 
virtual double fractureSpacingX (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture spacing along x.
 
virtual double fractureApertureX (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture aperture along x.
 
virtual double fractureSpacingY (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture spacing along y.
 
virtual double fractureApertureY (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture aperture along y.
 
virtual double fractureSpacingZ (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture spacing along z.
 
virtual double fractureApertureZ (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture aperture along z.
 
virtual double fracturePoreCompressibility (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture pore compressibility.
 
virtual double fractureViscosity (const GmElement *e, const GmVector *coord, int ip) const
 Returns the fracture dynamic viscosity.
 
virtual double userDefinedFracturePorosity (const GmElement *e, const GmVector *coord, int ip) const
 Returns the user-defined fracture porosity.
 
virtual void userDefinedFracturePermeability (const GmElement *e, const GmVector *coord, int ip, GmMatrix &Kf) const
 Returns the user-defined fracture permeability.
 
virtual double userDefinedShapeFactor (const GmElement *e, const GmVector *coord, int ip) const
 Returns the user-defined shape factor.
 
virtual bool shapeFactorModel (const GmElement *e, GmpHydraulicMaterialDualPorosity::shapeFactorType &type, const GmVector *coord, int ip) const
 returns the shape factor model
 
virtual void setfrac (double &sx, double &sy, double &sz, int &fx, int &fy, int &fz, int &n, double &sm) const
 returns the number of fracture sets
 
virtual double fillFracturePorosity (const GmElement *e, const GmVector *coord, int ip) const
 returns the fracture porosity
 
virtual bool fillFracturePermeability (const GmElement *e, GmMatrix &Kper, const GmVector *coord, int ip) const
 returns the fracture permeability
 
virtual bool fillShapeFactor (const GmElement *e, double &ws, GmMatrix Km, const GmVector *coord, int ip) const
 returns the shape factor
 
- Public Member Functions inherited from GmpHydraulicMaterialSaturated
 GmpHydraulicMaterialSaturated (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual double porosity (const GmElement *e, const GmVector *coord, int ip) const
 Returns the material porosity.
 
virtual double poreCompressibility (const GmElement *e, const GmVector *coord, int ip) const
 Returns the material pore compressibility.
 
virtual double referencePorePressure (const GmElement *e, const GmVector *coord, int ip) const
 
virtual double relativePermeability (const GmElement *e, const GmVector *coord, int ip) const
 Brief Returns the relative permeability.
 
virtual void hydraulicConstitutiveModel (const GmElement *e, const GmVector *coord, int ip, const GmpHydraulic::HMaterialPointAccessors &mp, GmMatrix &K) const
 Brief Returns the hydraulic constitutive model (permeability tensor)
 
- Public Member Functions inherited from GmpHydraulicMaterial
 GmpHydraulicMaterial (int typeIndex, QString typeName, const GmLogCategory &logger)
 Constructor. Gets as parameters the material index and its name.
 
virtual ~GmpHydraulicMaterial ()
 Virtual destructor.
 
virtual double waterBulkModulus (const GmElement *e, const GmVector *coord, int ip) const
 Returns the material bulk modulus of water.
 
virtual double gammaWater (const GmElement *e, const GmVector *coord, int ip) const
 Returns the material gamma water.
 
virtual double fluidDensity (const GmElement *e, const GmVector *coord, int ip) const
 Returns the material density of water.
 
virtual double fluidViscosity (const GmElement *e, const GmVector *coord, int ip) const
 Returns the material density of water.
 
virtual void permeabilityStiffness (const GmElement *e, const GmVector *coord, int ip, GmMatrix &K) const
 
virtual bool permeabilityStiffnessIsSymmetric () const
 

Static Public Member Functions

static GmpFemPhysicsCommonMaterial * instance (GmSimulationData *simulation, int typeIndex, QString typeName, const GmLogCategory &logger)
 A "factory" function used to register the material with the physics material factory.
 
- Static Public Member Functions inherited from GmpHydraulicMaterialSaturated
static GmpFemPhysicsCommonMaterial * instance (GmSimulationData *simulation, int typeIndex, QString typeName, const GmLogCategory &logger)
 A "factory" function used to register the material with the physics material factory.
 

Protected Types

enum  DualPorosityElementPropertyIds {
  Sx_ID = GmpHydraulicMaterialSaturated::NUM_PROPERTY_IDS , Bx_ID , Sy_ID , By_ID ,
  Sz_ID , Bz_ID , Bpf_ID , Uf_ID ,
  shapeFactor_ID , Kf_User_ID , PorF_User_ID , Wff_User_ID ,
  NUM_PROPERTY_IDS
}
 IDs for saturated material element properties. More...
 
- Protected Types inherited from GmpHydraulicMaterialSaturated
enum  SaturatedElementPropertyIds { PHT_ID = GmpHydraulicMaterial::NUM_PROPERTY_IDS , BP_ID , NUM_PROPERTY_IDS }
 IDs for saturated material element properties. More...
 
- Protected Types inherited from GmpHydraulicMaterial
enum  ElementPropertyIds {
  K_ID , KWW_ID , GW_ID , Ki_ID ,
  rhof_ID , Uf_ID , NUM_PROPERTY_IDS
}
 IDs for material element properties. More...
 

Member Enumeration Documentation

◆ DualPorosityElementPropertyIds

IDs for saturated material element properties.

Enumerator
Sx_ID 

Id for retrieving the fracture spacing along x.

Bx_ID 

Id for retrieving the frature aperture along x.

Sy_ID 

Id for retrieving the fracture spacing along y.

By_ID 

Id for retrieving the frature aperture along y

Sz_ID 

Id for retrieving the fracture spacing along z.

Bz_ID 

Id for retrieving the frature aperture along z.

Bpf_ID 

Id for retrieving the Pore compressibility of fracture.

Uf_ID 

Id for retrieving the fracture dynamic viscosity.

shapeFactor_ID 

Id for retrieving the type of shape factor.

Kf_User_ID 

Id for retrieving the user defined fracture hydraulic conductivity tensor accessor.

PorF_User_ID 

Id for retrieving the user defined fracture porosity accessor.

Wff_User_ID 

Id for retrieving the user defined shape factor accessor.

NUM_PROPERTY_IDS 

The number of property ids above.

Member Function Documentation

◆ fillFracturePermeability()

bool GmpHydraulicMaterialDualPorosity::fillFracturePermeability ( const GmElement * e,
GmMatrix & Kper,
const GmVector * coord,
int ip ) const
virtual

returns the fracture permeability

Returns the fracture hydraulic conductivity Kfc.

Reimplemented in GmpHydraulicMaterialEnhancedDualPorosity, and GmpHydraulicMaterialGeneralizedDualPorosity.

◆ fillFracturePorosity()

double GmpHydraulicMaterialDualPorosity::fillFracturePorosity ( const GmElement * e,
const GmVector * coord,
int ip ) const
virtual

returns the fracture porosity

Returns the fracture porosity Kfc.

Reimplemented in GmpHydraulicMaterialGeneralizedDualPorosity.

◆ fillShapeFactor()

bool GmpHydraulicMaterialDualPorosity::fillShapeFactor ( const GmElement * e,
double & ws,
GmMatrix Km,
const GmVector * coord,
int ip ) const
virtual

returns the shape factor

Returns the shape factor Kfc.

Reimplemented in GmpHydraulicMaterialEnhancedDualPorosity, and GmpHydraulicMaterialGeneralizedDualPorosity.

◆ materialMetaDataMap()

const QVariantMap * GmpHydraulicMaterialDualPorosity::materialMetaDataMap ( )
virtual

Returns a pointer to the material attribute map, built when the function is called for the first time.

This table includes the attributes treated by the base class, GmpHydraulicMaterial, adding the porosity 'Pht' and the pore compressibility 'Bp'

Reimplemented from GmpHydraulicMaterialSaturated.

Reimplemented in GmpHydraulicMaterialEnhancedDualPorosity, and GmpHydraulicMaterialGeneralizedDualPorosity.

◆ setfrac()

void GmpHydraulicMaterialDualPorosity::setfrac ( double & sx,
double & sy,
double & sz,
int & fx,
int & fy,
int & fz,
int & n,
double & sm ) const
virtual

returns the number of fracture sets

Returns consistent parameters to calculate permeability sx,sy,sz spacing between fractures fx, fy, fz factors (fi = 0 if si = 0 and fi = 1 if si != 0) n = number set fractures sm = mean spacing.


The documentation for this class was generated from the following files: