import { percentLiftGasNeededSTP } from "https://esm.town/v/andrew/percentLiftGasNeededSTP";
import { vMaxFillBalloon } from "https://esm.town/v/andrew/vMaxFillBalloon";
export const SO2_Balloon_Napkin_Math = (() => {
const dBurst = 9.44;
const hBurst = 10000;
const costBalloon = 25;
const unitCostH2 = 5;
const unitCostSO2 = 0;
const lift = 1.6;
const molarMassHydrogen = 2.01588 / 1000;
const molarMassSO2 = 64.07 / 1000;
const densityH2 = 0.08988;
const densitySO2 = 2.926;
const maxFill = vMaxFillBalloon(dBurst, hBurst);
console.log(
`The maxFill is about ${maxFill.toPrecision(2)} m^3 of gas at STP.`
);
const percentHydrogen = percentLiftGasNeededSTP(
1.6,
maxFill,
molarMassHydrogen,
molarMassSO2
);
const totalH2 = percentHydrogen * maxFill;
const totalSO2 = (1 - percentHydrogen) * maxFill;
const costH2 = totalH2 * densityH2 * unitCostH2;
const costSO2 = totalSO2 * densitySO2 * unitCostSO2;
const totalCost = costH2 + costSO2 + costBalloon;
const unitCostPerSO2 = totalCost / totalSO2;
console.log(
`The cost of hydrogen is $${costH2.toPrecision(
2
)} for ${totalH2.toPrecision(2)} m^3 at STP.`
);
console.log(
`The cost of SO2 is $${costSO2.toPrecision(2)} for ${totalSO2.toPrecision(
2
)} m^3 at STP.\n`
);
console.log(
`The TOTAL UNIT COST is $${unitCostPerSO2.toPrecision(
2
)} per cubic meter of SO2 released at ${hBurst}m`
);
return unitCostPerSO2;
})();