Furnace temperature and pressure math

From Unofficial Stationeers Wiki

The data used was collected in version 0.2.2800.

Furnace behaviour[edit]

  • Only the gas inside the furnace have temperature, the furnace itself do not, nor does it take any energy from the gas.
  • For a combustion to occur, there must be at least 5% each of both O2 and H2
  • For a combustion to occur, there must be a minimum pressure of 10 kPa (0.2.2733.13309 changelog)
  • A combustion will consume 95% of the limiting ingredient, O2 or H2 (if there is 10 mol H2, and excess O2, 0.5 mol H2 will remain afterwards)
  • Combustion reaction formula: 1 O2 + 2 H2 -> 6 CO2 + 3 X + 595kJ (see discussions for the 595kJ value)
  • No side reactions have been observed so far

Regular furnace

  • The inlet pipe will only allow gas to enter the furnace, and it will only do so if the pressure in the pipe is higher than the pressure inside the furnace. This behaviour is similar to that of the pressure regulator.
  • The outlet pipe acts like an extension of the furnace, increasing it's volume by 100L per pipe section, and it can be used as an alternative inlet point if so desired (but it acts a little bit quirky, the pipe and the furnace will have different %gas proportions when doing so, because the gas will only move when there is a pressure difference between the two). A larger furnace volume basically only means it will require a bit more gas, +10% more mol for each unsealed pipe section attached to it, everything else will be the same. The number of junctions on a pipe doesn't matter, the volume is always 100L.
  • Removing pipes connected to the outlet side should be avoided when the furnace is filled with fuel, doing so can cause some of the gas to vanish permanently.

Advanced furnace

  • The inlet pipe is the only place where gas can enter the furnace (not counting the ore slot). It has a built in volume pump.
  • The outlet pipe is the only place where gas can exit the furnace. It has a built in volume pump.
  • Unlike the regular furnace, the advanced one always have a volume of 1000 L, regardless of how many pipes are attached to it. This saves a little bit of fuel.

Using perfect 2:1 fuel[edit]

Temperature peak

  • T(after) = ( T(before)*61.9 + 565250 ) / 234.515
    • T(after) is the temperature in Kelvin after ignition
    • T(before) is the temperature in Kelvin before ignition
    • The 565250 value is because of the 95% combustion efficiency, the full 595kJ isn't released
    • 61.9 is the heat capacity for 1 mol O2 and 2 mol H2, the sum of their specific heat values, the mol amounts comes from the reaction formula
    • 234.515 is the heat capacity for the gas obtained when 1 mol O2 and 2 mol H2 combusts with 95% efficiency (243.6 * 0.95 + 61.9 * 0.05)
  • The number of mol combusted doesn't actually matter for the temperature, it will always reach the same value. More fuel will however release more total energy which means it takes longer for the furnace to cool down.

Pressure peak

  • P(after) = 2.9 * P(before) * T(after) / T(before)
    • P(after) is the pressure in Pa after ignition
    • P(before) is the pressure in Pa before ignition
    • T(after) is the temperature in Kelvin after ignition
    • T(before) is the temperature in Kelvin before ignition
    • 2.9 is the multiple of the number of mol inside the furnace after combustion with 95% efficiency based on the reaction formula

Using diluted fuel[edit]

Unreactive gases can be added before the ignition to increase pressure and decrease temperature. An excess of either O2 or H2 also counts as unreactive. These equations aren't pretty, and they are not intentended for direct use. They are however a necessary stepping stone for a section below, where it's calculated which ratios of fuel and unreactive gas one needs to reach a desired temperature and pressure upon ignition. Those equations end up looking nicer.

