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
)

Arguments

year

year when the pipe is put in operation after laying or total overhaul. Type: assert_integerish

laying

type of pipe laying depicting the position of pipe in space:

  • air,

  • channel,

  • room,

  • tunnel,

  • underground.

Type: assert_subset.

exp5k

pipe regime flag: is pipe operated more that 5000 hours per year? Type: assert_logical.

insulation

insulation that covers the exterior of pipe:

0

no insulation

1

foamed polyurethane or analogue

2

polymer concrete

Type: assert_integer and assert_subset.

d

internal diameter of pipe, [mm]. Type: assert_double.

temperature

temperature of heat carrier (water) inside the pipe, [°C]. Type: assert_double.

len

length of pipe, [m]. Type: assert_double.

duration

duration of heat flux emittance, [hour]. Type: assert_double.

beta

should they consider additional heat losses of fittings? Type: assert_logical.

extra

number of points used for temperature extrapolation: 2, 3, or 4. Type: assert_choice.

Value

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.

Details

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.

Examples


 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)
   )
 )
})