//Created by libAntimony v2.4 model macgregor_model_2005__environment(time_) // Variable initializations: time_ = ; end model macgregor_model_2005__r(r, s, h_delta1, j1, time_) // Assignment Rules: ract := 1.0 - power(s, n1) / (power(s, n1) + power(theta_1, n1)); hr := 1.0 - power(h_delta1, n3) / (power(h_delta1, n3) + power(j1 * theta_3, n3)); Ir := piecewise( 0.0 , ( geq(time_, 0.0)) && (time_ <= 90.0 ), 10.0 , ( geq(time_, 91.0)) && (time_ <= 92.0 ), 0.0 , ( geq(time_, 93.0)) && (time_ <= 113.0 ), 10.0 , ( geq(time_, 114.0)) && (time_ <= 115.0 ), 0.0 , ( geq(time_, 116.0)) && (time_ <= 136.0 ), 10.0 , ( geq(time_, 137.0)) && (time_ <= 138.0 ), 0.0 , ( geq(time_, 139.0)) && (time_ <= 159.0 ), 10.0 , ( geq(time_, 160.0)) && (time_ <= 161.0 ), 0.0 , ( geq(time_, 162.0)) && (time_ <= 252.0 ), 10.0 , ( geq(time_, 253.0)) && (time_ <= 254.0 ), 0.0 , ( geq(time_, 255.0)) && (time_ <= 275.0 ), 10.0 , ( geq(time_, 276.0)) && (time_ <= 277.0 ), 0.0 , ( geq(time_, 278.0)) && (time_ <= 298.0 ), 10.0 , ( geq(time_, 299.0)) && (time_ <= 300.0 ), 0.0 , ( geq(time_, 301.0)) && (time_ <= 321.0 ), 10.0 , ( geq(time_, 322.0)) && (time_ <= 323.0 ), 0.0 ); Ir2 := piecewise( 0.0 , ( geq(time_, 0.0)) && (time_ <= 5.0 ), 1000.0 , ( geq(time_, 6.0)) && (time_ <= 7.0 ), 0.0 , ( geq(time_, 8.0)) && (time_ <= 12.0 ), 1000.0 , ( geq(time_, 13.0)) && (time_ <= 14.0 ), 0.0 , ( geq(time_, 15.0)) && (time_ <= 21.0 ), 1000.0 , ( geq(time_, 22.0)) && (time_ <= 23.0 ), 0.0 , ( geq(time_, 24.0)) && (time_ <= 204.0 ), 1000.0 , ( geq(time_, 205.0)) && (time_ <= 206.0 ), 0.0 , ( geq(time_, 207.0)) && (time_ <= 217.0 ), 1000.0 , ( geq(time_, 218.0)) && (time_ <= 219.0 ), 0.0 , ( geq(time_, 220.0)) && (time_ <= 227.0 ), 1000.0 , ( geq(time_, 228.0)) && (time_ <= 229.0 ), 0.0 , ( geq(time_, 230.0)) && (time_ <= 310.0 ), 1000.0 , ( geq(time_, 311.0)) && (time_ <= 312.0 ), 0.0 , ( geq(time_, 313.0)) && (time_ <= 321.0 ), 1000.0 , ( geq(time_, 322.0)) && (time_ <= 323.0 ), 0.0 ); // Rate Rules: r' = (ract * hr * Ir - k6 * r) + Ir2; // Variable initializations: r = 0.0; k6 = 5.0; n1 = 4.0; theta_1 = 1.0; n3 = 5.0; theta_3 = 30.0; s = ; h_delta1 = ; j1 = ; time_ = ; end model macgregor_model_2005__s(s, Is_, k7, g, time_) // Rate Rules: s' = (Is_ * g - k7 * s) + Is2; // Variable initializations: s = 0.0; Is2 = 50.0; Is_ = ; k7 = ; g = ; time_ = ; end model macgregor_model_2005__se(se, k7, time_) // Rate Rules: se' = Ise - k7 * se; // Variable initializations: se = 0.0; Ise = 10.0; k7 = ; time_ = ; end model macgregor_model_2005__f(f, r, c, s, se, time_) // Assignment Rules: phi_b_s := 1.0 / (1.0 + exp(-(log(1.0 * (s + se)) - sb) / delta_b)); // Rate Rules: f' = -(k1 * (r + c) * f) + (k2 + k3 * phi_b_s) * (1.0 - f); // Variable initializations: f = 0.3; k1 = 0.1; k2 = 0.002; k3 = 0.018; sb = 0.029; delta_b = 0.3; r = ; c = ; s = ; se = ; time_ = ; end model macgregor_model_2005__h(h, f, k8, j1, r, c, s, se, time_) // Assignment Rules: phi_r_s := 1.0 / (1.0 + exp(-(log(1.0 * (s + se)) - sr) / delta_r)); // Rate Rules: h' = j1 * ((k4 + k5 * (1.0 - phi_r_s)) * ((r + c) * f) - k8 * h); // Variable initializations: h = 0.0; k4 = 0.5; k5 = 71.0; sr = -0.56; delta_r = 0.2; f = ; k8 = ; j1 = ; r = ; c = ; s = ; se = ; time_ = ; end model macgregor_model_2005__g(g, h_delta, Is_, j1, time_) // Assignment Rules: hact := power(h_delta, n2) / (power(h_delta, n2) + power(j1 * theta_2, n2)); // Rate Rules: g' = g1 * hact * ((gmax - g) / gmax) - g2 * Is_ * g; // Variable initializations: g = 2.0; g1 = 1.0; gmax = 5.0; g2 = 0.008; n2 = 2.0; theta_2 = 30.0; h_delta = ; Is_ = ; j1 = ; time_ = ; end model macgregor_model_2005__hh(hh, j1, k8, time_) // Rate Rules: hh' = j1 * (Ih - k8 * hh); // Variable initializations: hh = 0.0; Ih = 50.0; j1 = ; k8 = ; time_ = ; end model macgregor_model_2005__model_parameters(h_delta, h_delta1, j1, k7, Is_, k8, c, h, hh, time_) // Assignment Rules: h_delta := (h + hh) * delta; h_delta1 := (h + hh) * delta1; Is_ := piecewise( 10.0 , ( time_ > 0.0) && (time_ <= 90.0 ), 0.0 , ( time_ > 90.0) && (time_ <= 180.0 ), 10.0 , ( time_ > 180.0) && (time_ <= 270.0 ), 0.0 , ( time_ > 270.0) && (time_ <= 360.0 ), 0.0 ); // Variable initializations: j1 = 10; k7 = 5.0; k8 = 0.07; c = 0.01; delta = 60.0; delta1 = 15.0; h = ; hh = ; time_ = ; end model *macgregor_model_2005____main() // Sub-modules, and any changes to those submodules: environment: macgregor_model_2005__environment(time_); r: macgregor_model_2005__r(r0, s0, h_delta1, j1, time_); s: macgregor_model_2005__s(s0, Is_, k7, g0, time_); se: macgregor_model_2005__se(se0, k7, time_); f: macgregor_model_2005__f(f0, r0, c, s0, se0, time_); h: macgregor_model_2005__h(h0, f0, k8, j1, r0, c, s0, se0, time_); g: macgregor_model_2005__g(g0, h_delta, Is_, j1, time_); hh: macgregor_model_2005__hh(hh0, j1, k8, time_); model_parameters: macgregor_model_2005__model_parameters(h_delta, h_delta1, j1, k7, Is_, k8, c, h0, hh0, time_); end