Skip to content

Commit 50bd3cb

Browse files
authored
Merge pull request #11 from akutuva21/master
Fix to certain models so they properly simulate
2 parents 0446db1 + f19cfef commit 50bd3cb

42 files changed

Lines changed: 3510 additions & 3 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.gitignore

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
*.net
2+
*.gdat
3+
*.cdat
4+
*.xml
5+
*.m

Published/Dembo1978/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Dembo 1978
2+
3+
BioNetGen model: Dembo 1978
Lines changed: 186 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,186 @@
1+
begin model
2+
3+
#@title: |
4+
# Symmetric bivalent hapten-receptor cross-linking
5+
# (Dembo and Goldstein, 1978)
6+
7+
#@description: |
8+
# Network-free (NFsim) kinetic model of symmetric bivalent
9+
# hapten binding to bivalent cell-surface antibody (IgE),
10+
# forming linear chains. Three processes: (1) hapten capture
11+
# from solution — a free bivalent hapten binds a receptor
12+
# site; (2) receptor cross-linking — a tethered hapten arm
13+
# binds a free receptor site on a DIFFERENT complex (no
14+
# intra-complex rings); (3) bond dissociation — any
15+
# hapten-receptor bond breaks.
16+
#
17+
# This is the basic model without ring formation (J1 = J2
18+
# = 0 in Dembo and Goldstein notation). The equilibrium
19+
# cross-linking curve (fraction of antibody in polymers,
20+
# x_poly, vs log hapten concentration) is bell-shaped and
21+
# symmetric about a_max = 1 (i.e., A_max = 1/H in
22+
# dimensional terms, corresponding to KC = 1 in Perelson
23+
# and DeLisi notation). At high and low hapten
24+
# concentrations, cross-linking approaches zero (prozone
25+
# effect).
26+
#
27+
# The kinetic formulation follows Perelson and DeLisi
28+
# (1980), who showed that singly-bound and doubly-bound
29+
# ligand concentrations (m and M) are governed by two
30+
# coupled ODEs under the equivalent-site hypothesis. Given
31+
# m(t) and M(t), the full aggregate size distribution can
32+
# be obtained combinatorially.
33+
#
34+
# Default parameterization: KxRT = 5 (dimensionless
35+
# cross-linking propensity), reproducing moderate
36+
# cross-linking as in Dembo and Goldstein (1978) Fig. 2
37+
# (k = 10 case, scaled to KxRT = 5 for tractable
38+
# simulation).
39+
40+
#@keyword: |
41+
# bivalent hapten, bivalent receptor, cross-linking,
42+
# aggregation, prozone effect, bell-shaped dose response,
43+
# mass action, network-free, NFsim, IgE, basophil,
44+
# histamine release, equivalent-site hypothesis
45+
46+
#@reference: |
47+
# Dembo M, Goldstein B (1978). Theory of equilibrium binding
48+
# of symmetric bivalent haptens to cell surface antibody:
49+
# application to histamine release from basophils. J Immunol
50+
# 121:345-353. doi:10.4049/jimmunol.121.1.345
51+
#
52+
# Perelson AS, DeLisi C (1980). Receptor clustering on a cell
53+
# surface. I. Theory of receptor cross-linking by ligands
54+
# bearing two chemically identical functional groups. Math
55+
# Biosci 48:71-110. doi:10.1016/0025-5564(80)90017-6
56+
57+
#@note: |
58+
# Network generation is not feasible because bivalent-
59+
# bivalent cross-linking produces an unbounded set of chain
60+
# species. NFsim is used with -bscb (block same-complex
61+
# binding, which implies complex bookkeeping).
62+
#
63+
# Mapping to Dembo and Goldstein (1978) notation:
64+
# H = 2 * Ka (twice the single-site association constant)
65+
# K = cross-linking constant (units of area)
66+
# k = K * X_T (dimensionless, here KxRT)
67+
# a = H * A (dimensionless hapten concentration)
68+
# a_max = 1 (when b = 0, i.e., no monovalent hapten)
69+
# x_poly = fraction of antibody in polymers of size >= 2
70+
#
71+
# Mapping to Perelson and DeLisi (1980) notation:
72+
# K = k1/k-1 (association constant for whole ligand)
73+
# K2 = k2/k-2 (cross-linking association constant)
74+
# beta = KC/(1+KC) (dimensionless concentration)
75+
# delta = beta*(1-beta)*K2*S0 (cross-linking parameter)
76+
# M_bar = S0 * (1+2*delta - sqrt(1+4*delta)) / (4*delta)
77+
78+
begin parameters
79+
80+
# Physical constants
81+
NA 6.02214076e23 # /mol
82+
83+
# Experimental conditions
84+
V_cell 1e-9 # L/cell
85+
R_per_cell 3e5 # molecules/cell
86+
87+
# SSA/NFsim scaling
88+
f 0.01 # dimensionless
89+
V_sim V_cell*f # L
90+
91+
# Scaled molecule counts
92+
RT R_per_cell*f # molecules (= 3000)
93+
94+
# Total bivalent hapten (ligand)
95+
# Default: 10x receptor count (near optimal cross-linking)
96+
LT_per_cell 3e6 # molecules/cell
97+
LT LT_per_cell*f # molecules
98+
99+
# Single-site kinetic rate constants
100+
# K = kon/koff = 1e8 /M (intrinsic affinity for one site)
101+
kon 1e6 # /M/s
102+
koff 0.01 # /s
103+
104+
# Dimensionless cross-linking propensity
105+
# k = K * X_T in Dembo notation; KxRT here
106+
KxRT 5 # dimensionless
107+
108+
# Stochastic rate constants (single-site, per molecule pair)
109+
kf kon/(NA*V_sim) # /(molecule*s)
110+
kxf KxRT/RT*koff # /(molecule*s)
111+
112+
end parameters
113+
114+
begin molecule types
115+
# Bivalent hapten (ligand): two identical receptor-binding sites
116+
L(r,r)
117+
# Bivalent receptor (antibody/IgE): two identical hapten-binding sites
118+
R(l,l)
119+
end molecule types
120+
121+
begin seed species
122+
L(r,r) LT # molecules
123+
R(l,l) RT # molecules
124+
end seed species
125+
126+
begin observables
127+
# Free hapten (both sites unbound)
128+
Species Obs_Free_L L(r,r)
129+
# Free receptor (both sites unbound)
130+
Species Obs_Free_R R(l,l)
131+
# Total hapten-receptor bonds
132+
Molecules Obs_Bonds L(r!1).R(l!1)
133+
# Free hapten sites (on any hapten molecule)
134+
Molecules Obs_Free_L_sites L(r)
135+
# Free receptor sites (on any receptor molecule)
136+
Molecules Obs_Free_R_sites R(l)
137+
end observables
138+
139+
begin reaction rules
140+
141+
# ================================================================
142+
# Hapten capture: free hapten binds a receptor site
143+
# ================================================================
144+
# Corresponds to R1 in Perelson and DeLisi (1980): a free ligand
145+
# from solution binds a free receptor site with rate constant k1.
146+
R_capture: L(r,r) + R(l) -> L(r!1,r).R(l!1) kf
147+
148+
# ================================================================
149+
# Cross-linking: tethered hapten arm binds DIFFERENT complex
150+
# ================================================================
151+
# Corresponds to R2 in Perelson and DeLisi (1980): the free arm
152+
# of a singly-bound hapten binds a receptor site on a different
153+
# complex. The "+" between reactants with -bscb flag enforces
154+
# inter-complex binding (no intra-complex rings).
155+
R_crosslink: L(r!+,r) + R(l) -> L(r!+,r!1).R(l!1) kxf
156+
157+
# ================================================================
158+
# Bond dissociation: any hapten-receptor bond breaks
159+
# ================================================================
160+
# Corresponds to reverse of R1/R2: any bond between hapten
161+
# and receptor dissociates with rate constant k_off.
162+
R_dissoc: L(r!1).R(l!1) -> L(r) + R(l) koff
163+
164+
end reaction rules
165+
166+
end model
167+
168+
begin actions
169+
170+
#@note: |
171+
# Network generation is infeasible (unbounded chains).
172+
# NFsim flags:
173+
# -bscb block same-complex binding (implies -cb)
174+
175+
# Equilibration kinetics
176+
177+
#@protocol: |
178+
# Simulate from all-free initial conditions to equilibrium
179+
# (3000 s). Cross-links build up and reach steady state as
180+
# hapten captures and cross-links balance dissociation.
181+
182+
simulate({method=>"nf",suffix=>"nfr",t_start=>0,\
183+
t_end=>3000,n_steps=>300,gml=>2147483647,\
184+
param=>"-bscb"})
185+
186+
end actions

0 commit comments

Comments
 (0)