37 lines
1.1 KiB
C#
37 lines
1.1 KiB
C#
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;
|
|
}
|
|
}
|
|
}
|