//genesis include TanakaNeuron.g /* Saved on Kinetikit GUI */ float normdt = 0.0001 float finedt = 1e-05 float roughdt = 0.001 float plotdt = 0.1 float Cabasal = 0 /* default value */ echo "# Usage" echo "# params {paramID} {ratio} {startCa} {endCa)" echo "# paramIDs(1-64) are defined in paramlist.txt" function vary_kd(reacobj, ratio, vol, order) str reacobj float ratio int order float vol float kfro = {getfield {reacobj} kf} float kbro = {getfield {reacobj} kb} float kfso = kfro * {pow {vol} {order}} float kbso = kbro float kfsn = kfso * {kfso + kbso} / {kfso + {pow {ratio} {order}} * kbso} float kbsn = {pow {ratio} {order}} * kbso * {kfso + kbso} / {kfso + {pow {ratio} {order}} * kbso} float kfrn = kfsn / {pow {vol} {order}} float kbrn = kbsn echo "vary raw kf from" {kfro} "to" {kfrn} echo "vary raw kb from" {kbro} "to" {kbrn} setfield {reacobj} kf {kfrn} setfield {reacobj} kb {kbrn} end function vary_param(select_num, ratio) int select_num float ratio if (select_num == 0) /* Do nothing */ echo "Parameters are not varied at all." // Time constants, tau elif (select_num == 1) setfield /kinetics/PKC/PKC_bind_Ca kf {0.25 / {ratio}} setfield /kinetics/PKC/PKC_bind_Ca kb {1.0 / {ratio}} elif (select_num == 2) setfield /kinetics/PKC/PKC-Ca_memb kf {1.0 / {ratio}} setfield /kinetics/PKC/PKC-Ca_memb kb {0.1 / {ratio}} elif (select_num == 3) setfield /kinetics/PKC/PKC_bind_AA kf {0.2 / {ratio}} setfield /kinetics/PKC/PKC_bind_AA kb {10.0 / {ratio}} elif (select_num == 4) setfield /kinetics/PKC/PKC-AA_bind_Ca kf {0.25 / {ratio}} setfield /kinetics/PKC/PKC-AA_bind_Ca kb {1.0 / {ratio}} elif (select_num == 5) setfield /kinetics/PKC/PKC-Ca_bind_AA kf {0.2 / {ratio}} setfield /kinetics/PKC/PKC-Ca_bind_AA kb {10.0 / {ratio}} elif (select_num == 6) setfield /kinetics/PLA2/PLA2-P_deg kf {0.17 / {ratio}} elif (select_num == 7) setfield /kinetics/PLA2/PLA2_bind_Ca kf {0.01 / {ratio}} setfield /kinetics/PLA2/PLA2_bind_Ca kb {0.1 / {ratio}} elif (select_num == 8) setfield /kinetics/PLA2/PLA2-PIP2_bind_Ca kf {0.01 / {ratio}} setfield /kinetics/PLA2/PLA2-PIP2_bind_Ca kb {0.1 / {ratio}} elif (select_num == 9) setfield /kinetics/PLA2/PLA2_bind_PIP2 kf {0.0012 / {ratio}} setfield /kinetics/PLA2/PLA2_bind_PIP2 kb {0.48 / {ratio}} elif (select_num == 10) setfield /kinetics/PLA2/PLA2-Ca_bind_PIP2 kf {0.0012 / {ratio}} setfield /kinetics/PLA2/PLA2-Ca_bind_PIP2 kb {0.48 / {ratio}} elif (select_num == 11) setfield /kinetics/PLA2/AA_deg kf {0.4 / {ratio}} // Dissociation constants, Kd elif (select_num == 12) vary_kd "/kinetics/PKC/PKC_bind_Ca" {ratio} 1 2 elif (select_num == 13) vary_kd "/kinetics/PKC/PKC-Ca_memb" {ratio} 1 1 elif (select_num == 14) vary_kd "/kinetics/PKC/PKC_bind_AA" {ratio} 1 1 elif (select_num == 15) vary_kd "/kinetics/PKC/PKC-AA_bind_Ca" {ratio} 1 2 elif (select_num == 16) vary_kd "/kinetics/PKC/PKC-Ca_bind_AA" {ratio} 1 1 elif (select_num == 17) vary_kd "/kinetics/PLA2/PLA2_bind_Ca" {ratio} 1 1 elif (select_num == 18) vary_kd "/kinetics/PLA2/PLA2-PIP2_bind_Ca" {ratio} 1 1 elif (select_num == 19) vary_kd "/kinetics/PLA2/PLA2_bind_PIP2" {ratio} 1 1 elif (select_num == 20) vary_kd "/kinetics/PLA2/PLA2-Ca_bind_PIP2" {ratio} 1 1 // Michaelis constants, Km elif (select_num == 21) setfield /kinetics/PKC/PKC_active/PKC_phos_Raf k1 {0.014565 / {ratio}} elif (select_num == 22) setfield /kinetics/MAPK/PP2A/PP2A_deph_Raf-P k1 {1.9108 / {ratio}} elif (select_num == 23) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK k1 {1.3191 / {ratio}} elif (select_num == 24) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK-P k1 {1.3191 / {ratio}} elif (select_num == 25) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-PP k1 {1.9108 / {ratio}} elif (select_num == 26) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-P k1 {1.9108 / {ratio}} elif (select_num == 27) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK k1 {16.2 / {ratio}} elif (select_num == 28) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK-P k1 {16.2 / {ratio}} elif (select_num == 29) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-PP k1 {30.0 / {ratio}} elif (select_num == 30) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-P k1 {30.0 / {ratio}} elif (select_num == 31) setfield /kinetics/MAPK/MAPK-PP/MAPK_phos_PLA2 k1 {3.9062 / {ratio}} elif (select_num == 32) setfield /kinetics/PLA2/PLA2-Ca/PLA2-Ca_prd_AA k1 {13.5 / {ratio}} elif (select_num == 33) setfield /kinetics/PLA2/PLA2-PIP2/PLA2-PIP2_prd_AA k1 {2.76 / {ratio}} elif (select_num == 34) setfield /kinetics/PLA2/PLA2-PIP2-Ca/PLA2-PIP2-Ca_prd_AA k1 {9.0 / {ratio}} elif (select_num == 35) setfield /kinetics/PLA2/PLA2-P/PLA2-P_prd_AA k1 {30.0 / {ratio}} elif (select_num == 36) setfield /kinetics/PKC/PKC_active/PKC_phos_AMPAR k1 {0.071431 / {ratio}} elif (select_num == 37) setfield /kinetics/MAPK/PP2A/PP2A_deph_AMPAR-P k1 {1.9108 / {ratio}} // Enzyme activity, kcat elif (select_num == 38) setfield /kinetics/PKC/PKC_active/PKC_phos_Raf k3 {0.0335 * {ratio}} elif (select_num == 39) setfield /kinetics/MAPK/PP2A/PP2A_deph_Raf-P k3 {6.0 * {ratio}} elif (select_num == 40) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK k3 {0.105 * {ratio}} elif (select_num == 41) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK-P k3 {0.105 * {ratio}} elif (select_num == 42) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-PP k3 {6.0 * {ratio}} elif (select_num == 43) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-P k3 {6.0 * {ratio}} elif (select_num == 44) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK k3 {0.15 * {ratio}} elif (select_num == 45) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK-P k3 {0.15 * {ratio}} elif (select_num == 46) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-PP k3 {1.0 * {ratio}} elif (select_num == 47) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-P k3 {1.0 * {ratio}} elif (select_num == 48) setfield /kinetics/MAPK/MAPK-PP/MAPK_phos_PLA2 k3 {20.0 * {ratio}} elif (select_num == 49) setfield /kinetics/PLA2/PLA2-Ca/PLA2-Ca_prd_AA k3 {54.0 * {ratio}} elif (select_num == 50) setfield /kinetics/PLA2/PLA2-PIP2/PLA2-PIP2_prd_AA k3 {11.04 * {ratio}} elif (select_num == 51) setfield /kinetics/PLA2/PLA2-PIP2-Ca/PLA2-PIP2-Ca_prd_AA k3 {36.0 * {ratio}} elif (select_num == 52) setfield /kinetics/PLA2/PLA2-P/PLA2-P_prd_AA k3 {120.0 * {ratio}} elif (select_num == 53) setfield /kinetics/PKC/PKC_active/PKC_phos_AMPAR k3 {0.05 * {ratio}} elif (select_num == 54) setfield /kinetics/MAPK/PP2A/PP2A_deph_AMPAR-P k3 {6.0 * {ratio}} // Concentration, [] elif (select_num == 55) /* PKC */ setfield /kinetics/PKC/PKC CoInit {1.0 * {ratio}} setfield /kinetics/PKC/PKC Co {1.0 * {ratio}} elif (select_num == 56) /* PP2A */ setfield /kinetics/MAPK/PP2A CoInit {0.045 * {ratio}} setfield /kinetics/MAPK/PP2A Co {0.045 * {ratio}} elif (select_num == 57) /* Raf */ setfield /kinetics/MAPK/Raf CoInit {0.5 * {ratio}} setfield /kinetics/MAPK/Raf Co {0.5 * {ratio}} elif (select_num == 58) /* MEK */ setfield /kinetics/MAPK/MEK CoInit {0.5 * {ratio}} setfield /kinetics/MAPK/MEK Co {0.5 * {ratio}} elif (select_num == 59) /* MAPK */ setfield /kinetics/MAPK/MAPK CoInit {1.0 * {ratio}} setfield /kinetics/MAPK/MAPK Co {1.0 * {ratio}} elif (select_num == 60) /* MKP */ setfield /kinetics/MAPK/MKP1 CoInit {0.0032 * {ratio}} setfield /kinetics/MAPK/MKP1 Co {0.0032 * {ratio}} elif (select_num == 61) /* PLA2 */ setfield /kinetics/PLA2/PLA2 CoInit {0.4 * {ratio}} setfield /kinetics/PLA2/PLA2 Co {0.4 * {ratio}} elif (select_num == 62) /* PIP2 */ setfield /kinetics/PLA2/PIP2 CoInit {10.0 * {ratio}} setfield /kinetics/PLA2/PIP2 Co {10.0 * {ratio}} elif (select_num == 63) /* APC */ setfield /kinetics/PLA2/APC CoInit {30.0 * {ratio}} setfield /kinetics/PLA2/APC Co {30.0 * {ratio}} elif (select_num == 64) /* AMPAR */ setfield /kinetics/AMPAR/AMPAR CoInit {0.5 * {ratio}} setfield /kinetics/AMPAR/AMPAR Co {0.5 * {ratio}} end end function resize_param(select_num) int select_num if (select_num == 0) /* Do nothing */ echo "Parameters are not varied at all." // Time constants, tau elif (select_num == 1) setfield /kinetics/PKC/PKC_bind_Ca kf {0.25} setfield /kinetics/PKC/PKC_bind_Ca kb {1.0} elif (select_num == 2) setfield /kinetics/PKC/PKC-Ca_memb kf {1.0} setfield /kinetics/PKC/PKC-Ca_memb kb {0.1} elif (select_num == 3) setfield /kinetics/PKC/PKC_bind_AA kf {0.2} setfield /kinetics/PKC/PKC_bind_AA kb {10.0} elif (select_num == 4) setfield /kinetics/PKC/PKC-AA_bind_Ca kf {0.25} setfield /kinetics/PKC/PKC-AA_bind_Ca kb {1.0} elif (select_num == 5) setfield /kinetics/PKC/PKC-AA_bind_Ca kf {0.25} setfield /kinetics/PKC/PKC-AA_bind_Ca kb {1.0} elif (select_num == 6) setfield /kinetics/PLA2/PLA2-P_deg kf {0.17} elif (select_num == 7) setfield /kinetics/PLA2/PLA2_bind_Ca kf {0.01} setfield /kinetics/PLA2/PLA2_bind_Ca kb {0.1} elif (select_num == 8) setfield /kinetics/PLA2/PLA2-PIP2_bind_Ca kf {0.01} setfield /kinetics/PLA2/PLA2-PIP2_bind_Ca kb {0.1} elif (select_num == 9) setfield /kinetics/PLA2/PLA2_bind_PIP2 kf {0.0012} setfield /kinetics/PLA2/PLA2_bind_PIP2 kb {0.48} elif (select_num == 10) setfield /kinetics/PLA2/PLA2-Ca_bind_PIP2 kf {0.0012} setfield /kinetics/PLA2/PLA2-Ca_bind_PIP2 kb {0.48} elif (select_num == 11) setfield /kinetics/PLA2/AA_deg kf {0.4} // Dissociation constants, Kd elif (select_num == 12) setfield /kinetics/PKC/PKC_bind_Ca kf {0.25} setfield /kinetics/PKC/PKC_bind_Ca kb {1.0} elif (select_num == 13) setfield /kinetics/PKC/PKC-Ca_memb kf {1.0} setfield /kinetics/PKC/PKC-Ca_memb kb {0.1} elif (select_num == 14) setfield /kinetics/PKC/PKC_bind_AA kf {0.2} setfield /kinetics/PKC/PKC_bind_AA kb {10.0} elif (select_num == 15) setfield /kinetics/PKC/PKC-AA_bind_Ca kf {0.25} setfield /kinetics/PKC/PKC-AA_bind_Ca kb {1.0} elif (select_num == 16) setfield /kinetics/PKC/PKC-Ca_bind_AA kf {0.2} setfield /kinetics/PKC/PKC-Ca_bind_AA kb {10.0} elif (select_num == 17) setfield /kinetics/PLA2/PLA2_bind_Ca kf {0.01} setfield /kinetics/PLA2/PLA2_bind_Ca kb {0.1} elif (select_num == 18) setfield /kinetics/PLA2/PLA2-PIP2_bind_Ca kf {0.01} setfield /kinetics/PLA2/PLA2-PIP2_bind_Ca kb {0.1} elif (select_num == 19) setfield /kinetics/PLA2/PLA2_bind_PIP2 kf {0.0012} setfield /kinetics/PLA2/PLA2_bind_PIP2 kb {0.48} elif (select_num == 20) setfield /kinetics/PLA2/PLA2-Ca_bind_PIP2 kf {0.0012} setfield /kinetics/PLA2/PLA2-Ca_bind_PIP2 kb {0.48} // Michaelis constants, Km elif (select_num == 21) setfield /kinetics/PKC/PKC_active/PKC_phos_Raf k1 {0.014565} elif (select_num == 22) setfield /kinetics/MAPK/PP2A/PP2A_deph_Raf-P k1 {1.9108} elif (select_num == 23) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK k1 {1.3191} elif (select_num == 24) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK-P k1 {1.3191} elif (select_num == 25) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-PP k1 {1.9108} elif (select_num == 26) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-P k1 {1.9108} elif (select_num == 27) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK k1 {16.2} elif (select_num == 28) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK-P k1 {16.2} elif (select_num == 29) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-PP k1 {30.0} elif (select_num == 30) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-P k1 {30.0} elif (select_num == 31) setfield /kinetics/MAPK/MAPK-PP/MAPK_phos_PLA2 k1 {3.9062} elif (select_num == 32) setfield /kinetics/PLA2/PLA2-Ca/PLA2-Ca_prd_AA k1 {13.5} elif (select_num == 33) setfield /kinetics/PLA2/PLA2-PIP2/PLA2-PIP2_prd_AA k1 {2.76} elif (select_num == 34) setfield /kinetics/PLA2/PLA2-PIP2-Ca/PLA2-PIP2-Ca_prd_AA k1 {9.0} elif (select_num == 35) setfield /kinetics/PLA2/PLA2-P/PLA2-P_prd_AA k1 {30.0} elif (select_num == 36) setfield /kinetics/PKC/PKC_active/PKC_phos_AMPAR k1 {0.071431} elif (select_num == 37) setfield /kinetics/MAPK/PP2A/PP2A_deph_AMPAR-P k1 {1.9108} // Enzyme activity, kcat elif (select_num == 38) setfield /kinetics/PKC/PKC_active/PKC_phos_Raf k3 {0.0335} elif (select_num == 39) setfield /kinetics/MAPK/PP2A/PP2A_deph_Raf-P k3 {6.0} elif (select_num == 40) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK k3 {0.105} elif (select_num == 41) setfield /kinetics/MAPK/Raf-P/Raf_act_MEK-P k3 {0.105} elif (select_num == 42) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-PP k3 {6.0} elif (select_num == 43) setfield /kinetics/MAPK/PP2A/PP2A_deph_MEK-P k3 {6.0} elif (select_num == 44) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK k3 {0.15} elif (select_num == 45) setfield /kinetics/MAPK/MEK-PP/MEK_act_MAPK-P k3 {0.15} elif (select_num == 46) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-PP k3 {1.0} elif (select_num == 47) setfield /kinetics/MAPK/MKP1/MKP_deph_MAPK-P k3 {1.0} elif (select_num == 48) setfield /kinetics/MAPK/MAPK-PP/MAPK_phos_PLA2 k3 {20.0} elif (select_num == 49) setfield /kinetics/PLA2/PLA2-Ca/PLA2-Ca_prd_AA k3 {54.0} elif (select_num == 50) setfield /kinetics/PLA2/PLA2-PIP2/PLA2-PIP2_prd_AA k3 {11.04} elif (select_num == 51) setfield /kinetics/PLA2/PLA2-PIP2-Ca/PLA2-PIP2-Ca_prd_AA k3 {36.0} elif (select_num == 52) setfield /kinetics/PLA2/PLA2-P/PLA2-P_prd_AA k3 {120.0} elif (select_num == 53) setfield /kinetics/PKC/PKC_active/PKC_phos_AMPAR k3 {0.05} elif (select_num == 54) setfield /kinetics/MAPK/PP2A/PP2A_deph_AMPAR-P k3 {6.0} // Concentration, [] elif (select_num == 55) /* PKC */ setfield /kinetics/PKC/PKC CoInit {1.0} setfield /kinetics/PKC/PKC Co {1.0} elif (select_num == 56) /* PP2A */ setfield /kinetics/MAPK/PP2A CoInit {0.045} setfield /kinetics/MAPK/PP2A Co {0.045} elif (select_num == 57) /* Raf */ setfield /kinetics/MAPK/Raf CoInit {0.5} setfield /kinetics/MAPK/Raf Co {0.5} elif (select_num == 58) /* MEK */ setfield /kinetics/MAPK/MEK CoInit {0.5} setfield /kinetics/MAPK/MEK Co {0.5} elif (select_num == 59) /* MAPK */ setfield /kinetics/MAPK/MAPK CoInit {1.0} setfield /kinetics/MAPK/MAPK Co {1.0} elif (select_num == 60) /* MKP */ setfield /kinetics/MAPK/MKP1 CoInit {0.0032} setfield /kinetics/MAPK/MKP1 Co {0.0032} elif (select_num == 61) /* PLA2 */ setfield /kinetics/PLA2/PLA2 CoInit {0.4} setfield /kinetics/PLA2/PLA2 Co {0.4} elif (select_num == 62) /* PIP2 */ setfield /kinetics/PLA2/PIP2 CoInit {10.0} setfield /kinetics/PLA2/PIP2 Co {10.0} elif (select_num == 63) /* APC */ setfield /kinetics/PLA2/APC CoInit {30.0} setfield /kinetics/PLA2/APC Co {30.0} elif (select_num == 64) /* AMPAR */ setfield /kinetics/AMPAR/AMPAR CoInit {0.5} setfield /kinetics/AMPAR/AMPAR Co {0.5} end end function do_flash (select_num, ratio, peakCa, duration) int select_num float ratio float peakCa float duration str filefullname vary_param {select_num} {ratio} reset /* Equilibrium at the basal state for 1 sec */ /* initialze */ setfield /kinetics/CaInput CoInit 0 setfield /kinetics/CaInput Co 0 setfield /kinetics/ramp kf 0 reset setclock 0 {finedt} setclock 1 {finedt} setclock 3 {plotdt} MAXTIME = 1 step {MAXTIME} -time /* t = 0 -> 0.1 */ /* Apply ramp Ca */ setclock 0 {finedt} setclock 1 {finedt} setclock 3 {plotdt} setfield /kinetics/ramp kf { {peakCa - Cabasal}/duration } MAXTIME = duration step {MAXTIME} -time /* Quit ramp Ca */ setclock 0 {finedt} setclock 1 {finedt} setclock 3 {plotdt} setfield /kinetics/CaInput CoInit 0 setfield /kinetics/CaInput Co 0 setfield /kinetics/ramp kf 0 MAXTIME = 1 step {MAXTIME} -time /* After Ca ramp */ setclock 0 {normdt} setclock 1 {normdt} setclock 3 {plotdt} MAXTIME = {100 - duration} step {MAXTIME} -time setclock 0 {roughdt} setclock 1 {roughdt} setclock 3 {plotdt} MAXTIME = 5900.1 step {MAXTIME} -time filefullname = {"simresult/TanakaFigS7/TanakaFigS7_param" @ {select_num} @ "_ratio" @ {ratio} @ "_peakCa" @ {peakCa} @ "_duration" @ {duration} @ "sec_AMPAR.plot"} do_save_named_plot /graphs/conc2/AMPAR.Co {filefullname} echo "saved as "{filefullname} resize_param {select_num} end function params (select_num, ratio, start_peakCa, end_peakCa) int select_num float ratio float peakCa float start_peakCa float step_peakCa = 0.1 float end_peakCa float duration = 1.0 end_peakCa = end_peakCa + 0.001 /* for epsilon problem */ // vary_param {select_num} {ratio} for(peakCa = start_peakCa; peakCa <= end_peakCa; peakCa = peakCa + step_peakCa) do_flash {select_num} {ratio} {peakCa} {duration} // resize_param {select_num} reset end end function param (start_select_num, end_select_num) int start_select_num int end_select_num int select_num for(select_num = start_select_num; select_num <= end_select_num; select_num = select_num + 1) do_flash_peakCa_duration {select_num} {2.0} do_flash_peakCa_duration {select_num} {0.5} do_flash_peakCa_duration {select_num} {5.0} do_flash_peakCa_duration {select_num} {0.2} do_flash_peakCa_duration {select_num} {10.0} do_flash_peakCa_duration {select_num} {0.1} do_flash_peakCa_duration {select_num} {20.0} do_flash_peakCa_duration {select_num} {0.05} do_flash_peakCa_duration {select_num} {50.0} do_flash_peakCa_duration {select_num} {0.02} do_flash_peakCa_duration {select_num} {100.0} do_flash_peakCa_duration {select_num} {0.01} end end // quit