burnedFuel = initialTrit;
mixture.AdjustMoles(Gas.Tritium, -burnedFuel);
+ mixture.AdjustMoles(Gas.Oxygen, -burnedFuel / Atmospherics.TritiumBurnFuelRatio);
}
else
{
- burnedFuel = initialTrit;
- mixture.SetMoles(Gas.Tritium, mixture.GetMoles(Gas.Tritium ) * (1 - 1 / Atmospherics.TritiumBurnTritFactor));
- mixture.AdjustMoles(Gas.Oxygen, -mixture.GetMoles(Gas.Tritium));
+ burnedFuel = Math.Max(initialTrit, mixture.GetMoles(Gas.Oxygen) / Atmospherics.TritiumBurnFuelRatio) / Atmospherics.TritiumBurnTritFactor;
+ mixture.AdjustMoles(Gas.Tritium, -burnedFuel);
+ mixture.AdjustMoles(Gas.Oxygen, -burnedFuel / Atmospherics.TritiumBurnFuelRatio);
energyReleased += (Atmospherics.FireHydrogenEnergyReleased * burnedFuel * (Atmospherics.TritiumBurnTritFactor - 1));
}
public const float TritiumBurnOxyFactor = 100f;
public const float TritiumBurnTritFactor = 10f;
+ public const float TritiumBurnFuelRatio = 2f;
public const float FrezonCoolLowerTemperature = 23.15f;