using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace BaseCellSimulation.Enzyms.Membrane.GLUT { public class GLUT4 : GLUT1 { public GLUT4() { Km = 5.0; // Example Km value in mM for GLUT4 Vmax = 0.6; // Higher Vmax for GLUT4 ActivationThreshold = 0.3; // Example threshold for insulin activation KmRange = new(4.0, 6.0); VmaxRange = new(0.2, 15.0); } public double ActivationThreshold { get; set; } public override void ComputeRate(double gradient, EnviromentState Env) { if (gradient <= 0) { rate = 0; return; } // GLUT4 is insulin-responsive, so we can add an insulin factor double insulinFactor = 0.5 * (Math.Tanh((Env.Insulin - ActivationThreshold) / 0.1) + 1.0); // Example: insulin increases rate up to 3x Michaelis_Menten(gradient); rate *= insulinFactor; } } }