Temperature peak

  • T(after) = ( T(before) * sum(specific heat * ratio(gas)(before)) + min(ratio(O2), ratio(H2)*0.5) * 565250 ) / ( sum(specific heat * ratio(gas)(before)) + min(ratio(O2), ratio(H2)*0.5) * 172.615)
    • T(after) is the temperature in Kelvin after ignition
    • T(before) is the temperature in Kelvin before ignition
    • sum(x*y) is the sum of all x*y products, one product for every gas in the mix, before ignition
    • specific heat is the value given for each gas, it's how much energy is needed to increase the temperature by 1K/mol
    • ratio(gas)(before) is the molecular ratio, given by the tablet as % values for each gas in the mix, before ignition
    • min(x,y) returns the smallest value of x and y
    • 565250 comes from 595000*0.95, the energy released when 1 mol O2 and 2 mol H2 combusts with 95% efficiency
    • 172.615 comes from 0.95*(243.6-61.9), this is the change in heat capacity (specific heat*number of mol) of the gas when 1 mol O2 and 2 mol H2 combusts with 95% efficiency into its new compounds
    • The equation comes from calculating the Thermal Energy (temperature*specific heat per mol) before combustion, add the released energy calculated from the ratio of O2, then divide with the specific heat per mol of the gas obtained after combustion, which is known thanks to the reaction formula, all of this becomes the temperature on ignition

Pressure peak

  • P(after) = P(before) * T(after) * ( 1 + 5.7*min(ratio(O2), ratio(H2)*0.5) ) / T(before)
    • this expression comes from two sets of PV=nRT, one after and one before combustion. The reaction formula say that for each mol consumed O2 we gain 6 mol gas (9-3), this creates a link between the equations, n(after) = n(before)*(1+min(ratio(O2), ratio(H2)*0.5)*6), then include the 0.95 efficiency as well

Using Ice(Oxite) and Ice(Volatiles)[edit]

There is a minor difference between which ice is added first. One can also observe a fluctuation in the combustion efficiency compared to when a furnace is fueled with gas. The end result also matters a little bit on how fast the ignition button is pressed when the first ice type is added while doing larger batches.

small batch, oxite first

  • Adding 1 oxite + 1 volatile, in that order
    • Temperature: 2222K, Pressure: 2.03MPa, moles of O2/H2 combusted: 11/21, Combustion efficiency (H2 limited): 95%
  • Adding 1 oxite + 2 volatiles, in that order
    • Temperature: 2514K, Pressure: 4.13MPa, moles of O2/H2 combusted: 22/43, Combustion efficiency (H2 limited): 98%

small batch, volatiles first

  • Adding 1 volatile + 1 oxite, in that order
    • Temperature: 2224K, Pressure: 2.03MPa, moles of O2/H2 combusted: 11/21, Combustion efficiency (H2 limited): 95%
  • Adding 2 volatiles + 1 oxite, in that order
    • Temperature: 2432K, Pressure: 3.93MPa, moles of O2/H2 combusted: 21/42, Combustion efficiency (H2 limited): 95%

large batch, oxite first

  • Adding 5 oxite + 10 volatiles, in that order
    • Temperature: 2463K, Pressure: 18.76MPa, moles of O2/H2 combusted: 96/190, Combustion efficiency (H2 limited): 86%
  • Adding 8 oxite + 16 volatiles, in that order
    • Temperature: 2537K, Pressure: 33.28MPa, moles of O2/H2 combusted: 172/344, Combustion efficiency (H2 limited): 98%

The difference in combustion efficiency is a mystery. One possibility is that this deviation is a result of multiple consecutive ignitions during the same game tick as the second ice is added, and then the gassy products are added on the following tick. Whatever the reason, using ice in a furnace creates some unpredictability, which give calculations a certain degree of error. So instead of using math, it seems better to write down a table of temperatures and pressure resulting from different amounts of ice.

Empty furnace, oxite first, no pipes attached
Ice 1 oxite 2 oxite 3 oxite 4 oxite 5 oxite 6 oxite 7 oxite 8 oxite
1 volatile 2222K
 ?  ?  ?  ?  ?  ? 1094K
2 volatile 2514K
 ?  ?  ?  ?  ?  ?  ?
