Contains information regarding the physical dimensions and thermal
characteristics of the pipes and the grout material, as well as methods to
evaluate fluid temperatures and heat extraction rates based on the work of
Hellstrom [1]. Internal borehole thermal resistances
are evaluated using the multipole method of Claesson and Hellstrom
[2].
Notes
The expected array shapes of input parameters and outputs are documented
for each class method. nInlets and nOutlets are the number of inlets
and outlets to the borehole, and both are equal to 1 for a coaxial
borehole. nSegments is the number of discretized segments along the
borehole. nPipes is the number of pipes (i.e. the number of U-tubes) in
the borehole, equal to 1. nDepths is the number of depths at which
temperatures are evaluated.
The effective borehole thermal resistance is evaluated using the method
of Cimmino [3]. This is valid for any number of pipes.
References
Attributes:
postuple
Position (x, y) (in meters) of the pipes inside the borehole.
r_in(2,) array
Inner radii (in meters) of the coaxial pipes. The first element of the
array corresponds to the inlet pipe.
r_out(2,) array
Outer radii (in meters) of the coaxial pipes. The first element of the
array corresponds to the inlet pipe.
boreholeBorehole object
Borehole class object of the borehole containing the U-Tube.
k_sfloat
Soil thermal conductivity (in W/m-K).
k_gfloat
Grout thermal conductivity (in W/m-K).
R_fffloat
Fluid to fluid thermal resistance of the inner pipe to the outer pipe
(in m-K/W).
R_fpfloat
Fluid to outer pipe wall thermal resistance of the outer pipe in
contact with the grout (in m-K/W).
Jint, optional
Number of multipoles per pipe to evaluate the thermal resistances.
Default is 2.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nSegments, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nSegments, nSegments,) array
Array of coefficients for borehole wall temperatures.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_qf(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Depths (in meters) to evaluate the fluid temperature coefficients.
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rate (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in
(2*nPipes, nInlets,) array, or (nDepths, 2*nPipes, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b
(2*nPipes, nSegments,) array, or (nDepths, 2*nPipes, nSegments,) array
Array of coefficients for borehole wall temperatures.
where \(Q_b\) is the borehole heat extraction rate (in Watts),
\(H\) is the borehole length, \(T^*_b\) is the effective
borehole wall temperature, \(R^*_b\) is the effective borehole
thermal resistance, \(T_{f,in}\) is the inlet fluid temperature,
and \(T_{f,out}\) is the outlet fluid temperature.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_bfloat or (nSegments,) array
Heat extraction rates along each borehole segment (in Watts). The
returned type corresponds to the type of the parameter T_b.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_ffloat or (nOutlets,) array
Heat extraction rates from each fluid circuit (in Watts). The
returned type corresponds to the type of the parameter T_f_in.
Returns the inlet fluid temperatures of the borehole.
Parameters:
Q_ffloat or (nInlets,) array
Heat extraction from the fluid circuits (in Watts).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_infloat or (nOutlets,) array
Inlet fluid temperatures (in Celsius) into each inlet pipe. The
returned type corresponds to the type of the parameter Q_f.
Returns the outlet fluid temperatures of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f_outfloat or (nOutlets,) array
Outlet fluid temperatures (in Celsius) from each outlet pipe. The
returned type corresponds to the type of the parameter T_f_in.
Returns the fluid temperatures of the borehole at a depth (z).
Parameters:
zfloat or (nDepths,) array
Depths (in meters) to evaluate the fluid temperatures.
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f(2*nPipes,) or (nDepths, 2*nPipes,) array
Fluid temperature (in Celsius) in each pipe. The returned shape
depends on the type of the parameter z.
Returns the total heat extraction rate of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_tfloat
Total net heat extraction rate of the borehole (in Watts).
Evaluate the local (cross-sectional) borehole thermal resistance,
defined by:
\[Q'_b(z) = \frac{T_b(z) - \bar{T}_f(z)}{R_b}\]
where \(Q'_b(z)\) is the borehole heat extraction rate per unit
depth at a depth \((z)\), \(T_b(z)\) is the borehole wall
temperature, \(\bar{T}_f(z)\) is the arithmetic mean fluid
temperature and \(R_b\) is the local borehole thermal resistance.
This methods updates the values of the delta-circuit thermal
resistances based on the provided fluid to fluid and fluid to outer
pipe wall thermal resistances.
Parameters:
R_fffloat
Fluid to fluid thermal resistance of the inner pipe to the outer
pipe (in m-K/W).
R_fpfloat
Fluid to outer pipe wall thermal resistance of the outer pipe in
contact with the grout (in m-K/W).
Class for multiple U-Tube boreholes with independent U-tubes.
Contains information regarding the physical dimensions and thermal
characteristics of the pipes and the grout material, as well as methods to
evaluate fluid temperatures and heat extraction rates based on the work of
Cimmino [4], [5] for boreholes with any number of
U-tubes. Internal borehole thermal resistances are evaluated using the
multipole method of Claesson and Hellstrom [6].
Notes
The expected array shapes of input parameters and outputs are documented
for each class method. nInlets and nOutlets are the number of inlets
and outlets to the borehole, and both are equal to the number of pipes.
nSegments is the number of discretized segments along the borehole.
nPipes is the number of pipes (i.e. the number of U-tubes) in the
borehole. nDepths is the number of depths at which temperatures are
evaluated.
References
Attributes:
poslist of tuples
Position (x, y) (in meters) of the pipes inside the borehole.
r_infloat
Inner radius (in meters) of the U-Tube pipes.
r_outfloat
Outer radius (in meters) of the U-Tube pipes.
boreholeBorehole object
Borehole class object of the borehole containing the U-Tube.
k_sfloat
Soil thermal conductivity (in W/m-K).
k_gfloat
Grout thermal conductivity (in W/m-K).
R_fpfloat
Fluid to outer pipe wall thermal resistance (m-K/W).
Jint, optional
Number of multipoles per pipe to evaluate the thermal resistances.
Default is 2.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nSegments, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nSegments, nSegments,) array
Array of coefficients for borehole wall temperatures.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_qf(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Depths (in meters) to evaluate the fluid temperature coefficients.
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rate (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in
(2*nPipes, nInlets,) array, or (nDepths, 2*nPipes, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b
(2*nPipes, nSegments,) array, or (nDepths, 2*nPipes, nSegments,) array
Array of coefficients for borehole wall temperatures.
where \(Q_b\) is the borehole heat extraction rate (in Watts),
\(H\) is the borehole length, \(T^*_b\) is the effective
borehole wall temperature, \(R^*_b\) is the effective borehole
thermal resistance, \(T_{f,in}\) is the inlet fluid temperature,
and \(T_{f,out}\) is the outlet fluid temperature.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_bfloat or (nSegments,) array
Heat extraction rates along each borehole segment (in Watts). The
returned type corresponds to the type of the parameter T_b.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_ffloat or (nOutlets,) array
Heat extraction rates from each fluid circuit (in Watts). The
returned type corresponds to the type of the parameter T_f_in.
Returns the inlet fluid temperatures of the borehole.
Parameters:
Q_ffloat or (nInlets,) array
Heat extraction from the fluid circuits (in Watts).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_infloat or (nOutlets,) array
Inlet fluid temperatures (in Celsius) into each inlet pipe. The
returned type corresponds to the type of the parameter Q_f.
Returns the outlet fluid temperatures of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f_outfloat or (nOutlets,) array
Outlet fluid temperatures (in Celsius) from each outlet pipe. The
returned type corresponds to the type of the parameter T_f_in.
Returns the fluid temperatures of the borehole at a depth (z).
Parameters:
zfloat or (nDepths,) array
Depths (in meters) to evaluate the fluid temperatures.
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f(2*nPipes,) or (nDepths, 2*nPipes,) array
Fluid temperature (in Celsius) in each pipe. The returned shape
depends on the type of the parameter z.
Returns the total heat extraction rate of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_tfloat
Total net heat extraction rate of the borehole (in Watts).
Evaluate the local (cross-sectional) borehole thermal resistance,
defined by:
\[Q'_b(z) = \frac{T_b(z) - \bar{T}_f(z)}{R_b}\]
where \(Q'_b(z)\) is the borehole heat extraction rate per unit
depth at a depth \((z)\), \(T_b(z)\) is the borehole wall
temperature, \(\bar{T}_f(z)\) is the arithmetic mean fluid
temperature and \(R_b\) is the local borehole thermal resistance.
Contains information regarding the physical dimensions and thermal
characteristics of the pipes and the grout material, as well as methods to
evaluate fluid temperatures and heat extraction rates based on the work of
Cimmino [7], [8] for boreholes with any number of
U-tubes. Internal borehole thermal resistances are evaluated using the
multipole method of Claesson and Hellstrom [9].
Notes
The expected array shapes of input parameters and outputs are documented
for each class method. nInlets and nOutlets are the number of inlets
and outlets to the borehole, and both are equal to 1 for a multiple U-tube
borehole. nSegments is the number of discretized segments along the
borehole. nPipes is the number of pipes (i.e. the number of U-tubes) in
the borehole. nDepths is the number of depths at which temperatures are
evaluated.
The effective borehole thermal resistance is evaluated using the method
of Cimmino [10]. This is valid for any number of pipes.
References
Attributes:
poslist of tuples
Position (x, y) (in meters) of the pipes inside the borehole.
r_infloat
Inner radius (in meters) of the U-Tube pipes.
r_outfloat
Outer radius (in meters) of the U-Tube pipes.
boreholeBorehole object
Borehole class object of the borehole containing the U-Tube.
k_sfloat
Soil thermal conductivity (in W/m-K).
k_gfloat
Grout thermal conductivity (in W/m-K).
R_fpfloat
Fluid to outer pipe wall thermal resistance (m-K/W).
Jint, optional
Number of multipoles per pipe to evaluate the thermal resistances.
Default is 2.
nPipesint
Number of U-Tubes.
configstr, defaults to ‘parallel’
Configuration of the U-Tube pipes:
‘parallel’ : U-tubes are connected in parallel.
‘series’ : U-tubes are connected in series.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nSegments, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nSegments, nSegments,) array
Array of coefficients for borehole wall temperatures.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_qf(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Depths (in meters) to evaluate the fluid temperature coefficients.
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rate (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in
(2*nPipes, nInlets,) array, or (nDepths, 2*nPipes, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b
(2*nPipes, nSegments,) array, or (nDepths, 2*nPipes, nSegments,) array
Array of coefficients for borehole wall temperatures.
where \(Q_b\) is the borehole heat extraction rate (in Watts),
\(H\) is the borehole length, \(T^*_b\) is the effective
borehole wall temperature, \(R^*_b\) is the effective borehole
thermal resistance, \(T_{f,in}\) is the inlet fluid temperature,
and \(T_{f,out}\) is the outlet fluid temperature.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_bfloat or (nSegments,) array
Heat extraction rates along each borehole segment (in Watts). The
returned type corresponds to the type of the parameter T_b.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_ffloat or (nOutlets,) array
Heat extraction rates from each fluid circuit (in Watts). The
returned type corresponds to the type of the parameter T_f_in.
Returns the inlet fluid temperatures of the borehole.
Parameters:
Q_ffloat or (nInlets,) array
Heat extraction from the fluid circuits (in Watts).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_infloat or (nOutlets,) array
Inlet fluid temperatures (in Celsius) into each inlet pipe. The
returned type corresponds to the type of the parameter Q_f.
Returns the outlet fluid temperatures of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f_outfloat or (nOutlets,) array
Outlet fluid temperatures (in Celsius) from each outlet pipe. The
returned type corresponds to the type of the parameter T_f_in.
Returns the fluid temperatures of the borehole at a depth (z).
Parameters:
zfloat or (nDepths,) array
Depths (in meters) to evaluate the fluid temperatures.
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f(2*nPipes,) or (nDepths, 2*nPipes,) array
Fluid temperature (in Celsius) in each pipe. The returned shape
depends on the type of the parameter z.
Returns the total heat extraction rate of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_tfloat
Total net heat extraction rate of the borehole (in Watts).
Evaluate the local (cross-sectional) borehole thermal resistance,
defined by:
\[Q'_b(z) = \frac{T_b(z) - \bar{T}_f(z)}{R_b}\]
where \(Q'_b(z)\) is the borehole heat extraction rate per unit
depth at a depth \((z)\), \(T_b(z)\) is the borehole wall
temperature, \(\bar{T}_f(z)\) is the arithmetic mean fluid
temperature and \(R_b\) is the local borehole thermal resistance.
Contains information regarding the physical dimensions and thermal
characteristics of the pipes and the grout material, as well as methods to
evaluate fluid temperatures and heat extraction rates based on the work of
Hellstrom [11]. Internal borehole thermal resistances
are evaluated using the multipole method of Claesson and Hellstrom
[12].
Notes
The expected array shapes of input parameters and outputs are documented
for each class method. nInlets and nOutlets are the number of inlets
and outlets to the borehole, and both are equal to 1 for a single U-tube
borehole. nSegments is the number of discretized segments along the
borehole. nPipes is the number of pipes (i.e. the number of U-tubes) in
the borehole, equal to 1. nDepths is the number of depths at which
temperatures are evaluated.
The effective borehole thermal resistance is evaluated using the method
of Cimmino [13]. This is valid for any number of pipes.
References
Attributes:
poslist of tuples
Position (x, y) (in meters) of the pipes inside the borehole.
r_infloat
Inner radius (in meters) of the U-Tube pipes.
r_outfloat
Outer radius (in meters) of the U-Tube pipes.
boreholeBorehole object
Borehole class object of the borehole containing the U-Tube.
k_sfloat
Soil thermal conductivity (in W/m-K).
k_gfloat
Grout thermal conductivity (in W/m-K).
R_fpfloat
Fluid to outer pipe wall thermal resistance (m-K/W).
Jint, optional
Number of multipoles per pipe to evaluate the thermal resistances.
Default is 2.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nSegments, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nSegments, nSegments,) array
Array of coefficients for borehole wall temperatures.
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_qf(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in(nOutlets, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b(nOutlets, nSegments,) array
Array of coefficients for borehole wall temperatures.
Depths (in meters) to evaluate the fluid temperature coefficients.
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rate (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
nSegmentsint
Number of borehole segments.
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
a_in
(2*nPipes, nInlets,) array, or (nDepths, 2*nPipes, nInlets,) array
Array of coefficients for inlet fluid temperature.
a_b
(2*nPipes, nSegments,) array, or (nDepths, 2*nPipes, nSegments,) array
Array of coefficients for borehole wall temperatures.
where \(Q_b\) is the borehole heat extraction rate (in Watts),
\(H\) is the borehole length, \(T^*_b\) is the effective
borehole wall temperature, \(R^*_b\) is the effective borehole
thermal resistance, \(T_{f,in}\) is the inlet fluid temperature,
and \(T_{f,out}\) is the outlet fluid temperature.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_bfloat or (nSegments,) array
Heat extraction rates along each borehole segment (in Watts). The
returned type corresponds to the type of the parameter T_b.
Returns the heat extraction rates of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_ffloat or (nOutlets,) array
Heat extraction rates from each fluid circuit (in Watts). The
returned type corresponds to the type of the parameter T_f_in.
Returns the inlet fluid temperatures of the borehole.
Parameters:
Q_ffloat or (nInlets,) array
Heat extraction from the fluid circuits (in Watts).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_infloat or (nOutlets,) array
Inlet fluid temperatures (in Celsius) into each inlet pipe. The
returned type corresponds to the type of the parameter Q_f.
Returns the outlet fluid temperatures of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f_outfloat or (nOutlets,) array
Outlet fluid temperatures (in Celsius) from each outlet pipe. The
returned type corresponds to the type of the parameter T_f_in.
Returns the fluid temperatures of the borehole at a depth (z).
Parameters:
zfloat or (nDepths,) array
Depths (in meters) to evaluate the fluid temperatures.
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
T_f(2*nPipes,) or (nDepths, 2*nPipes,) array
Fluid temperature (in Celsius) in each pipe. The returned shape
depends on the type of the parameter z.
Returns the total heat extraction rate of the borehole.
Parameters:
T_f_infloat or (nInlets,) array
Inlet fluid temperatures (in Celsius).
T_bfloat or (nSegments,) array
Borehole wall temperatures (in Celsius).
m_flow_boreholefloat or (nInlets,) array
Inlet mass flow rates (in kg/s) into the borehole.
cp_ffloat or (nInlets,) array
Fluid specific isobaric heat capacity (in J/kg.degC).
segment_ratios(nSegments,) array, optional
Ratio of the borehole length represented by each segment. The sum
of ratios must be equal to 1. If segment_ratios==None, segments of
equal lengths are considered.
Default is None.
Returns:
Q_tfloat
Total net heat extraction rate of the borehole (in Watts).
Evaluate the local (cross-sectional) borehole thermal resistance,
defined by:
\[Q'_b(z) = \frac{T_b(z) - \bar{T}_f(z)}{R_b}\]
where \(Q'_b(z)\) is the borehole heat extraction rate per unit
depth at a depth \((z)\), \(T_b(z)\) is the borehole wall
temperature, \(\bar{T}_f(z)\) is the arithmetic mean fluid
temperature and \(R_b\) is the local borehole thermal resistance.
where \(Q_b\) is the borehole heat extraction rate (in Watts),
\(H\) is the borehole length, \(T^*_b\) is the effective
borehole wall temperature, \(R^*_b\) is the effective borehole
thermal resistance, \(T_{f,in}\) is the inlet fluid temperature,
and \(T_{f,out}\) is the outlet fluid temperature.
Parameters:
pipepipe object
Model for pipes inside the borehole.
m_flow_boreholefloat
Fluid mass flow rate (in kg/s) into the borehole.
cp_ffloat
Fluid specific isobaric heat capacity (in J/kg.K)
Returns:
R_bfloat
Effective borehole thermal resistance (m.K/W).
Notes
The effective borehole thermal resistance is evaluated using the method
of Cimmino [14]. This is valid for any number of pipes.
Evaluate the convective heat transfer coefficient for circular pipes.
The Nusselt number must first be determined to find the convection
coefficient. Determination of the Nusselt number in turbulent flow is done
by calling _Nusselt_number_turbulent_flow(). An analytical solution
for constant pipe wall surface temperature is used for laminar flow.
Since _Nusselt_number_turbulent_flow() is only valid for Re > 3000.
and to avoid dicontinuities in the values of the convective heat transfer
coefficient near the onset of the turbulence region (approximately
Re = 2300.), linear interpolation is used over the range 2300 < Re < 4000
for the evaluation of the Nusselt number.
This approach was verified by Gnielinski (2013)
[15].
Evaluate the inner and outer convective heat transfer coefficient for the
annulus region of a concentric pipe.
Grundmann (2016) referenced Hellström (1991) [19] in the
discussion about inner and outer convection coefficients in an annulus
region of a concentric pipe arrangement.
The following is valid for \(Re < 2300\) and
\(0.1 \leq Pr \leq 1000\) :
\[\text{Nu}_{a,in} = 3.66 + 1.2(r^*)^{-0.8}\]
\[\text{Nu}_{a,out} = 3.66 + 1.2(r^*)^{0.5}\]
where \(r^* = r_{a,in} / r_{a,out}\) is the ratio of the inner over
the outer annulus radius (Çengel and Ghajar 2015, pg. 476).
Cengel and Ghajar (2015) [17] state that inner
and outer Nusselt numbers are approximately equivalent for turbulent flow.
They additionally state that Gnielinski
_Nusselt_number_turbulent_flow() can be used for turbulent flow.
Linear interpolation is used over the range 2300 < Re < 4000 for the
evaluation of the Nusselt number, as proposed by Gnielinski (2013)
[15].
Parameters:
m_flow_pipe: float
Fluid mass flow rate (in kg/s) into the pipe.
r_a_in: float
Pipe annulus inner radius (in meters).
r_a_out: float
Pipe annulus outer radius (in meters).
mu_ffloat
Fluid dynamic viscosity (in kg/m-s).
rho_ffloat
Fluid density (in kg/m3).
k_ffloat
Fluid thermal conductivity (in W/m-K).
cp_ffloat
Fluid specific heat capacity (in J/kg-K).
epsilonfloat
Pipe roughness (in meters).
Returns:
h_fluid_a_in: float
Convective heat transfer coefficient of the inner pipe annulus
region (in W/m2-K).
h_fluid_a_out: float
Convective heat transfer coefficient of the outer pipe annulus
region (in W/m2-K).
Multipole method to calculate borehole thermal resistances in a borehole
heat exchanger.
Adapted from the work of Claesson and Hellstrom [18].
Parameters:
poslist
List of positions (x,y) (in meters) of pipes around the center
of the borehole.
r_outfloat or array
Outer radius of the pipes (in meters).
r_bfloat
Borehole radius (in meters).
k_sfloat
Soil thermal conductivity (in W/m-K).
k_gfloat
Grout thermal conductivity (in W/m-K).
R_fpfloat or array
Fluid-to-outer-pipe-wall thermal resistance (in m-K/W).
Jint
Number of multipoles per pipe to evaluate the thermal resistances.
J=1 or J=2 usually gives sufficient accuracy. J=0 corresponds to the
line source approximation.
q_parray
Thermal energy flows (in W/m) from pipes.
T_bfloat
Average borehole wall temperature (in degC).
epsfloat, optional
Iteration relative accuracy.
Default is 1e-5.
it_maxint, optional
Maximum number of iterations.
Default is 100.
x_Tarray, optional
x-coordinates (in meters) to calculate temperatures.
Default is np.empty(0).
y_Tarray, optional
y-coordinates (in meters) to calculate temperatures.
Default is np.empty(0).
Evaluate thermal resistances and delta-circuit thermal resistances.
This function evaluates the thermal resistances and delta-circuit thermal
resistances between pipes in a borehole using the multipole method
[20]. Thermal resistances are defined by:
List of positions (x,y) (in meters) of pipes around the center
of the borehole.
r_outfloat or array
Outer radius of the pipes (in meters).
r_bfloat
Borehole radius (in meters).
k_sfloat
Soil thermal conductivity (in W/m-K).
k_gfloat
Grout thermal conductivity (in W/m-K).
R_fpfloat or array
Fluid-to-outer-pipe-wall thermal resistance (in m-K/W).
Jint, optional
Number of multipoles per pipe to evaluate the thermal resistances.
J=1 or J=2 usually gives sufficient accuracy. J=0 corresponds to the
line source approximation [19].
Default is 2.