18 Output(
double excessAir,
double flowFlueGas,
double specHeat,
double fracCondensed,
double effThermal,
19 double effThermalLH,
double effLH,
double heatRecovery,
double sensibleHeatRecovery)
20 : excessAir(excessAir), flowFlueGas(flowFlueGas), specHeat(specHeat), fracCondensed(fracCondensed),
21 effThermal(effThermal), effThermalLH(effThermalLH), effLH(effLH), heatRecovery(heatRecovery),
22 sensibleHeatRecovery(sensibleHeatRecovery) {}
25 double excessAir = 0, flowFlueGas = 0, specHeat = 0, fracCondensed = 0, effThermal = 0, effThermalLH = 0,
26 effLH = 0, heatRecovery = 0, sensibleHeatRecovery = 0;
73 const double tempFlueGasOutF,
const double tempCombAirF,
const double fuelTempF,
74 const double percO2,
const double ambientAirTempF = 60,
const double moistCombAir = 0) {
77 ambientAirTempF, moistCombAir);
78 const double fracCondensed =
79 (1 - (0.0000009 * pow(tempFlueGasOutF, 3.0136)) / (2.8082 - 0.1168 * percO2 * 100));
80 const double effLH = (fracCondensed * 0.00935 * (1087 )) / 100;
81 const double flowFlueGas =
82 heatInput * (0.0763 * (0.6 + (res.stoichAir * (1 + res.excessAir)))) * 1000000 / res.heatValueFuel;
83 const double sensibleHeatRecovery =
84 res.specificHeat * (tempFlueGasInF - tempFlueGasOutF) * flowFlueGas / 1000000;
86 return Output(res.excessAir, flowFlueGas, res.specificHeat, fracCondensed, res.availableHeat,
87 res.availableHeat + effLH, effLH, heatInput * effLH, sensibleHeatRecovery);