242 lines
6.8 KiB
Lua
242 lines
6.8 KiB
Lua
local fuel_values = {
|
||
--["crude-oil"] = "1.4MJ",
|
||
--["light-oil"] = "1.5MJ",
|
||
--["heavy-oil"] = "1MJ",
|
||
--["petroleum-gas"] = "1.5MJ",
|
||
--["diesel-fuel"] = "2MJ",
|
||
|
||
-- coefficient *8.35 above natural; 8.35*x (kg/liquid , m3/gas)
|
||
|
||
["gas-hydrogen"] = "150KJ", -- 10,78 МДж/м3
|
||
["hydrogen"] = "150KJ", -- 10,78 МДж/м3
|
||
["deuterium"] = "150KJ",
|
||
["gas-deuterium"] = "150KJ",
|
||
|
||
["liquid-multi-phase-oil"] = "360KJ", --21,5MДж/кг
|
||
["crude-oil"] = "734KJ",-- 44 МДж/кг
|
||
|
||
["heavy-oil"] = "660KJ", -- МАЗУТ 40
|
||
["liquid-naphtha"] = "660KJ",
|
||
|
||
["light-oil"] = "690KJ",
|
||
["liquid-fuel"] = "1140KJ",
|
||
["liquid-fuel-oil"] = "890KJ", --Gas oil 38MДж/кг
|
||
["diesel"] = "2250KJ", -- 44,8-43,5 МДж/кг
|
||
["diesel-fuel"] = "2250KJ", --375KJ
|
||
["gasoline"] = "1540KJ", -- 46 МДж/кг, 32,7 МДж/литр
|
||
["kerosene"] = "1436KJ", -- 43 МДж/кг
|
||
|
||
["petroleum-gas"] = "700KJ",
|
||
|
||
|
||
["gas-natural-1"] = "560KJ", -- 33,5 МДж/м3
|
||
["gas-raw-1"] = "500KJ",
|
||
["liquid-ngl"] = "780KJ", -- 46,8 МДж/кг
|
||
|
||
["gas-methane"] = "558KJ", -- 33,41 МДж/м3
|
||
["gas-ethane"] = "1000KJ", -- 59,85 МДж/м3
|
||
["gas-butane"] = "1900KJ", -- 113,81 МДж/м3
|
||
|
||
["gas-propene"] = "760KJ", -- 45,6 МДж/м3
|
||
["gas-ethylene"] = "800KJ", -- 48 Мдж/м3
|
||
["gas-benzene"] = "2420KJ", -- 40.45 МДж/кг -- БЕНЗОЛ
|
||
|
||
["gas-chlor-methane"] = "432KJ",
|
||
|
||
["gas-butadiene"] = "1896KJ", -- butilene 113,51
|
||
["liquid-ethylbenzene"] = "2616KJ",
|
||
["liquid-styrene"] = "2600KJ", --42,6 МДж/кг
|
||
["liquid-toluene"] = "2616KJ", --156,71 Мдж/м3
|
||
["liquid-phenol"] = "1716KJ", --32.24МДж/кг
|
||
|
||
|
||
["acetylene"] = "936KJ", -- 56,04 МДж/м3
|
||
["liquid-polyethylene"] = "1796KJ", --47,2 МДж/кг
|
||
|
||
["liquid-resin"] = "1896KJ", --44,7 МДж/кг
|
||
["liquid-rubber-masterbatch"] = "1850KJ",
|
||
["liquid-rubber-pre"] = "2150KJ", --33,52 МДж/кг
|
||
["liquid-rubber"] = "2450KJ",
|
||
["liquid-plastic"] = "1920KJ", --41,87 МДж/кг
|
||
|
||
["gas-synthesis"] = "240KJ", -- 11,5 Мдж/м3
|
||
["gas-residual"] = "700KJ", -- 42 Мдж/м3
|
||
|
||
["gas-methanol"] = "360KJ", -- 21,1-22 МДж/кг
|
||
["methanol"] = "360KJ", -- 21,1-22 МДж/кг
|
||
["gas-ethanol"] = "510KJ", --30,6 МДж/кг
|
||
["gas-acetone"] = "524KJ", -- 31,4 МДж/кг
|
||
["coal-gas"] = "292KJ", -- 17,5 Мдж/м3
|
||
|
||
|
||
["gas-chloroethane"] = "155KJ", -- 9,850 кДж/кг
|
||
|
||
["gas-hydrogen-cyanide"] = "410KJ", --24,53 Энтальпия сгорания
|
||
["gas-nitrous-oxide"] = "500KJ", --не горит не выпускается - и иконка странная с зеленью хлора
|
||
["gas-vinyl-acetylene"] = "550KJ", --33,04 = 44 МДж/кг 1198,1 кДж/моль.
|
||
["gas-vinyl-chloride"] = "310KJ", --18,1 не горит не выпускается 1198,1 кДж/моль. 62,498 г/моль 18,1 МДж/кг
|
||
["liquid-acetone-cyanohydrin"] = "300KJ", --не горит не выпускается
|
||
["liquid-acrylonitrile"] = "550KJ", --33,21МДж/кг не горит не выпускается Теплота сгорания стирола 43,64МДж/кг
|
||
["liquid-dichlorobutene"] = "500KJ", --не горит не выпускается
|
||
|
||
|
||
["liquid-methyl-methacrylate"] = "450KJ", -- 25,52 МДж/кг
|
||
["liquid-cellulose-acetate"] = "310KJ", -- 18,75 МДж/кг
|
||
["liquid-acetic-anhydride"] = "255KJ", -- 15,3 МДж/кг
|
||
["liquid-raw-vegetable-oil"] = "1600KJ", -- 30 МДж/кг
|
||
["liquid-vegetable-oil"] = "2100KJ", -- 39,6 МДж/кг
|
||
|
||
|
||
["gas-enriched-hydrogen-sulfide"] = "364KJ", -- не горит не выпускается как сероводород
|
||
|
||
|
||
["gas-allylchlorid"] = "360KJ", -- 22500
|
||
["liquid-raw-fish-oil"] = "1400KJ", --26025 кДж/кг)
|
||
["liquid-fish-oil"] = "1900KJ", --36025 кДж/кг
|
||
["gas-epichlorohydrin"] = "325KJ", -- 18940 kj/kg
|
||
["liquid-glycerol"] = "310KJ", -- 17957 kj/kg
|
||
["liquid-bisphenol-a"] = "505KJ", -- 31000
|
||
["gas-ethylene-oxide"] = "430KJ", -- 27649 kJ/kg
|
||
["liquid-ethylene-carbonate"] = "250KJ", -- 14900
|
||
["gas-urea"] = "167KJ", --10550)
|
||
["gas-melamine"] = "262KJ", -- 15670
|
||
["liquid-tetraethyllead"] = "335KJ", -- 19500
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
["gas-formaldehyde"] = "280KJ", --17,26 МДж/кг
|
||
|
||
["nitroglycerin"] = "730KJ", --13,5
|
||
|
||
["gas-methylamine"] = "575KJ", --34,900
|
||
["gas-dimethylamine"] = "620KJ", --38,800
|
||
["gas-dimethylhydrazine"] = "550KJ", --33,000
|
||
|
||
["gas-hydrazine"] = "760KJ", --fuel_value = "380KJ", 14644 кДж/кг
|
||
|
||
["gas-ammonia"] = "310KJ", --18,6 Мдж/м3
|
||
["gas-hydrogen-sulfide"] = "364KJ", --21,75 Мдж/м3
|
||
|
||
|
||
["sour-gas"] = "304KJ",
|
||
["gas-acid"] = "304KJ",
|
||
|
||
|
||
["combustion-mixture1"] = "600KJ",
|
||
["combustion-mixture2"] = "600KJ",
|
||
["diborane"] = "600KJ",
|
||
["refsyngas"] = "600KJ",
|
||
["xylenol"] = "600KJ",
|
||
|
||
|
||
["solid-paper"] = "0.8MJ",
|
||
["wooden-board"] = "1MJ",
|
||
["phenolic-board"] = "4MJ",
|
||
["resin"] = "3.8MJ",
|
||
["plastic-bar"] = "5MJ",
|
||
["rubber"] = "5MJ"
|
||
|
||
|
||
}
|
||
|
||
local emissions = {
|
||
["liquid-multi-phase-oil"] = 15,
|
||
["crude-oil"] = 10,
|
||
|
||
["light-oil"] = 2,
|
||
|
||
["heavy-oil"] = 3,
|
||
["liquid-fuel-oil"] = 1.9,
|
||
["petroleum-gas"] = 1,
|
||
|
||
|
||
["diesel-fuel"] = 1.5,
|
||
|
||
["gas-hydrogen"] = -2,
|
||
|
||
["liquid-fuel-oil"] = 1.2,
|
||
|
||
["gas-methane"] = 1.1,
|
||
["gas-ethane"] = 1.5,
|
||
["gas-butane"] = 1.8,
|
||
|
||
["gas-residual"] = 4.5,
|
||
|
||
["liquid-naphtha"] = 3,
|
||
["gas-propene"] = 5,
|
||
|
||
["gas-hydrogen"] = 0.1,
|
||
["deuterium"] = 0.1,
|
||
["gas-deuterium"] = 0.1,
|
||
["gas-hydrazine"] = 0.2,
|
||
|
||
["sour-gas"] = 7,
|
||
["gas-acid"] = 7,
|
||
|
||
["gas-synthesis"] = 0.8,
|
||
["gas-ethylene"] = 2.8,
|
||
["gas-butadiene"] = 3,
|
||
|
||
["gas-benzene"] = 6.5,
|
||
["liquid-phenol"] = 6.5,
|
||
["liquid-toluene"] = 6.5,
|
||
|
||
|
||
["gas-ethanol"] = 0.7,
|
||
["liquid-ngl"] = 1.2,
|
||
["liquid-resin"] = 6.5,
|
||
["liquid-rubber-masterbatch"] = 7,
|
||
["liquid-rubber-pre"] = 9,
|
||
["liquid-rubber"] = 15,
|
||
["liquid-polyethylene"] = 6.5,
|
||
["liquid-plastic"] = 8,
|
||
|
||
["wooden-board"] = 1.1,
|
||
["phenolic-board"] = 4.9,
|
||
["resin"] = 7,
|
||
["plastic-bar"] = 10,
|
||
["rubber"] = 15
|
||
|
||
}
|
||
|
||
local parse_energy = function(energy)
|
||
local ending = energy:sub(energy:len())
|
||
if not (ending == "J" or ending == "W") then
|
||
error(ending.. " is not a valid unit of energy")
|
||
end
|
||
local magnitude = energy:sub(energy:len() - 1, energy:len() - 1)
|
||
local multiplier = 1
|
||
if type(magnitude) == "number" then
|
||
return tonumber(energy:sub(1, energy:len()-1))
|
||
end
|
||
local char = {
|
||
k = 1000,
|
||
K = 1000,
|
||
M = 1000000,
|
||
G = 1000000000,
|
||
T = 1000000000000,
|
||
P = 1000000000000000,
|
||
E = 1000000000000000000,
|
||
Z = 1000000000000000000000,
|
||
Y = 1000000000000000000000000
|
||
}
|
||
multiplier = char[magnitude]
|
||
if not multiplier then error(magnitude.. " is not valid magnitude") end
|
||
return tonumber(energy:sub(1, energy:len()-2)) * multiplier
|
||
end
|
||
|
||
local names = {}
|
||
|
||
for k, fluid in pairs (data.raw.fluid) do
|
||
--if not fluid.fuel_value then
|
||
fluid.fuel_value = nil
|
||
fluid.fuel_value = fuel_values[fluid.name]
|
||
--end
|
||
--if not fluid.emissions_multiplier then
|
||
fluid.emissions_multiplier = emissions[fluid.name]
|
||
--end
|
||
end |