3 volatile  ?  ?  ?  ?  ?  ?  ?  ?
4 volatile  ?  ?  ?  ?  ?  ?  ?  ?
5 volatile  ?  ?  ?  ?  ?  ?  ?  ?
6 volatile  ?  ?  ?  ?  ?  ?  ?  ?
7 volatile  ?  ?  ?  ?  ?  ?  ?  ?
8 volatile  ?  ?  ?  ?  ?  ?  ?  ?
9 volatile  ?  ?  ?  ?  ?  ?  ?  ?
10 volatile  ?  ?  ?  ? 2463K
 ?  ? 2400K
11 volatile  ?  ?  ?  ?  ?  ?  ? 2451K
12 volatile  ?  ?  ?  ?  ?  ?  ?  ?
13 volatile  ?  ?  ?  ?  ?  ?  ?  ?
14 volatile  ?  ?  ?  ?  ?  ?  ?  ?
15 volatile  ?  ?  ?  ?  ?  ?  ?  ?
16 volatile  ?  ?  ?  ?  ?  ?  ? 2537K

Furnace cooling rate (unfinished)[edit]



  • the rate of cooling is temperature dependent, hotter cools faster (furnace temp - surrounding temp? how do vaccum behave?)
  • the rate of cooling is time dependent (game tick speed is once per 0.5 seconds)
  • the rate of cooling is mol dependent (small amounts cool faster)
  • pipes attached to the exhaust effect the cooling rate, and since they effectively increase the volume of the furnace the amount of mol of hot gas will be different too
  • adding ores decreases the temperature (do melting cost energy? or is this just from heating the trapped gases inside the ore?)

Possible experimental setup to measure dT/dt

  • Hold a tablet with an atmos cartridge in the right hand (so it can be read when the game is paused). Aim the tablet against the furnace and pause with ESC, double tap ESC to move the game forward one tick, record the temperatures.
  • Remember to record the total amount of moles as well

Resetting the furnace[edit]

Since only gas have temperature, evacuating all gas means resetting the temperature.

Calculating how to reach a desired Temperature and Pressure on ignition[edit]

There are only 4 variables required for this calculation.

  1. Intial fuel mix temperature (furnace temperature before ignition)
  2. Desired temperature on ignition (you choose)
  3. Desired pressure on ignition (you choose)
  4. The specific heat value of the gas used to dilute the fuel (if a mix of gases is used, the specific heat to use is the average specific heat per mol, example calculation below)

The equations will give these results

  1. The ratio(fuel) in the fuel-dilutant mix. (0.75 means 75% perfect 1:2 fuel mols (O2 and H2 added together)†, the other 25% will be dilutant gas mols, making it a 1:2:1 mix of O2:H2:dilutant)
  2. The total pressure of the fuel-dilutant mix inside the furnace before ignition

†It's helpful to separate out the fuel part like this since everyone should be using pre-mixed fuel, it makes the diluting easier and has a lower risk to cause confusion when using either O2 or H2 to be the dilutant gas

To freely control the temperature and pressure, the fuel must be diluted with a non-combustable gas. This can be added either before or after ignition, doing so before ignition makes it alot easier to predict, doing so after ignition is more of an art than a science (it depends on how the furnace is built and how fast the operator can work). The method prefered here is to add the non-combustable gas before ignition.

