Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var IntegrationDt = 5.0e-5
IntegrationDt is the time step of integration for Urakubo et al, 2008: uses 5e-5, 2e-4 is barely stable, 5e-4 is not The AC1act dynamics in particular are not stable due to large ATP, AMP numbers
Functions ¶
Types ¶
type Buffer ¶
type Buffer struct { K float64 `desc:"rate of buffering (akin to permeability / conductance of a channel)"` Targ float64 `desc:"buffer target concentration -- drives delta relative to this"` }
Buffer provides a soft buffering driving deltas relative to a target N which can be set by concentration and volume.
func (*Buffer) SetTargVol ¶
type Diffuse ¶
type Diffuse struct { Kf float64 `desc:"A -> B forward diffusion rate constant, sec-1"` Kb float64 `desc:"B -> A backward diffusion rate constant, sec-1"` }
Diffuse models diffusion between two compartments A and B as a function of concentration in each and potentially asymmetric rate constants -- A Kf -> B and B Kb -> A computes the difference and applies to each
type Enz ¶
type Enz struct { K1 float64 `desc:"S+E forward rate constant, in μM-1 msec-1"` K2 float64 `desc:"SE backward rate constant, in μM-1 msec-1"` K3 float64 `desc:"SE -> P + E catalyzed rate constant, in μM-1 msec-1"` Km float64 `inactive:"+" desc:"Michaelis constant = (K2 + K3) / K1 -- goes into the rate"` }
Enz models an enzyme-catalyzed reaction based on the Michaelis-Menten kinetics that transforms S = substrate into P product via SE bound C complex
K1 K3
S + E --> C(SE) ---> P + E
<-- K2
S = substrate, E = enzyme, C = SE complex, P = product The source K constants are in terms of concentrations μM-1 and sec-1 but calculations take place using N's, and the forward direction has two factors while reverse only has one, so a corrective volume factor needs to be divided out to set the actual forward factor.
func (*Enz) SetKmVol ¶
SetKmVol sets time constants in seconds using Km, K2, K3 dividing forward K1 by volume to compensate for 2 volume-based concentrations occurring in forward component (s * e), vs just 1 in back
type React ¶
type React struct { Kf float64 `desc:"forward rate constant for N / sec assuming 2 forward factors"` Kb float64 `desc:"backward rate constant for N / sec assuming 1 backward factor"` }
React models a basic chemical reaction:
Kf
A + B --> AB
<-- Kb
where Kf is the forward and Kb is the backward time constant. The source Kf and Kb constants are in terms of concentrations μM-1 and sec-1 but calculations take place using N's, and the forward direction has two factors while reverse only has one, so a corrective volume factor needs to be divided out to set the actual forward factor.
func (*React) SetVol ¶
SetVol sets reaction forward / backward time constants in seconds, dividing forward Kf by volume to compensate for 2 volume-based concentrations occurring in forward component, vs just 1 in back
type SimpleEnz ¶
type SimpleEnz struct {
Kf float64 `desc:"S->P forward rate constant, in μM-1 msec-1"`
}
SimpleEnz models a simple enzyme-catalyzed reaction that transforms S = substrate into P product via E which is not consumed assuming there is much more E than S and P -- E effectively acts as a rate constant multiplier
Kf*E
S ----> P
S = substrate, E = enzyme, P = product, Kf is the rate of the reaction