using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BaseCellSimulation.Enzyms.Cytosol { public class GAPDH : InternalEnzym { public GAPDH() { Km = 0.1; Km_NAD = 0.075; Vmax = 10; KmRange = new(0.01, 0.5); VmaxRange = new(2, 25); Km_NAD_Range = new(0.01, 0.2); } public double Km_NAD { get; set; } public ValueRange Km_NAD_Range { get; private set; } public override void ApplyChanges(CellRessources res, double dt) { double used = Math.Min(rate * dt, Math.Min(res.Res.Carbon.GA3P, res.Res.Energy.NAD)); res.Res.Carbon.GA3P -= used; res.Res.Carbon.PBG13 += used; res.TransferNADH(used, false); res.Res.Ions.Protons += 1.0 * used; } public override void ComputeRate(Resources res) { rate = Vmax * (res.Carbon.GA3P / (Km + res.Carbon.GA3P)) * (res.Energy.NAD / (Km_NAD + res.Energy.NAD)); } } }