Diluting the fuel can be done in the furnace directly or in pipes outside of it. There are good and bad points with both ways. Diluting outside fits the advanced furnace best (the built-in volume pump can easily move all of the prepared gas inside), diluting inside fits the regular furnace best (the exhaust outlet can be used as an inlet but it's a little bit quirky, and diluting in pipes outside means not all of the prepared gas can be moved into the furnace (the pipe directly on the furnace inlet will hold on to some of the diluted fuel) so extra gas must always be prepared).

It is worth noting that for some temperatures and pressures suitable for advanced alloys, the calculation can suggest a fuel ratio below 0.15. This will not work however, since it means having less than 5% oxygen, that mix will not combust (unless the dilutant contains extra oxygen).

The dilution can be double checked by using the tablet and looking at the mol% values for the fuel mix. If the outlet on the regular furnace was used as an inlet, the first gas that entered there will have been mostly pushed back into the furnace, making the mol% values diffrent but the total number of mol are still the same.

Calculating the fuel ratio

  • ratio(fuel) = s*( T(after) - T(before) ) / ( 188417 + T(before)*(20.633 - s) - T(after)*(78.172 - s) )
    • ratio(fuel), 1 = 100% fuel which is 33.33% O2 and 66.67% H2
    • T(after) is the chosen temperature after ignition, in K
    • T(before) is the furnace temperature before ignition, in K
    • s = specific heat of diluting gas
      • if the dilutant is a mix of gases, calculate the average specific heat in that mix per mol
      • example: 15% N2 and 85% CO2 as dilutant -> specific heat = 0.15*20.6 + 0.85*28.2 = 27.06
  • This equation comes from the equation under Using diluted fuel, it was arrived at by doing the following things
    • ratio(fuel) was introduced (which is 3 times higher than min(ratio(O2),ratio(H2)*0.5), everyone should be using pre-mixed fuel so this should make things simpler, having 1 represent 100% fuel is also more intutive than having 0.333 mean 100% fuel
    • everything is calculated per 1 mol fuel here, the original one uses per 3 mol fuel (1 mol O2 + 2 mol H2), so several values must be divided by 3
    • the dilutant (even a mix) can be treated as a single gas, which turns sum(specific heat * mol of gas (before)) into ratio(fuel)*(specific heat(O2)+2*specific heat(H2) )/3 + (1-ratio(fuel))*specific heat(dilutant)
    • min(ratio(O2),ratio(H2)*0.5) will now always be ratio(fuel)/3, so it can be replaced with that
    • without any rounding the formula is: ratio(fuel) = s*(T(after) - T(before)) / ( T(before)*(61.9/3-s) + (0.95*595000/3) - T(after)*(61.9/3-s) - T(after)*(0.95*181.7/3) )

Calculating the pressure before ignition

  • P(before) = P(after)*T(before) / ( T(after) * (1 + ratio(fuel)*1.9) )
    • ratio(fuel) is the result from the temperature calculation above
    • P(after) = the chosen pressure value, in Pa
    • T(before) = temperature of fuel mix in the furnace before ignition, in K
    • T(after) = the chosen value used in the temperature calculation above, in K
  • This equation was arrived at by starting with the one under Using diluted fuel and replacing min(ratio(O2),ratio(H2)*0.5) with ratio(fuel)/3

Diluting fuel

Mixing gas is temperature sensitive. This is because pressure is used as an indirect measure of the amount of mol (n=PV/(RT)) being transfered, and pressure is also dependent on temperature. It is however possible to get around this issue with a bit of math.

A) When fuel and dilutant have the same temperature

  • Add the fuel
    • fuel pressure = ratio(fuel) * P(before)
  • Add the dilutant until the pressure P(before) is reached

B) When fuel and dilutant have different temperature

  • T(mix) = sum( T(before)*ratio(after)*sh ) / sum( ratio(after)*sh )
    • T(mix) is the temperature after combining all gases
    • T(before) is the temperature that each individual gas compound involved (O2, H2, CO2 etc) has before mixing them
    • ratio(after) is a value between 0 and 1, the %mol ratio, in the final mix
    • sh is the specific heat for each individual gas

(same thing, different way of writing it)

  • T(mix) = ( T(fuel)*ratio(fuel)*20.633 + T(dilutant)*ratio(dilutant)*s ) / ( ratio(fuel)*20.633 + ratio(dilutant)*s )
    • T(mix) is the temperature after combining the fuel and dilutant
    • T(fuel) is the temperature of the fuel before mixing
    • T(dilutant) is the temperature of the dilutant before mixing
    • ratio(fuel) is the ratio of fuel after mixing everything
    • ratio(dilutant) is the ratio of dilutant after mixing everything
    • s is the specific heat of the dilutant (if the dilutant is a mix of gases, see example under the calculation for ratio(fuel) above)

Mixing fuel and dilutant of different temperature

  • Add the fuel
    • fuel pressure = ratio(fuel) * P(before) * T(fuel) / T(mix)
  • Add the dilutant
    • keep adding until the pressure P(before) is reached
  • The temperature should now be the same as the calculated T(mix) value, unless there was warming or cooling of the gases during the mixing process (in that case, the fuel-dilutant mix has slightly too much or too little dilutant in it, use the tablet to check the ratio of H2 or O2)

