//Created by libAntimony v2.4 model oyehaug_2009__environment(time_) // Variable initializations: time_ = ; end model oyehaug_2009__Vm_n(Vm_n, time_, i_NaT, i_NaP, i_leakNa, i_KDR, i_KA, i_leakK, i_leakf, i_NaKATPase_n) // Assignment Rules: i_app := piecewise( 4500 , ( geq(time_, t0)) && (time_ <= t1 ), 0 ); // Rate Rules: Vm_n' = (0.001 * (-(i_NaT + i_NaP + i_leakNa + i_KDR + i_KA + i_leakK + i_leakf + i_NaKATPase_n) + i_app)) / Cm; // Variable initializations: Vm_n = -70; Cm = 1; t0 = 100; t1 = 900; time_ = ; i_NaT = ; i_NaP = ; i_leakNa = ; i_KDR = ; i_KA = ; i_leakK = ; i_leakf = ; i_NaKATPase_n = ; end model oyehaug_2009__i_NaT_m_gate(m, Vm_n, time_) // Assignment Rules: alpha_m := (0.32 * (- Vm_n - 51.9)) / (exp(-(0.25 * Vm_n + 12.975)) - 1); beta_m := (0.28 * (Vm_n + 24.89)) / (exp(0.2 * Vm_n + 4.978) - 1); // Rate Rules: m' = alpha_m * (1 - m) - beta_m * m; // Variable initializations: m = 0.005; Vm_n = ; time_ = ; end model oyehaug_2009__i_NaT_h_gate(h, Vm_n, time_) // Assignment Rules: alpha_h := 0.128 * exp(-(0.056 * Vm_n + 2.94)); beta_h := 4 / (exp(-(0.2 * Vm_n + 6)) + 1); // Rate Rules: h' = alpha_h * (1 - h) - beta_h * h; // Variable initializations: h = 0.9961; Vm_n = ; time_ = ; end model oyehaug_2009__i_NaT(i_NaT, J_NaT, F, ENa_n, time_, Vm_n, m, h) // Sub-modules, and any changes to those submodules: i_NaT_m_gate: oyehaug_2009__i_NaT_m_gate(m, Vm_n, time_); i_NaT_h_gate: oyehaug_2009__i_NaT_h_gate(h, Vm_n, time_); // Assignment Rules: i_NaT := gNaT * power(m, 3) * h * (Vm_n - ENa_n); J_NaT := (gNaT * power(m, 3) * h * (Vm_n - ENa_n)) / F; // Variable initializations: gNaT = 5000; F = ; ENa_n = ; end model oyehaug_2009__i_NaP_m_gate(m, Vm_n, time_) // Assignment Rules: alpha_m := ((1 / tau_activation) * 1) / (exp(-(0.143 * Vm_n + 5.67)) + 1); beta_m := ((1 / tau_activation) * exp(-(0.143 * Vm_n + 5.67))) / (exp(-(0.143 * Vm_n + 5.67)) + 1); // Rate Rules: m' = alpha_m * (1 - m) - beta_m * m; // Variable initializations: m = 0.0129; tau_activation = 6; Vm_n = ; time_ = ; end model oyehaug_2009__i_NaP_h_gate(h, Vm_n, time_) // Assignment Rules: alpha_h := 5.12E-8 * exp(-(0.056 * Vm_n + 2.94)); beta_h := 1.6E-6 / (exp(-(0.2 * Vm_n + 8)) + 1); // Rate Rules: h' = alpha_h * (1 - h) - beta_h * h; // Variable initializations: h = 0.9718; Vm_n = ; time_ = ; end model oyehaug_2009__i_NaP(i_NaP, J_NaP, F, ENa_n, time_, Vm_n, m, h) // Sub-modules, and any changes to those submodules: i_NaP_m_gate: oyehaug_2009__i_NaP_m_gate(m, Vm_n, time_); i_NaP_h_gate: oyehaug_2009__i_NaP_h_gate(h, Vm_n, time_); // Assignment Rules: i_NaP := gNaP * power(m, 2) * h * (Vm_n - ENa_n); J_NaP := (gNaP * power(m, 2) * h * (Vm_n - ENa_n)) / F; // Variable initializations: gNaP = 150; F = ; ENa_n = ; end model oyehaug_2009__i_KDR_n_gate(n, Vm_n, time_) // Assignment Rules: alpha_n := (0.016 * (- Vm_n - 34.9)) / (exp(-(0.2 * Vm_n + 6.98)) - 1); beta_n := 0.25 * exp(-(0.025 * Vm_n + 1.25)); // Rate Rules: n' = alpha_n * (1 - n) - beta_n * n; // Variable initializations: n = 0.0012; Vm_n = ; time_ = ; end model oyehaug_2009__i_KDR(i_KDR, J_KDR, F, EK_n, time_, Vm_n, n) // Sub-modules, and any changes to those submodules: i_KDR_n_gate: oyehaug_2009__i_KDR_n_gate(n, Vm_n, time_); // Assignment Rules: i_KDR := gKDR * power(n, 2) * (Vm_n - EK_n); J_KDR := (gKDR * power(n, 2) * (Vm_n - EK_n)) / F; // Variable initializations: gKDR = 5000; F = ; EK_n = ; end model oyehaug_2009__i_KA_m_gate(m, Vm_n, time_) // Assignment Rules: alpha_m := (0.02 * (- Vm_n - 56.9)) / (exp(-(0.1 * Vm_n + 5.69)) - 1); beta_m := (0.0175 * (Vm_n + 29.9)) / (exp(0.1 * Vm_n + 2.99) - 1); // Rate Rules: m' = alpha_m * (1 - m) - beta_m * m; // Variable initializations: m = 0.1193; Vm_n = ; time_ = ; end model oyehaug_2009__i_KA_h_gate(h, Vm_n, time_) // Assignment Rules: alpha_h := 0.016 * exp(-(0.056 * Vm_n + 4.61)); beta_h := 0.5 / (exp(-(0.2 * Vm_n + 11.98)) + 1); // Rate Rules: h' = alpha_h * (1 - h) - beta_h * h; // Variable initializations: h = 0.1205; Vm_n = ; time_ = ; end model oyehaug_2009__i_KA(i_KA, J_KA, F, EK_n, time_, Vm_n, m, h) // Sub-modules, and any changes to those submodules: i_KA_m_gate: oyehaug_2009__i_KA_m_gate(m, Vm_n, time_); i_KA_h_gate: oyehaug_2009__i_KA_h_gate(h, Vm_n, time_); // Assignment Rules: i_KA := gKA * power(m, 2) * h * (Vm_n - EK_n); J_KA := (gKA * power(m, 2) * h * (Vm_n - EK_n)) / F; // Variable initializations: gKA = 1000; F = ; EK_n = ; end model oyehaug_2009__i_NaKATPase_n(i_NaKATPase_n, J_NaKATPase_n, F, KmNa, KmK, Nan_, Ko) // Assignment Rules: i_NaKATPase_n := J_NaKATPase_n * F; J_NaKATPase_n := (((I_NaKATPase_n_max * power(Nan_, 1.5)) / (power(Nan_, 1.5) + power(KmNa, 1.5))) * Ko) / (Ko + KmK); // Variable initializations: I_NaKATPase_n_max = 0.0289; F = ; KmNa = ; KmK = ; Nan_ = ; Ko = ; end model oyehaug_2009__i_leakNa(i_leakNa, J_leakNa, F, ENa_n, Vm_n) // Assignment Rules: i_leakNa := gleakNa * (Vm_n - ENa_n); J_leakNa := (gleakNa * (Vm_n - ENa_n)) / F; // Variable initializations: gleakNa = 20; F = ; ENa_n = ; Vm_n = ; end model oyehaug_2009__i_leakK(i_leakK, J_leakK, F, EK_n, Vm_n) // Assignment Rules: i_leakK := gleakK * (Vm_n - EK_n); J_leakK := (gleakK * (Vm_n - EK_n)) / F; // Variable initializations: gleakK = 66.06; F = ; EK_n = ; Vm_n = ; end model oyehaug_2009__i_leakf(i_leakf, Ef_n, Vm_n) // Assignment Rules: i_leakf := gleakf * (Vm_n - Ef_n); // Variable initializations: gleakf = 10; Ef_n = ; Vm_n = ; end model oyehaug_2009__Vm_g(Vm_g, F, ENa_g, EK_g, ECl_g, ENBC_g, gNa, gK, gCl, gNBC, J_NaKATPase_g) // Assignment Rules: Vm_g := (gNa * ENa_g + gK * EK_g + gCl * ECl_g + gNBC * ENBC_g) / (gNa + gK + gCl + gNBC) - (F * J_NaKATPase_g) / (gNa + gK + gCl + gNBC); // Variable initializations: F = ; ENa_g = ; EK_g = ; ECl_g = ; ENBC_g = ; gNa = ; gK = ; gCl = ; gNBC = ; J_NaKATPase_g = ; end model oyehaug_2009__J_Na(J_Na, gNa, F, ENa_g, Vm_g) // Assignment Rules: J_Na := (gNa * (Vm_g - ENa_g)) / F; // Variable initializations: gNa = 100.0; F = ; ENa_g = ; Vm_g = ; end model oyehaug_2009__J_K(J_K, gK, F, EK_g, Vm_g) // Assignment Rules: J_K := (gK * (Vm_g - EK_g)) / F; // Variable initializations: gK = 1696.0; F = ; EK_g = ; Vm_g = ; end model oyehaug_2009__J_NaKATPase_g(J_NaKATPase_g, KmNa, KmK, Nag, Ko) // Assignment Rules: J_NaKATPase_g := (((I_NaKATPase_g_max * power(Nag, 1.5)) / (power(Nag, 1.5) + power(KmNa, 1.5))) * Ko) / (Ko + KmK); // Variable initializations: I_NaKATPase_g_max = 0.1151; KmNa = ; KmK = ; Nag = ; Ko = ; end model oyehaug_2009__J_NBC(J_NBC, gNBC, F, ENBC_g, Vm_g) // Assignment Rules: J_NBC := (gNBC * (Vm_g - ENBC_g)) / F; // Variable initializations: gNBC = 80; F = ; ENBC_g = ; Vm_g = ; end model oyehaug_2009__J_NKCC1(J_NKCC1, Psi, F, Nao, Nag, Ko, P_Ko, Kg, Clo, Clg) // Assignment Rules: J_NKCC1 := piecewise( ((power(Ko - P_Ko, 10) / (power(Ko - P_Ko, 10) + power(0.03, 10))) * Psi * gNKCC1 * ln((((Ko / Kg) * Nao) / Nag) * power(Clo / Clg, 2))) / F , Ko > P_Ko , 0 ); // Variable initializations: gNKCC1 = 2; Psi = ; F = ; Nao = ; Nag = ; Ko = ; P_Ko = ; Kg = ; Clo = ; Clg = ; end model oyehaug_2009__N_Nag(N_Nag, dN_Nag_dt, J_Na, J_NaKATPase_g, J_NKCC1, J_NBC, time_) // Assignment Rules: dN_Nag_dt := 0.01 * ((- J_Na - 3 * J_NaKATPase_g) + J_NKCC1 + J_NBC); // Rate Rules: N_Nag' = dN_Nag_dt; // Variable initializations: N_Nag = 0.75; J_Na = ; J_NaKATPase_g = ; J_NKCC1 = ; J_NBC = ; time_ = ; end model oyehaug_2009__N_Kg(N_Kg, dN_Kg_dt, J_K, J_NaKATPase_g, J_NKCC1, time_) // Assignment Rules: dN_Kg_dt := 0.01 * (- J_K + 2 * J_NaKATPase_g + J_NKCC1); // Rate Rules: N_Kg' = dN_Kg_dt; // Variable initializations: N_Kg = 5; J_K = ; J_NaKATPase_g = ; J_NKCC1 = ; time_ = ; end model oyehaug_2009__wg(wg, Lp, Xg, Nao, Ko, Clo, HCO3o, Nag, Kg, Clg, HCO3g, time_) // Rate Rules: wg' = 10 * Lp * ((Nag + Kg + Clg + HCO3g + Xg / wg) - (Nao + Ko + Clo + HCO3o)); // Variable initializations: wg = 0.05; Lp = ; Xg = ; Nao = ; Ko = ; Clo = ; HCO3o = ; Nag = ; Kg = ; Clg = ; HCO3g = ; time_ = ; end model oyehaug_2009__wo(wo, P_wo, P_wg, wg) // Assignment Rules: wo := (P_wg + P_wo) - wg; // Variable initializations: P_wo = ; P_wg = ; wg = ; end model oyehaug_2009__N_Nao(N_Nao, J_NaT, J_NaKATPase_n, J_NaP, J_leakNa, dN_Nag_dt, time_) // Rate Rules: N_Nao' = 0.01 * ((3 * J_NaKATPase_n + J_NaT + J_NaP + J_leakNa) - 100 * dN_Nag_dt); // Variable initializations: N_Nao = 3.65; J_NaT = ; J_NaKATPase_n = ; J_NaP = ; J_leakNa = ; dN_Nag_dt = ; time_ = ; end model oyehaug_2009__N_Ko(N_Ko, J_NaT, J_NaKATPase_n, J_NaP, J_leakNa, dN_Kg_dt, time_) // Rate Rules: N_Ko' = -0.01 * (J_NaT + J_NaP + J_leakNa + 3 * J_NaKATPase_n) - dN_Kg_dt; // Variable initializations: N_Ko = 0.075; J_NaT = ; J_NaKATPase_n = ; J_NaP = ; J_leakNa = ; dN_Kg_dt = ; time_ = ; end model oyehaug_2009__N_HCO3o(N_HCO3o, J_NBC, time_) // Rate Rules: N_HCO3o' = -(0.01) * 2 * J_NBC; // Variable initializations: N_HCO3o = 0.375; J_NBC = ; time_ = ; end model oyehaug_2009__electric_potentials(ENa_n, EK_n, Ef_n, ENa_g, EK_g, ECl_g, ENBC_g, Psi, Nan_, Nag, Nao, Kn, Kg, Ko, HCO3g, HCO3o, Clg, Clo) // Assignment Rules: ENa_n := Psi * ln(Nao / Nan_); EK_n := Psi * ln(Ko / Kn); ENa_g := Psi * ln(Nao / Nag); EK_g := Psi * ln(Ko / Kg); ECl_g := -(1) * Psi * ln(Clo / Clg); ENBC_g := - Psi * ln((Nao / Nag) * power(HCO3o / HCO3g, 2)); // Variable initializations: Ef_n = -70; Psi = ; Nan_ = ; Nag = ; Nao = ; Kn = ; Kg = ; Ko = ; HCO3g = ; HCO3o = ; Clg = ; Clo = ; end model oyehaug_2009__ion_concentrations(Clo, Cln, Clg, Nan_, Nao, Nag, Kn, Ko, Kg, HCO3g, HCO3o, P_Ko, Psi, P_wo, P_wg, Vm_g, wo, wg, Xg, rho, N_Kg, N_Ko, N_Nag, N_Nao, N_HCO3o) // Assignment Rules: Clo := ((P_wg * P_Clg + P_wo * P_Clo + P_wn * P_Cln) - (wg * Clg + P_wn * Cln)) / wo; Cln := ((P_Cln + Nan_) - P_Nan) + (Kn - P_Kn); Clg := (Nag + Kg) - (HCO3g + (rho * Xg) / wg); Nan_ := ((P_wn * P_Nan + P_wg * P_Nag + P_wo * P_Nao) - (N_Nao + N_Nag)) / P_wn; Nao := N_Nao / wo; Nag := N_Nag / wg; Kn := ((P_wn * P_Kn + P_wg * P_Kg + P_wo * P_Ko) - (N_Ko + N_Kg)) / P_wn; Ko := N_Ko / wo; Kg := N_Kg / wg; HCO3g := ((P_wg * P_HCO3g + P_wo * P_HCO3o) - N_HCO3o) / wg; HCO3o := N_HCO3o / wo; P_Clo := (P_Nao + P_Ko) - P_HCO3o; P_Clg := P_Clo * exp(P_Vm_g / Psi); P_HCO3g := P_HCO3o * root((P_Nao / P_Nag) * exp(P_Vm_g / Psi)); // Variable initializations: P_Ko = 3; P_Vm_g = -85; P_Cln = 50; P_Nan = 10; P_Nao = 146; P_Nag = 15; P_Kn = 130; P_Kg = 100; P_HCO3o = 15; P_wn = 0.05; Psi = ; P_wo = ; P_wg = ; Vm_g = ; wo = ; wg = ; Xg = ; rho = ; N_Kg = ; N_Ko = ; N_Nag = ; N_Nao = ; N_HCO3o = ; end model oyehaug_2009__model_parameters(Psi, F, KmNa, KmK, gCl, Lp, Xg, rho, P_wo, P_wg) // Assignment Rules: Psi := (1000 * R * T) / F; // Variable initializations: F = 9.649e4; KmNa = 10; KmK = 1.5; gCl = 50; Lp = 2e-8; Xg = 8.45; rho = 0.5975; P_wo = 0.025; P_wg = 0.05; R = 8.315; T = 300; end model *oyehaug_2009____main() // Sub-modules, and any changes to those submodules: environment: oyehaug_2009__environment(time_); Vm_n: oyehaug_2009__Vm_n(Vm_n0, time_, i_NaT0, i_NaP0, i_leakNa0, i_KDR0, i_KA0, i_leakK0, i_leakf0, i_NaKATPase_n0); i_NaT: oyehaug_2009__i_NaT(i_NaT0, J_NaT, F, ENa_n, time_, Vm_n0, m, h); i_NaP: oyehaug_2009__i_NaP(i_NaP0, J_NaP, F, ENa_n, time_, Vm_n0, m0, h0); i_KDR: oyehaug_2009__i_KDR(i_KDR0, J_KDR, F, EK_n, time_, Vm_n0, n); i_KA: oyehaug_2009__i_KA(i_KA0, J_KA, F, EK_n, time_, Vm_n0, m1, h1); i_NaKATPase_n: oyehaug_2009__i_NaKATPase_n(i_NaKATPase_n0, J_NaKATPase_n, F, KmNa, KmK, Nan_, Ko); i_leakNa: oyehaug_2009__i_leakNa(i_leakNa0, J_leakNa, F, ENa_n, Vm_n0); i_leakK: oyehaug_2009__i_leakK(i_leakK0, J_leakK, F, EK_n, Vm_n0); i_leakf: oyehaug_2009__i_leakf(i_leakf0, Ef_n, Vm_n0); Vm_g: oyehaug_2009__Vm_g(Vm_g0, F, ENa_g, EK_g, ECl_g, ENBC_g, gNa, gK, gCl, gNBC, J_NaKATPase_g0); J_Na: oyehaug_2009__J_Na(J_Na0, gNa, F, ENa_g, Vm_g0); J_K: oyehaug_2009__J_K(J_K0, gK, F, EK_g, Vm_g0); J_NaKATPase_g: oyehaug_2009__J_NaKATPase_g(J_NaKATPase_g0, KmNa, KmK, Nag, Ko); J_NBC: oyehaug_2009__J_NBC(J_NBC0, gNBC, F, ENBC_g, Vm_g0); J_NKCC1: oyehaug_2009__J_NKCC1(J_NKCC10, Psi, F, Nao, Nag, Ko, P_Ko, Kg, Clo, Clg); N_Nag: oyehaug_2009__N_Nag(N_Nag0, dN_Nag_dt, J_Na0, J_NaKATPase_g0, J_NKCC10, J_NBC0, time_); N_Kg: oyehaug_2009__N_Kg(N_Kg0, dN_Kg_dt, J_K0, J_NaKATPase_g0, J_NKCC10, time_); wg: oyehaug_2009__wg(wg0, Lp, Xg, Nao, Ko, Clo, HCO3o, Nag, Kg, Clg, HCO3g, time_); wo: oyehaug_2009__wo(wo0, P_wo, P_wg, wg0); N_Nao: oyehaug_2009__N_Nao(N_Nao0, J_NaT, J_NaKATPase_n, J_NaP, J_leakNa, dN_Nag_dt, time_); N_Ko: oyehaug_2009__N_Ko(N_Ko0, J_NaT, J_NaKATPase_n, J_NaP, J_leakNa, dN_Kg_dt, time_); N_HCO3o: oyehaug_2009__N_HCO3o(N_HCO3o0, J_NBC0, time_); electric_potentials: oyehaug_2009__electric_potentials(ENa_n, EK_n, Ef_n, ENa_g, EK_g, ECl_g, ENBC_g, Psi, Nan_, Nag, Nao, Kn, Kg, Ko, HCO3g, HCO3o, Clg, Clo); ion_concentrations: oyehaug_2009__ion_concentrations(Clo, Cln, Clg, Nan_, Nao, Nag, Kn, Ko, Kg, HCO3g, HCO3o, P_Ko, Psi, P_wo, P_wg, Vm_g0, wo0, wg0, Xg, rho, N_Kg0, N_Ko0, N_Nag0, N_Nao0, N_HCO3o0); model_parameters: oyehaug_2009__model_parameters(Psi, F, KmNa, KmK, gCl, Lp, Xg, rho, P_wo, P_wg); end