Calculate normative values of heat flux that is legally affirmed by Minenergo Order 325 to be emitted by steel pipe of district heating system with water as a heat carrier.
m325nhl(
year = 1986,
laying = "underground",
exp5k = TRUE,
insulation = 0,
d = 700,
temperature = 110,
len = 1,
duration = 1,
beta = FALSE,
extra = 2
)
year when the pipe is put in operation after laying or total overhaul.
Type: assert_integerish
type of pipe laying depicting the position of pipe in space:
air
,
channel
,
room
,
tunnel
,
underground
.
Type: assert_subset
.
pipe regime flag: is pipe operated more that 5000 hours per year?
Type: assert_logical
.
insulation that covers the exterior of pipe:
0
no insulation
1
foamed polyurethane or analogue
2
polymer concrete
Type: assert_integer
and assert_subset
.
internal diameter of pipe, [mm]. Type: assert_double
.
temperature of heat carrier (water) inside the pipe, [°C].
Type: assert_double
.
length of pipe, [m]. Type: assert_double
.
duration of heat flux emittance, [hour]. Type: assert_double
.
should they consider additional heat losses of fittings?
Type: assert_logical
.
number of points used for temperature extrapolation: 2
, 3
,
or 4
. Type: assert_choice
.
Heat flux emitted by pipe during duration
, [kcal].
If len
of pipe is 1 m and duration
of heat flux
emittance is set to 1 hour then the return value is in the same
units as value of heat flux, [kcal/m/h], accepted by
Minenergo Order 325.
Type: assert_double
.
Temperature extrapolation and pipe diameter interpolation are leveraged
for better accuracy. Both are linear as it dictated by
Minenergo Order 325.
Nevertheless, one could control the extrapolation behavior by extra
argument: use lower values of extra
for soft curvature near extrapolation
edges, and higher values for more physically reasoned behavior in far regions
of extrapolation.
Other Minenergo:
m278hlair()
,
m278hlcha()
,
m278hlund()
,
m278insdata
,
m278inshcm()
,
m278soildata
,
m325beta()
,
m325dropt()
,
m325nhldata
,
m325testbench
with(m325nhldata, {
## Linear extrapolation adopted in Minenergo's Order 325 using last two points:
temperature <- seq(0, 270, 10) # [°C]
flux <- m325nhl(1980, "underground", TRUE, 0, 73, temperature) # [kcal/m/h]
plot(temperature, flux, type = "b")
## Consider heat losses of fittings:
stopifnot(
## when beta becomes 1.15
all(
round(
m325nhl(1980, "underground", d = 73, temperature = 65,
beta = c(FALSE, TRUE)),
3
) == c(65.500, 75.325)
),
## when beta becomes 1.2
all(
round(
m325nhl(2000, "channel", d = 73, temperature = 65,
beta = c(FALSE, TRUE)),
3
) == c(17.533, 21.040)
)
)
})