Thermal flux class#
-
class HeatAdvection : public OpenFdemAbstract#
- #include <new_thermal_heat_advection.h>
Public Functions
-
inline HeatAdvection()#
-
inline ~HeatAdvection()#
-
void computeHeadtAdvectionFluidTensor(General general, Element element, Nodal nodal, Edge edge, Thermal thermal, Hydro hydro, Solidmat solidmat)#
compute the equvalient advection tenssor for each element
\detail q=\frac{1}{2}\rho wC_wq{i}^{w}
- Parameters:
element –
face –
cohelement –
thermal –
hydro –
solidmat –
-
Vector2 computeFluidHeatAdvectionFluxRateatIntergration(General general, Element element, const Int elementindices, const Int igauss, Intergration intergration, Thermal thermal)#
-
void computeFluidAdvectionThermalFlow(General general, Nodal nodal, Element element, Intergration intergration, Thermal thermal)#
Compute fracture volume.
\attension The fracture volume is V=\,\,\frac{1}{2}\left( S_{low}+S_{up} \right) o the fracture aperature should be updated before calculate fracture volume
- Parameters:
face –
cohelement –
hydro –
-
inline HeatAdvection()#
-
class HeatConduction : public OpenFdemAbstract#
- #include <new_thermal_heat_conduction.h>
Public Functions
-
inline HeatConduction()#
-
inline ~HeatConduction()#
-
virtual void initialize(General general, Boudary boudary, Nodal nodal, Thermal thermal)#
Initialize the fracture flow and fracture volume at hydro knnot.
- Parameters:
boudary – boudary condition class refference
nodal – nodal class refference
hydro – hydro class refference
- Returns:
na
-
void computeFractureFluidConducitivityTensor(General general, Nodal nodal, Element element, Edge edge, Thermal thermal, Solidmat solidmat)#
Compute the fracture permability tensor for fracture flow.
\detail The k.ij is assembled from the local permability tensor on each surface of an element according to modified cubic law, the local permability is constructured by the principal values on each local directions in d-s-n plane
- Parameters:
element –
face –
hydro –
solidmat –
-
Vector2 computeFluidConductionFluxRateatIntergration(General general, Element element, const Int elementindices, const Int igauss, Intergration intergration, Thermal thermal)#
-
void computeFluidHeatConduction(General general, Nodal nodal, Element element, Intergration intergration, Thermal thermal)#
Compute fracture volume.
\attension The fracture volume is V=\,\,\frac{1}{2}\left( S_{low}+S_{up} \right) o the fracture aperature should be updated before calculate fracture volume
- Parameters:
face –
cohelement –
hydro –
-
void HeatConductionRun(Boudary boudary, Nodal nodal, Thermal thermal, Element element, Intergration intergration, Edge edge, Solidmat solidmat, General general, Cohelement cohelement)#
compute fracture flow rate at intergration point
- Parameters:
general –
element –
nodal –
elementindices –
intPoint –
hydro –
solidmat –
- Returns:
q.i: flow rate vector in each direction
-
inline HeatConduction()#
-
class HeatExchange : public OpenFdemAbstract#
- #include <new_thermal_heat_exchange.h>
Public Functions
-
inline HeatExchange()#
-
inline ~HeatExchange()#
-
void computeFractureSolidFluidThermalExchange(General general, Nodal nodal, Cohelement cohelement, Thermal thermal, Solidmat solidmat)#
Compute the fracture aperature on surface, the aperature should be updated for broken CZM as well, this function only need to run at the mechanical step.
- Parameters:
nodal –
face –
cohelement –
hydro –
solidmat –
- Returns:
na
-
inline HeatExchange()#
-
class MatrixBaseThermal : public OpenFdemAbstract#
- #include <new_thermal_matrix_flow.h>
Public Functions
-
inline MatrixBaseThermal()#
-
inline ~MatrixBaseThermal()#
-
virtual void initialize(General general, Boudary boudary, Nodal nodal, Thermal thermal)#
Initialize the fracture flow and fracture volume at hydro knnot.
- Parameters:
boudary – boudary condition class refference
nodal – nodal class refference
hydro – hydro class refference
- Returns:
na
-
void computeFractureThermalExchange(General general, Nodal nodal, Cohelement cohelement, Thermal thermal, Solidmat solidmat)#
Compute the fracture aperature on surface, the aperature should be updated for broken CZM as well, this function only need to run at the mechanical step.
- Parameters:
nodal –
face –
cohelement –
hydro –
solidmat –
- Returns:
na
-
Vector2 computeMatrixFluxRateatIntergration(General general, Element element, Nodal nodal, const Int elementindices, const Int igauss, Intergration intergration, Thermal thermal, Solidmat solidmat)#
-
void computeMatrixThermalFlow(General general, Nodal nodal, Element element, Intergration intergration, Thermal thermal, Solidmat solidmat)#
Compute fracture volume.
\attension The fracture volume is V=\,\,\frac{1}{2}\left( S_{low}+S_{up} \right) o the fracture aperature should be updated before calculate fracture volume
- Parameters:
face –
cohelement –
hydro –
-
void updateMatrixThermal(Nodal nodal, Thermal thermal, General general)#
compute fracture flow rate at intergration point
- Parameters:
general –
element –
nodal –
elementindices –
intPoint –
hydro –
solidmat –
- Returns:
q.i: flow rate vector in each direction
-
inline MatrixBaseThermal()#
-
class MatrixThermal : public OpenFdemAbstract#
- #include <thermal_matrix.h>
Subclassed by ns_thermal::ThermalModule
Public Static Functions
-
static void computeMatrixThermalTransportation(General general, Nodal nodal, Element element, Thermal thermal, Solidmat solidmat)#
-
static void computeMatrixThermalTransportation(General general, Nodal nodal, Element element, Thermal thermal, Solidmat solidmat)#
-
struct Thermal_structure#
- #include <openfdem_thermal.h>
-
class ThermalBoudary : public OpenFdemAbstract#
- #include <update_thermal_boundary.h>
Subclassed by ns_thermal::ThermalModule
Public Static Functions
-
static void updateThermalBoundary(Thermal thermal, Boudary boundary, Solidmat solidmat, General general, Nodal nodal, Element element, Intergration intergration)#
update boundary condition. This function is not parallised because thermal boundary is not heavy, extra time will costed to step in the parallel.
- Parameters:
thermal –
boundary –
solidmat –
general –
nodal –
element –
intergration –
-
static void updateThermalBoundary(Thermal thermal, Boudary boundary, Solidmat solidmat, General general, Nodal nodal, Element element, Intergration intergration)#
-
class ThermalComputeForce : public OpenFdemAbstract#
- #include <get_thermal_force.h>
Subclassed by ns_thermal::ThermalModule
Public Static Functions
-
static void computeThermalForce(General general, Nodal nodal, Element element, Thermal thermal, Solidmat solidmat)#
compute the thermal force only for triangle element.
- Parameters:
nodal –
element –
thermal –
solidmat –
-
static void computeThermalForce(General general, Nodal nodal, Element element, Intergration intergration, Thermal thermal, Solidmat solidmat)#
compute the thermal force for arbitary element type. more time will be cost for triangle element.
- Parameters:
nodal –
element –
intergration –
thermal –
solidmat –
-
static void computeThermalForce(General general, Nodal nodal, Element element, Thermal thermal, Solidmat solidmat)#
-
class ThermalModule : public OpenFdemAbstract, public ns_thermal::ThermalComputeForce, public ns_thermal::MatrixThermal, public ns_thermal::ThermalBoudary#
- #include <openfdem_thermal_module.h>
-
class THMCouple : public OpenFdemAbstract, public InterfaceUtils#
- #include <new_thermal_THM_coupling.h>
Public Functions
-
inline THMCouple()#
-
inline ~THMCouple()#
-
void updateFluidViscosity(General general, Nodal nodal, Cohelement cohelement, Thermal thermal, Hydro hydro, Solidmat solidmat)#
Update the water viscosity due to tempearature change.
- Parameters:
nodal – - nodal class
cohelement – - cohelement class
thermal – - thermal class
hydro – - hydro class
solidmat – - solid material class
-
void updateFluidThermal(Boudary boudary, Nodal nodal, Thermal thermal, Hydro hydro, Solidmat solidmat, General general)#
Compute the nodal temperature in fluid the temperature only be updated for wetted nodes, which are on the broken cohesive elememt surfaces.
- Parameters:
boudary –
nodal –
thermal –
hydro –
solidmat –
general –
-
inline THMCouple()#
-
namespace ns_common
-
namespace ns_solid
-
namespace ns_thermal#
- file get_thermal_force.h
- #include <math.h>#include “common/memory_manager.h”#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”
- file new_thermal_heat_advection.h
- #include <math.h>#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”
- file new_thermal_heat_conduction.h
- #include <math.h>#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”
- file new_thermal_heat_exchange.h
- #include <math.h>#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”#include “solid/solid_mechanics_cohesive/solid_interface_element_utils.h”
- file new_thermal_matrix_flow.h
- #include <math.h>#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”#include “solid/solid_mechanics_cohesive/solid_interface_element_utils.h”
- file new_thermal_THM_coupling.h
- #include <math.h>#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”#include “solid/solid_mechanics_cohesive/solid_interface_element_utils.h”
- file openfdem_thermal.h
- #include “common/openfdem_common.h”#include “hydro/openfdem_hydro.h”
Typedefs
-
typedef struct Thermal_structure *Thermal#
-
typedef struct Thermal_structure *Thermal#
- file openfdem_thermal_module.h
- #include <math.h>#include <thermal/get_thermal_force.h>#include <thermal/thermal_matrix.h>#include <thermal/update_thermal_boundary.h>#include “common/memory_manager.h”#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”#include “thermal/new_thermal_matrix_flow.h”#include “thermal/new_thermal_heat_conduction.h”#include “thermal/new_thermal_heat_advection.h”#include “thermal/new_thermal_heat_exchange.h”#include “thermal/new_thermal_THM_coupling.h”
- file thermal_matrix.h
- #include <math.h>#include “common/memory_manager.h”#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”
- file update_thermal_boundary.h
- #include <math.h>#include “common/memory_manager.h”#include “common/openfdem_abstract.h”#include “common/openfdem_math.h”#include “solver/openfdem.h”
- dir src
- dir thermal