Double-checking the fuel-dilutant mix

Use the tablet with the amtospherics cartridge and compare the measured mol% with one of the following equations. If neither O2 nor H2 is used as dilutant, they will both give the same result.

  • When O2 is in excess
    • ratio(H2) = ratio(fuel)*2/3
  • When H2 is in excess
    • ratio(O2) = ratio(fuel)/3

Example calculation[edit]

It's a warm and sunny day on Europa and a stationeer wants to make some invar. The desired temperature and pressure will be chosen as be the upper limit for invar, so 1500K and 20MPa. Adding ore to the furnace will reduce its temperature and increase the amount of gas (and pressure) inside of it, but the stationeer hopes that 100g of invar will be too little to have much of an effect. The furnace is exposed to the atmosphere and will be loosing temperature and pressure fairly fast which could be an issue, but making the alloy should be quick enough. The dilutant gas will be pure O2 from the atmosphere, which has a specific heat value of 21.1. The starting temperature of the fuel and the atmosphere are both at -140°C.

  • ratio(fuel) = s*( T(after) - T(before) ) / ( 188417 + T(before)*(20.633 - s) - T(after)*(78.172 - s) )
    • s = specific heat of the dilutant = 21.1
    • T(after) = 1500K (this is the chosen value)
    • T(before) = -140C = 133K (temperature inside the furnace before ignition)
  • ratio(fuel) = 0.28073
  • This is high enough for combustion to occur
    • H2 is the limiting gas, so %H2 = ratio(fuel)*2/3 = 5%, solving for ratio(fuel) gives the value 0.075, so ratio(fuel) must be above this number to ignite, which it is

The necessary pressure of the pre-ignition fuel mix inside the furnace will be

  • P(before) = P(after)*T(before) / ( T(after) * (1 + ratio(fuel)*1.9) )
    • ratio(fuel) = 0.28073
    • P(after) = 20MPa (this is the chosen value)
    • T(before) = -140C = 133K
    • T(after) = 1500K (this is the chosen value used in the temperature calculation)
  • P(before) = 1156.5kPa

Dilution calculations

  • The needed pressure of pure fuel inside the furnace will be
    • P(fuel) = ratio(fuel) * P(before) = 0.28073 * 1156.5kPa = 324.66kPa
  • The dilutant will then be added to the furnace to reach the P(before) pressure at 1.16MPa
  • The ratio of H2 inside the furnace before ignition can be checked with the tablet, it should be
    • ratio(H2) = 0.28073 * 2/3 = 0.18715 = 19%

After adding fuel and dilutant, the furnace was ignited. Adding the ores reduced the temperature and increased the pressure a bit, which pushed the pressure up above 20MPa and out of the needed range. After waiting for the pressure to drop back down, the temperature was still high enough to make the desired alloy with several seconds to spare. In hindsight, 20MPa was a bit too high and 1500K a bit too low, so better values could definately have been chosen.

Reloading the save and placing the furnace inside a welded frame to insulate it (no loss of temperature or pressure) showed the following. The furnace reached 1477K and 19.90MPa after ignition. The fuel was added with a regulator (the furnace showed: 325kPa, 133K), the fuel mix was decent but not a perfect 1:2. Then the diluting O2 was added, it was slightly too cold (the furnace now showed: 1.16MPa, 130K), so a bit too much dilutant ended up in the furnace (since cold gas has a lower pressure). The dilutant was inserted via the furnace outlet, checking the mol% with the tablet showed 3% H2 in the outlet pipe and 20% inside the furnace instead of 19% in both, the total number of H2 mol was unchanged. The observed loss of temperature is a result from using too much dilutant, using a lower starting temperature and a flawed fuel mix. But it's still very close to the desired value. The lower pressure is related to the temperature, going from 1500K to 1477K should mean -1.5% pressure, but the change was just -0.5%, another indication that too much dilutant had been added. Everything was built outdoors and exposed to the daily temperature cycle.