OGS
|
The BHE_1U class is the realization of 1U type of Borehole Heate Exchanger. In this class, the pipe heat capacity, pipe heat conductiion, pie advection vectors are initialized according to the geometry of 1U type of BHE. For 1U type of BHE, 4 primary unknowns are assigned on the 1D BHE elements. They are the temperature in inflow pipe T_in, temperature in outflow pipe T_out temperature of the two grout zones surrounding the inflow and outflow pipe T_g1 and T_g2. These primary variables are solved according to heat convection and conduction equations on the pipes and also in the grout zones. The interaction of the 1U type of BHE and the surrounding soil is regulated through the thermal resistance values, which are calculated specifically during the initialization of the class.
#include <BHE_1U.h>
Static Public Member Functions | |
template<int NPoints, typename SingleUnknownMatrixType , typename RMatrixType , typename RPiSMatrixType , typename RSMatrixType > | |
static void | assembleRMatrices (int const idx_bhe_unknowns, Eigen::MatrixBase< SingleUnknownMatrixType > const &matBHE_loc_R, Eigen::MatrixBase< RMatrixType > &R_matrix, Eigen::MatrixBase< RPiSMatrixType > &R_pi_s_matrix, Eigen::MatrixBase< RSMatrixType > &R_s_matrix) |
static std::array< std::pair< std::size_t, int >, 2 > | getBHEInflowDirichletBCNodesAndComponents (std::size_t const top_node_id, std::size_t const, int const in_component_id) |
static std::optional< std::array< std::pair< std::size_t, int >, 2 > > | getBHEBottomDirichletBCNodesAndComponents (std::size_t const bottom_node_id, int const in_component_id, int const out_component_id) |
Static Public Attributes | |
static constexpr int | number_of_unknowns = 4 |
static constexpr int | number_of_grout_zones = 2 |
static constexpr std::pair< int, int > | inflow_outflow_bc_component_ids [] |
Private Member Functions | |
std::array< double, number_of_unknowns > | calcThermalResistances (double const Nu) |
Nu is the Nusselt number. | |
Private Attributes | |
std::array< double, number_of_unknowns > | _thermal_resistances |
Additional Inherited Members | |
Public Attributes inherited from ProcessLib::HeatTransportBHE::BHE::BHECommon | |
BoreholeGeometry const | borehole_geometry |
RefrigerantProperties const | refrigerant |
GroutParameters const | grout |
FlowAndTemperatureControl const | flowAndTemperatureControl |
bool const | use_python_bcs |
Protected Attributes inherited from ProcessLib::HeatTransportBHE::BHE::BHECommonUType | |
PipeConfigurationUType const | _pipes |
double | _flow_velocity = std::numeric_limits<double>::quiet_NaN() |
Flow velocity inside the pipes. Depends on the flow_rate. | |
ProcessLib::HeatTransportBHE::BHE::BHE_1U::BHE_1U | ( | BoreholeGeometry const & | borehole, |
RefrigerantProperties const & | refrigerant, | ||
GroutParameters const & | grout, | ||
FlowAndTemperatureControl const & | flowAndTemperatureControl, | ||
PipeConfigurationUType const & | pipes, | ||
bool const | use_python_bcs ) |
Definition at line 25 of file BHE_1U.cpp.
References _thermal_resistances, ProcessLib::HeatTransportBHE::BHE::BHECommon::flowAndTemperatureControl, ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::reference_temperature, ProcessLib::HeatTransportBHE::BHE::BHECommon::refrigerant, and updateHeatTransferCoefficients().
|
inlinestatic |
Definition at line 66 of file BHE_1U.h.
References OGS_FATAL.
|
private |
Nu is the Nusselt number.
Definition at line 173 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_pipes, ProcessLib::HeatTransportBHE::BHE::BHECommon::borehole_geometry, ProcessLib::HeatTransportBHE::BHE::BoreholeGeometry::diameter, ProcessLib::HeatTransportBHE::BHE::Pipe::diameter, ProcessLib::HeatTransportBHE::BHE::PipeConfigurationUType::distance, ProcessLib::HeatTransportBHE::BHE::BHECommon::grout, ProcessLib::HeatTransportBHE::BHE::PipeConfigurationUType::inlet, ProcessLib::HeatTransportBHE::BHE::GroutParameters::lambda_g, ProcessLib::HeatTransportBHE::BHE::Pipe::outsideDiameter(), ProcessLib::HeatTransportBHE::BHE::BHECommon::refrigerant, ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::thermal_conductivity, ProcessLib::HeatTransportBHE::BHE::thermalResistancesGroutSoil(), and ProcessLib::HeatTransportBHE::BHE::Pipe::wall_thermal_conductivity.
Referenced by updateHeatTransferCoefficients().
std::array< double, BHE_1U::number_of_unknowns > ProcessLib::HeatTransportBHE::BHE::BHE_1U::crossSectionAreas | ( | ) | const |
Definition at line 255 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_pipes, ProcessLib::HeatTransportBHE::BHE::BoreholeGeometry::area(), ProcessLib::HeatTransportBHE::BHE::Pipe::area(), ProcessLib::HeatTransportBHE::BHE::BHECommon::borehole_geometry, ProcessLib::HeatTransportBHE::BHE::PipeConfigurationUType::inlet, ProcessLib::HeatTransportBHE::BHE::PipeConfigurationUType::outlet, and ProcessLib::HeatTransportBHE::BHE::Pipe::outsideArea().
|
static |
Definition at line 246 of file BHE_1U.cpp.
|
static |
Definition at line 235 of file BHE_1U.cpp.
std::array< Eigen::Vector3d, BHE_1U::number_of_unknowns > ProcessLib::HeatTransportBHE::BHE::BHE_1U::pipeAdvectionVectors | ( | Eigen::Vector3d const & | ) | const |
Definition at line 88 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_flow_velocity, ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::density, ProcessLib::HeatTransportBHE::BHE::BHECommon::refrigerant, and ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::specific_heat_capacity.
std::array< double, BHE_1U::number_of_unknowns > ProcessLib::HeatTransportBHE::BHE::BHE_1U::pipeHeatCapacities | ( | ) | const |
Definition at line 46 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::density, ProcessLib::HeatTransportBHE::BHE::BHECommon::grout, ProcessLib::HeatTransportBHE::BHE::GroutParameters::heat_cap_g, ProcessLib::HeatTransportBHE::BHE::GroutParameters::porosity_g, ProcessLib::HeatTransportBHE::BHE::BHECommon::refrigerant, ProcessLib::HeatTransportBHE::BHE::GroutParameters::rho_g, and ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::specific_heat_capacity.
std::array< double, BHE_1U::number_of_unknowns > ProcessLib::HeatTransportBHE::BHE::BHE_1U::pipeHeatConductions | ( | ) | const |
Definition at line 61 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_flow_velocity, ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_pipes, ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::density, ProcessLib::HeatTransportBHE::BHE::BHECommon::grout, ProcessLib::HeatTransportBHE::BHE::GroutParameters::lambda_g, ProcessLib::HeatTransportBHE::BHE::PipeConfigurationUType::longitudinal_dispersion_length, ProcessLib::HeatTransportBHE::BHE::GroutParameters::porosity_g, ProcessLib::HeatTransportBHE::BHE::BHECommon::refrigerant, ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::specific_heat_capacity, and ProcessLib::HeatTransportBHE::BHE::RefrigerantProperties::thermal_conductivity.
|
inline |
Definition at line 133 of file BHE_1U.h.
References _thermal_resistances.
double ProcessLib::HeatTransportBHE::BHE::BHE_1U::updateFlowRateAndTemperature | ( | double | T_out, |
double | current_time ) |
Return the inflow temperature for the boundary condition.
Definition at line 262 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::BHECommon::flowAndTemperatureControl, and updateHeatTransferCoefficients().
void ProcessLib::HeatTransportBHE::BHE::BHE_1U::updateHeatTransferCoefficients | ( | double const | flow_rate | ) |
Definition at line 161 of file BHE_1U.cpp.
References ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_flow_velocity, ProcessLib::HeatTransportBHE::BHE::BHECommonUType::_pipes, _thermal_resistances, ProcessLib::HeatTransportBHE::BHE::BHECommon::borehole_geometry, calcThermalResistances(), ProcessLib::HeatTransportBHE::BHE::calculateThermoMechanicalFlowPropertiesPipe(), ProcessLib::HeatTransportBHE::BHE::PipeConfigurationUType::inlet, ProcessLib::HeatTransportBHE::BHE::BoreholeGeometry::length, and ProcessLib::HeatTransportBHE::BHE::BHECommon::refrigerant.
Referenced by BHE_1U(), and updateFlowRateAndTemperature().
|
private |
PHI_fig, PHI_fog, PHI_gg, PHI_gs; Here we store the thermal resistances needed for computation of the heat exchange coefficients in the governing equations of BHE. These governing equations can be found in 1) Diersch (2013) FEFLOW book on page 958, M.3, or 2) Diersch (2011) Comp & Geosci 37:1122-1135, Eq. 90-97.
Definition at line 168 of file BHE_1U.h.
Referenced by BHE_1U(), thermalResistance(), and updateHeatTransferCoefficients().
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |