wormsim 0.0.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- wormsim/__init__.py +0 -0
- wormsim/abstract_circuit.py +172 -0
- wormsim/circuit.pkl +0 -0
- wormsim/components/__init__.py +0 -0
- wormsim/components/mechanism/__init__.py +0 -0
- wormsim/components/mechanism/modfile/__init__.py +0 -0
- wormsim/components/mechanism/modfile/cainternm.mod +75 -0
- wormsim/components/mechanism/modfile/cca1.mod +87 -0
- wormsim/components/mechanism/modfile/egl19.mod +100 -0
- wormsim/components/mechanism/modfile/egl2.mod +76 -0
- wormsim/components/mechanism/modfile/egl36.mod +92 -0
- wormsim/components/mechanism/modfile/exc_syn_advance.mod +91 -0
- wormsim/components/mechanism/modfile/gapjunction.mod +41 -0
- wormsim/components/mechanism/modfile/gapjunction_advance.mod +40 -0
- wormsim/components/mechanism/modfile/inh_syn_advance.mod +91 -0
- wormsim/components/mechanism/modfile/irk.mod +76 -0
- wormsim/components/mechanism/modfile/kcnl.mod +76 -0
- wormsim/components/mechanism/modfile/kqt3.mod +110 -0
- wormsim/components/mechanism/modfile/kvs1.mod +87 -0
- wormsim/components/mechanism/modfile/nca.mod +41 -0
- wormsim/components/mechanism/modfile/neuron_to_neuron_exc_syn.mod +92 -0
- wormsim/components/mechanism/modfile/neuron_to_neuron_inh_syn.mod +92 -0
- wormsim/components/mechanism/modfile/shk1.mod +86 -0
- wormsim/components/mechanism/modfile/shl1.mod +101 -0
- wormsim/components/mechanism/modfile/slo1_egl19.mod +148 -0
- wormsim/components/mechanism/modfile/slo1_unc2.mod +139 -0
- wormsim/components/mechanism/modfile/slo2_egl19.mod +148 -0
- wormsim/components/mechanism/modfile/slo2_unc2.mod +138 -0
- wormsim/components/mechanism/modfile/unc2.mod +90 -0
- wormsim/components/mechanism/x86_64/__init__.py +0 -0
- wormsim/components/mechanism/x86_64/cainternm.c +594 -0
- wormsim/components/mechanism/x86_64/cainternm.o +0 -0
- wormsim/components/mechanism/x86_64/cca1.c +621 -0
- wormsim/components/mechanism/x86_64/cca1.o +0 -0
- wormsim/components/mechanism/x86_64/egl19.c +681 -0
- wormsim/components/mechanism/x86_64/egl19.o +0 -0
- wormsim/components/mechanism/x86_64/egl2.c +569 -0
- wormsim/components/mechanism/x86_64/egl2.o +0 -0
- wormsim/components/mechanism/x86_64/egl36.c +615 -0
- wormsim/components/mechanism/x86_64/egl36.o +0 -0
- wormsim/components/mechanism/x86_64/exc_syn_advance.c +587 -0
- wormsim/components/mechanism/x86_64/exc_syn_advance.o +0 -0
- wormsim/components/mechanism/x86_64/gapjunction.c +364 -0
- wormsim/components/mechanism/x86_64/gapjunction.o +0 -0
- wormsim/components/mechanism/x86_64/gapjunction_advance.c +378 -0
- wormsim/components/mechanism/x86_64/gapjunction_advance.o +0 -0
- wormsim/components/mechanism/x86_64/inh_syn_advance.c +587 -0
- wormsim/components/mechanism/x86_64/inh_syn_advance.o +0 -0
- wormsim/components/mechanism/x86_64/irk.c +577 -0
- wormsim/components/mechanism/x86_64/irk.o +0 -0
- wormsim/components/mechanism/x86_64/kcnl.c +565 -0
- wormsim/components/mechanism/x86_64/kcnl.o +0 -0
- wormsim/components/mechanism/x86_64/kqt3.c +723 -0
- wormsim/components/mechanism/x86_64/kqt3.o +0 -0
- wormsim/components/mechanism/x86_64/kvs1.c +621 -0
- wormsim/components/mechanism/x86_64/kvs1.o +0 -0
- wormsim/components/mechanism/x86_64/makemod2c_inc +185 -0
- wormsim/components/mechanism/x86_64/mod_func.c +82 -0
- wormsim/components/mechanism/x86_64/mod_func.o +0 -0
- wormsim/components/mechanism/x86_64/nca.c +366 -0
- wormsim/components/mechanism/x86_64/nca.o +0 -0
- wormsim/components/mechanism/x86_64/neuron_to_neuron_exc_syn.c +572 -0
- wormsim/components/mechanism/x86_64/neuron_to_neuron_exc_syn.o +0 -0
- wormsim/components/mechanism/x86_64/neuron_to_neuron_inh_syn.c +572 -0
- wormsim/components/mechanism/x86_64/neuron_to_neuron_inh_syn.o +0 -0
- wormsim/components/mechanism/x86_64/shk1.c +616 -0
- wormsim/components/mechanism/x86_64/shk1.o +0 -0
- wormsim/components/mechanism/x86_64/shl1.c +676 -0
- wormsim/components/mechanism/x86_64/shl1.o +0 -0
- wormsim/components/mechanism/x86_64/slo1_egl19.c +820 -0
- wormsim/components/mechanism/x86_64/slo1_egl19.o +0 -0
- wormsim/components/mechanism/x86_64/slo1_unc2.c +777 -0
- wormsim/components/mechanism/x86_64/slo1_unc2.o +0 -0
- wormsim/components/mechanism/x86_64/slo2_egl19.c +820 -0
- wormsim/components/mechanism/x86_64/slo2_egl19.o +0 -0
- wormsim/components/mechanism/x86_64/slo2_unc2.c +775 -0
- wormsim/components/mechanism/x86_64/slo2_unc2.o +0 -0
- wormsim/components/mechanism/x86_64/special +17 -0
- wormsim/components/mechanism/x86_64/unc2.c +636 -0
- wormsim/components/mechanism/x86_64/unc2.o +0 -0
- wormsim/components/model/ADAL.hoc +135 -0
- wormsim/components/model/ADAR.hoc +135 -0
- wormsim/components/model/ADEL.hoc +183 -0
- wormsim/components/model/ADER.hoc +183 -0
- wormsim/components/model/ADFL.hoc +164 -0
- wormsim/components/model/ADFR.hoc +164 -0
- wormsim/components/model/ADLL.hoc +185 -0
- wormsim/components/model/ADLR.hoc +185 -0
- wormsim/components/model/AFDL.hoc +164 -0
- wormsim/components/model/AFDR.hoc +164 -0
- wormsim/components/model/AIAL.hoc +129 -0
- wormsim/components/model/AIAR.hoc +129 -0
- wormsim/components/model/AIBL.hoc +147 -0
- wormsim/components/model/AIBR.hoc +147 -0
- wormsim/components/model/AIML.hoc +130 -0
- wormsim/components/model/AIMR.hoc +130 -0
- wormsim/components/model/AINL.hoc +157 -0
- wormsim/components/model/AINR.hoc +157 -0
- wormsim/components/model/AIYL.hoc +129 -0
- wormsim/components/model/AIYR.hoc +129 -0
- wormsim/components/model/AIZL.hoc +137 -0
- wormsim/components/model/AIZR.hoc +137 -0
- wormsim/components/model/ALA.hoc +148 -0
- wormsim/components/model/ALML.hoc +203 -0
- wormsim/components/model/ALMR.hoc +203 -0
- wormsim/components/model/ALNL.hoc +175 -0
- wormsim/components/model/ALNR.hoc +175 -0
- wormsim/components/model/AQR.hoc +187 -0
- wormsim/components/model/AS01.hoc +151 -0
- wormsim/components/model/AS02.hoc +152 -0
- wormsim/components/model/AS03.hoc +151 -0
- wormsim/components/model/AS04.hoc +154 -0
- wormsim/components/model/AS05.hoc +155 -0
- wormsim/components/model/AS06.hoc +153 -0
- wormsim/components/model/AS07.hoc +156 -0
- wormsim/components/model/AS08.hoc +158 -0
- wormsim/components/model/AS09.hoc +154 -0
- wormsim/components/model/AS10.hoc +153 -0
- wormsim/components/model/AS11.hoc +154 -0
- wormsim/components/model/ASEL.hoc +173 -0
- wormsim/components/model/ASER.hoc +173 -0
- wormsim/components/model/ASGL.hoc +160 -0
- wormsim/components/model/ASGR.hoc +160 -0
- wormsim/components/model/ASHL.hoc +165 -0
- wormsim/components/model/ASHR.hoc +165 -0
- wormsim/components/model/ASIL.hoc +168 -0
- wormsim/components/model/ASIR.hoc +168 -0
- wormsim/components/model/ASJL.hoc +167 -0
- wormsim/components/model/ASJR.hoc +167 -0
- wormsim/components/model/ASKL.hoc +165 -0
- wormsim/components/model/ASKR.hoc +165 -0
- wormsim/components/model/AUAL.hoc +164 -0
- wormsim/components/model/AUAR.hoc +164 -0
- wormsim/components/model/AVAL.hoc +197 -0
- wormsim/components/model/AVAR.hoc +197 -0
- wormsim/components/model/AVBL.hoc +216 -0
- wormsim/components/model/AVBR.hoc +216 -0
- wormsim/components/model/AVDL.hoc +197 -0
- wormsim/components/model/AVDR.hoc +197 -0
- wormsim/components/model/AVEL.hoc +149 -0
- wormsim/components/model/AVER.hoc +149 -0
- wormsim/components/model/AVFL.hoc +195 -0
- wormsim/components/model/AVFR.hoc +196 -0
- wormsim/components/model/AVG.hoc +166 -0
- wormsim/components/model/AVHL.hoc +172 -0
- wormsim/components/model/AVHR.hoc +172 -0
- wormsim/components/model/AVJL.hoc +173 -0
- wormsim/components/model/AVJR.hoc +172 -0
- wormsim/components/model/AVKL.hoc +204 -0
- wormsim/components/model/AVKR.hoc +204 -0
- wormsim/components/model/AVL.hoc +180 -0
- wormsim/components/model/AVM.hoc +203 -0
- wormsim/components/model/AWAL.hoc +165 -0
- wormsim/components/model/AWAR.hoc +165 -0
- wormsim/components/model/AWBL.hoc +165 -0
- wormsim/components/model/AWBR.hoc +165 -0
- wormsim/components/model/AWCL.hoc +168 -0
- wormsim/components/model/AWCR.hoc +168 -0
- wormsim/components/model/BAGL.hoc +160 -0
- wormsim/components/model/BAGR.hoc +160 -0
- wormsim/components/model/BDUL.hoc +136 -0
- wormsim/components/model/BDUR.hoc +136 -0
- wormsim/components/model/CANL.hoc +165 -0
- wormsim/components/model/CANR.hoc +165 -0
- wormsim/components/model/CEPDL.hoc +182 -0
- wormsim/components/model/CEPDR.hoc +182 -0
- wormsim/components/model/CEPVL.hoc +179 -0
- wormsim/components/model/CEPVR.hoc +179 -0
- wormsim/components/model/DA01.hoc +177 -0
- wormsim/components/model/DA02.hoc +180 -0
- wormsim/components/model/DA03.hoc +160 -0
- wormsim/components/model/DA04.hoc +167 -0
- wormsim/components/model/DA05.hoc +176 -0
- wormsim/components/model/DA06.hoc +187 -0
- wormsim/components/model/DA07.hoc +175 -0
- wormsim/components/model/DA08.hoc +161 -0
- wormsim/components/model/DA09.hoc +161 -0
- wormsim/components/model/DB01.hoc +193 -0
- wormsim/components/model/DB02.hoc +184 -0
- wormsim/components/model/DB03.hoc +181 -0
- wormsim/components/model/DB04.hoc +190 -0
- wormsim/components/model/DB05.hoc +182 -0
- wormsim/components/model/DB06.hoc +166 -0
- wormsim/components/model/DB07.hoc +162 -0
- wormsim/components/model/DD01.hoc +180 -0
- wormsim/components/model/DD02.hoc +203 -0
- wormsim/components/model/DD03.hoc +211 -0
- wormsim/components/model/DD04.hoc +221 -0
- wormsim/components/model/DD05.hoc +208 -0
- wormsim/components/model/DD06.hoc +211 -0
- wormsim/components/model/DVA.hoc +178 -0
- wormsim/components/model/DVB.hoc +137 -0
- wormsim/components/model/DVC.hoc +178 -0
- wormsim/components/model/FLPL.hoc +261 -0
- wormsim/components/model/FLPR.hoc +261 -0
- wormsim/components/model/HSNL.hoc +161 -0
- wormsim/components/model/HSNR.hoc +161 -0
- wormsim/components/model/I1L.hoc +157 -0
- wormsim/components/model/I1R.hoc +157 -0
- wormsim/components/model/I2L.hoc +161 -0
- wormsim/components/model/I2R.hoc +161 -0
- wormsim/components/model/I3.hoc +165 -0
- wormsim/components/model/I4.hoc +171 -0
- wormsim/components/model/I5.hoc +363 -0
- wormsim/components/model/I6.hoc +176 -0
- wormsim/components/model/IL1DL.hoc +177 -0
- wormsim/components/model/IL1DR.hoc +176 -0
- wormsim/components/model/IL1L.hoc +179 -0
- wormsim/components/model/IL1R.hoc +179 -0
- wormsim/components/model/IL1VL.hoc +151 -0
- wormsim/components/model/IL1VR.hoc +151 -0
- wormsim/components/model/IL2DL.hoc +151 -0
- wormsim/components/model/IL2DR.hoc +151 -0
- wormsim/components/model/IL2L.hoc +151 -0
- wormsim/components/model/IL2R.hoc +151 -0
- wormsim/components/model/IL2VL.hoc +150 -0
- wormsim/components/model/IL2VR.hoc +150 -0
- wormsim/components/model/LUAL.hoc +129 -0
- wormsim/components/model/LUAR.hoc +129 -0
- wormsim/components/model/M1.hoc +161 -0
- wormsim/components/model/M2L.hoc +131 -0
- wormsim/components/model/M2R.hoc +131 -0
- wormsim/components/model/M3L.hoc +191 -0
- wormsim/components/model/M3R.hoc +191 -0
- wormsim/components/model/M4.hoc +192 -0
- wormsim/components/model/M5.hoc +256 -0
- wormsim/components/model/MCL.hoc +181 -0
- wormsim/components/model/MCR.hoc +181 -0
- wormsim/components/model/MI.hoc +134 -0
- wormsim/components/model/NSML.hoc +165 -0
- wormsim/components/model/NSMR.hoc +165 -0
- wormsim/components/model/OLLL.hoc +187 -0
- wormsim/components/model/OLLR.hoc +187 -0
- wormsim/components/model/OLQDL.hoc +175 -0
- wormsim/components/model/OLQDR.hoc +175 -0
- wormsim/components/model/OLQVL.hoc +150 -0
- wormsim/components/model/OLQVR.hoc +150 -0
- wormsim/components/model/PDA.hoc +142 -0
- wormsim/components/model/PDB.hoc +149 -0
- wormsim/components/model/PDEL.hoc +192 -0
- wormsim/components/model/PDER.hoc +193 -0
- wormsim/components/model/PHAL.hoc +149 -0
- wormsim/components/model/PHAR.hoc +149 -0
- wormsim/components/model/PHBL.hoc +149 -0
- wormsim/components/model/PHBR.hoc +149 -0
- wormsim/components/model/PHCL.hoc +154 -0
- wormsim/components/model/PHCR.hoc +154 -0
- wormsim/components/model/PLML.hoc +216 -0
- wormsim/components/model/PLMR.hoc +216 -0
- wormsim/components/model/PLNL.hoc +186 -0
- wormsim/components/model/PLNR.hoc +187 -0
- wormsim/components/model/PQR.hoc +153 -0
- wormsim/components/model/PVCL.hoc +173 -0
- wormsim/components/model/PVCR.hoc +175 -0
- wormsim/components/model/PVDL.hoc +8568 -0
- wormsim/components/model/PVDR.hoc +8566 -0
- wormsim/components/model/PVM.hoc +151 -0
- wormsim/components/model/PVNL.hoc +322 -0
- wormsim/components/model/PVNR.hoc +287 -0
- wormsim/components/model/PVPL.hoc +166 -0
- wormsim/components/model/PVPR.hoc +164 -0
- wormsim/components/model/PVQL.hoc +178 -0
- wormsim/components/model/PVQR.hoc +177 -0
- wormsim/components/model/PVR.hoc +205 -0
- wormsim/components/model/PVT.hoc +174 -0
- wormsim/components/model/PVWL.hoc +131 -0
- wormsim/components/model/PVWR.hoc +131 -0
- wormsim/components/model/RIAL.hoc +141 -0
- wormsim/components/model/RIAR.hoc +141 -0
- wormsim/components/model/RIBL.hoc +231 -0
- wormsim/components/model/RIBR.hoc +231 -0
- wormsim/components/model/RICL.hoc +154 -0
- wormsim/components/model/RICR.hoc +154 -0
- wormsim/components/model/RID.hoc +207 -0
- wormsim/components/model/RIFL.hoc +130 -0
- wormsim/components/model/RIFR.hoc +130 -0
- wormsim/components/model/RIGL.hoc +129 -0
- wormsim/components/model/RIGR.hoc +129 -0
- wormsim/components/model/RIH.hoc +172 -0
- wormsim/components/model/RIML.hoc +198 -0
- wormsim/components/model/RIMR.hoc +198 -0
- wormsim/components/model/RIPL.hoc +227 -0
- wormsim/components/model/RIPR.hoc +227 -0
- wormsim/components/model/RIR.hoc +167 -0
- wormsim/components/model/RIS.hoc +151 -0
- wormsim/components/model/RIVL.hoc +187 -0
- wormsim/components/model/RIVR.hoc +187 -0
- wormsim/components/model/RMDDL.hoc +130 -0
- wormsim/components/model/RMDDR.hoc +130 -0
- wormsim/components/model/RMDL.hoc +132 -0
- wormsim/components/model/RMDR.hoc +132 -0
- wormsim/components/model/RMDVL.hoc +132 -0
- wormsim/components/model/RMDVR.hoc +132 -0
- wormsim/components/model/RMED.hoc +161 -0
- wormsim/components/model/RMEL.hoc +132 -0
- wormsim/components/model/RMER.hoc +132 -0
- wormsim/components/model/RMEV.hoc +205 -0
- wormsim/components/model/RMFL.hoc +168 -0
- wormsim/components/model/RMFR.hoc +168 -0
- wormsim/components/model/RMGL.hoc +134 -0
- wormsim/components/model/RMGR.hoc +134 -0
- wormsim/components/model/RMHL.hoc +168 -0
- wormsim/components/model/RMHR.hoc +168 -0
- wormsim/components/model/SAADL.hoc +207 -0
- wormsim/components/model/SAADR.hoc +207 -0
- wormsim/components/model/SAAVL.hoc +167 -0
- wormsim/components/model/SAAVR.hoc +167 -0
- wormsim/components/model/SABD.hoc +192 -0
- wormsim/components/model/SABVL.hoc +143 -0
- wormsim/components/model/SABVR.hoc +143 -0
- wormsim/components/model/SDQL.hoc +150 -0
- wormsim/components/model/SDQR.hoc +135 -0
- wormsim/components/model/SIADL.hoc +191 -0
- wormsim/components/model/SIADR.hoc +191 -0
- wormsim/components/model/SIAVL.hoc +159 -0
- wormsim/components/model/SIAVR.hoc +159 -0
- wormsim/components/model/SIBDL.hoc +192 -0
- wormsim/components/model/SIBDR.hoc +192 -0
- wormsim/components/model/SIBVL.hoc +227 -0
- wormsim/components/model/SIBVR.hoc +227 -0
- wormsim/components/model/SMBDL.hoc +161 -0
- wormsim/components/model/SMBDR.hoc +161 -0
- wormsim/components/model/SMBVL.hoc +172 -0
- wormsim/components/model/SMBVR.hoc +172 -0
- wormsim/components/model/SMDDL.hoc +162 -0
- wormsim/components/model/SMDDR.hoc +162 -0
- wormsim/components/model/SMDVL.hoc +166 -0
- wormsim/components/model/SMDVR.hoc +166 -0
- wormsim/components/model/URADL.hoc +152 -0
- wormsim/components/model/URADR.hoc +152 -0
- wormsim/components/model/URAVL.hoc +150 -0
- wormsim/components/model/URAVR.hoc +150 -0
- wormsim/components/model/URBL.hoc +164 -0
- wormsim/components/model/URBR.hoc +164 -0
- wormsim/components/model/URXL.hoc +172 -0
- wormsim/components/model/URXR.hoc +172 -0
- wormsim/components/model/URYDL.hoc +160 -0
- wormsim/components/model/URYDR.hoc +160 -0
- wormsim/components/model/URYVL.hoc +150 -0
- wormsim/components/model/URYVR.hoc +150 -0
- wormsim/components/model/VA01.hoc +191 -0
- wormsim/components/model/VA02.hoc +144 -0
- wormsim/components/model/VA03.hoc +147 -0
- wormsim/components/model/VA04.hoc +148 -0
- wormsim/components/model/VA05.hoc +147 -0
- wormsim/components/model/VA06.hoc +156 -0
- wormsim/components/model/VA07.hoc +157 -0
- wormsim/components/model/VA08.hoc +156 -0
- wormsim/components/model/VA09.hoc +154 -0
- wormsim/components/model/VA10.hoc +145 -0
- wormsim/components/model/VA11.hoc +141 -0
- wormsim/components/model/VA12.hoc +123 -0
- wormsim/components/model/VB01.hoc +195 -0
- wormsim/components/model/VB02.hoc +192 -0
- wormsim/components/model/VB03.hoc +157 -0
- wormsim/components/model/VB04.hoc +159 -0
- wormsim/components/model/VB05.hoc +159 -0
- wormsim/components/model/VB06.hoc +158 -0
- wormsim/components/model/VB07.hoc +155 -0
- wormsim/components/model/VB08.hoc +155 -0
- wormsim/components/model/VB09.hoc +148 -0
- wormsim/components/model/VB10.hoc +149 -0
- wormsim/components/model/VB11.hoc +146 -0
- wormsim/components/model/VC01.hoc +159 -0
- wormsim/components/model/VC02.hoc +157 -0
- wormsim/components/model/VC03.hoc +275 -0
- wormsim/components/model/VC04.hoc +255 -0
- wormsim/components/model/VC05.hoc +255 -0
- wormsim/components/model/VC06.hoc +143 -0
- wormsim/components/model/VD01.hoc +194 -0
- wormsim/components/model/VD02.hoc +186 -0
- wormsim/components/model/VD03.hoc +187 -0
- wormsim/components/model/VD04.hoc +190 -0
- wormsim/components/model/VD05.hoc +190 -0
- wormsim/components/model/VD06.hoc +190 -0
- wormsim/components/model/VD07.hoc +194 -0
- wormsim/components/model/VD08.hoc +197 -0
- wormsim/components/model/VD09.hoc +189 -0
- wormsim/components/model/VD10.hoc +190 -0
- wormsim/components/model/VD11.hoc +190 -0
- wormsim/components/model/VD12.hoc +190 -0
- wormsim/components/model/VD13.hoc +189 -0
- wormsim/components/model/__init__.py +0 -0
- wormsim/components/param/__init__.py +0 -0
- wormsim/components/param/cell/ADAL.json +30 -0
- wormsim/components/param/cell/ADAR.json +30 -0
- wormsim/components/param/cell/ADEL.json +30 -0
- wormsim/components/param/cell/ADER.json +30 -0
- wormsim/components/param/cell/ADFL.json +30 -0
- wormsim/components/param/cell/ADFR.json +30 -0
- wormsim/components/param/cell/ADLL.json +30 -0
- wormsim/components/param/cell/ADLR.json +30 -0
- wormsim/components/param/cell/AFDL.json +30 -0
- wormsim/components/param/cell/AFDR.json +30 -0
- wormsim/components/param/cell/AIAL.json +30 -0
- wormsim/components/param/cell/AIAR.json +30 -0
- wormsim/components/param/cell/AIBL.json +30 -0
- wormsim/components/param/cell/AIBR.json +30 -0
- wormsim/components/param/cell/AIML.json +30 -0
- wormsim/components/param/cell/AIMR.json +30 -0
- wormsim/components/param/cell/AINL.json +30 -0
- wormsim/components/param/cell/AINR.json +30 -0
- wormsim/components/param/cell/AIYL.json +30 -0
- wormsim/components/param/cell/AIYR.json +30 -0
- wormsim/components/param/cell/AIZL.json +30 -0
- wormsim/components/param/cell/AIZR.json +30 -0
- wormsim/components/param/cell/ALA.json +30 -0
- wormsim/components/param/cell/ALML.json +30 -0
- wormsim/components/param/cell/ALMR.json +30 -0
- wormsim/components/param/cell/ALNL.json +30 -0
- wormsim/components/param/cell/ALNR.json +30 -0
- wormsim/components/param/cell/AQR.json +30 -0
- wormsim/components/param/cell/AS01.json +30 -0
- wormsim/components/param/cell/AS02.json +30 -0
- wormsim/components/param/cell/AS03.json +30 -0
- wormsim/components/param/cell/AS04.json +30 -0
- wormsim/components/param/cell/AS05.json +30 -0
- wormsim/components/param/cell/AS06.json +30 -0
- wormsim/components/param/cell/AS07.json +30 -0
- wormsim/components/param/cell/AS08.json +30 -0
- wormsim/components/param/cell/AS09.json +30 -0
- wormsim/components/param/cell/AS10.json +30 -0
- wormsim/components/param/cell/AS11.json +30 -0
- wormsim/components/param/cell/ASEL.json +30 -0
- wormsim/components/param/cell/ASER.json +30 -0
- wormsim/components/param/cell/ASGL.json +30 -0
- wormsim/components/param/cell/ASGR.json +30 -0
- wormsim/components/param/cell/ASHL.json +30 -0
- wormsim/components/param/cell/ASHR.json +30 -0
- wormsim/components/param/cell/ASIL.json +30 -0
- wormsim/components/param/cell/ASIR.json +30 -0
- wormsim/components/param/cell/ASJL.json +30 -0
- wormsim/components/param/cell/ASJR.json +30 -0
- wormsim/components/param/cell/ASKL.json +30 -0
- wormsim/components/param/cell/ASKR.json +30 -0
- wormsim/components/param/cell/AUAL.json +30 -0
- wormsim/components/param/cell/AUAR.json +30 -0
- wormsim/components/param/cell/AVAL.json +30 -0
- wormsim/components/param/cell/AVAR.json +30 -0
- wormsim/components/param/cell/AVBL.json +30 -0
- wormsim/components/param/cell/AVBR.json +30 -0
- wormsim/components/param/cell/AVDL.json +30 -0
- wormsim/components/param/cell/AVDR.json +30 -0
- wormsim/components/param/cell/AVEL.json +30 -0
- wormsim/components/param/cell/AVER.json +30 -0
- wormsim/components/param/cell/AVFL.json +30 -0
- wormsim/components/param/cell/AVFR.json +30 -0
- wormsim/components/param/cell/AVG.json +30 -0
- wormsim/components/param/cell/AVHL.json +30 -0
- wormsim/components/param/cell/AVHR.json +30 -0
- wormsim/components/param/cell/AVJL.json +30 -0
- wormsim/components/param/cell/AVJR.json +30 -0
- wormsim/components/param/cell/AVKL.json +30 -0
- wormsim/components/param/cell/AVKR.json +30 -0
- wormsim/components/param/cell/AVL.json +30 -0
- wormsim/components/param/cell/AVM.json +30 -0
- wormsim/components/param/cell/AWAL.json +30 -0
- wormsim/components/param/cell/AWAR.json +30 -0
- wormsim/components/param/cell/AWBL.json +30 -0
- wormsim/components/param/cell/AWBR.json +30 -0
- wormsim/components/param/cell/AWCL.json +30 -0
- wormsim/components/param/cell/AWCR.json +30 -0
- wormsim/components/param/cell/BAGL.json +30 -0
- wormsim/components/param/cell/BAGR.json +30 -0
- wormsim/components/param/cell/BDUL.json +30 -0
- wormsim/components/param/cell/BDUR.json +30 -0
- wormsim/components/param/cell/CANL.json +30 -0
- wormsim/components/param/cell/CANR.json +30 -0
- wormsim/components/param/cell/CEPDL.json +30 -0
- wormsim/components/param/cell/CEPDR.json +30 -0
- wormsim/components/param/cell/CEPVL.json +30 -0
- wormsim/components/param/cell/CEPVR.json +30 -0
- wormsim/components/param/cell/DA01.json +30 -0
- wormsim/components/param/cell/DA02.json +30 -0
- wormsim/components/param/cell/DA03.json +30 -0
- wormsim/components/param/cell/DA04.json +30 -0
- wormsim/components/param/cell/DA05.json +30 -0
- wormsim/components/param/cell/DA06.json +30 -0
- wormsim/components/param/cell/DA07.json +30 -0
- wormsim/components/param/cell/DA08.json +30 -0
- wormsim/components/param/cell/DA09.json +30 -0
- wormsim/components/param/cell/DB01.json +30 -0
- wormsim/components/param/cell/DB02.json +30 -0
- wormsim/components/param/cell/DB03.json +30 -0
- wormsim/components/param/cell/DB04.json +30 -0
- wormsim/components/param/cell/DB05.json +30 -0
- wormsim/components/param/cell/DB06.json +30 -0
- wormsim/components/param/cell/DB07.json +30 -0
- wormsim/components/param/cell/DD01.json +30 -0
- wormsim/components/param/cell/DD02.json +30 -0
- wormsim/components/param/cell/DD03.json +30 -0
- wormsim/components/param/cell/DD04.json +30 -0
- wormsim/components/param/cell/DD05.json +30 -0
- wormsim/components/param/cell/DD06.json +30 -0
- wormsim/components/param/cell/DVA.json +30 -0
- wormsim/components/param/cell/DVB.json +30 -0
- wormsim/components/param/cell/DVC.json +30 -0
- wormsim/components/param/cell/FLPL.json +30 -0
- wormsim/components/param/cell/FLPR.json +30 -0
- wormsim/components/param/cell/HSNL.json +30 -0
- wormsim/components/param/cell/HSNR.json +30 -0
- wormsim/components/param/cell/I1L.json +30 -0
- wormsim/components/param/cell/I1R.json +30 -0
- wormsim/components/param/cell/I2L.json +30 -0
- wormsim/components/param/cell/I2R.json +30 -0
- wormsim/components/param/cell/I3.json +30 -0
- wormsim/components/param/cell/I4.json +30 -0
- wormsim/components/param/cell/I5.json +30 -0
- wormsim/components/param/cell/I6.json +30 -0
- wormsim/components/param/cell/IL1DL.json +30 -0
- wormsim/components/param/cell/IL1DR.json +30 -0
- wormsim/components/param/cell/IL1L.json +30 -0
- wormsim/components/param/cell/IL1R.json +30 -0
- wormsim/components/param/cell/IL1VL.json +30 -0
- wormsim/components/param/cell/IL1VR.json +30 -0
- wormsim/components/param/cell/IL2DL.json +30 -0
- wormsim/components/param/cell/IL2DR.json +30 -0
- wormsim/components/param/cell/IL2L.json +30 -0
- wormsim/components/param/cell/IL2R.json +30 -0
- wormsim/components/param/cell/IL2VL.json +30 -0
- wormsim/components/param/cell/IL2VR.json +30 -0
- wormsim/components/param/cell/LUAL.json +30 -0
- wormsim/components/param/cell/LUAR.json +30 -0
- wormsim/components/param/cell/M1.json +30 -0
- wormsim/components/param/cell/M2L.json +30 -0
- wormsim/components/param/cell/M2R.json +30 -0
- wormsim/components/param/cell/M3L.json +30 -0
- wormsim/components/param/cell/M3R.json +30 -0
- wormsim/components/param/cell/M4.json +30 -0
- wormsim/components/param/cell/M5.json +30 -0
- wormsim/components/param/cell/MCDL01.json +25 -0
- wormsim/components/param/cell/MCDL02.json +25 -0
- wormsim/components/param/cell/MCDL03.json +25 -0
- wormsim/components/param/cell/MCDL04.json +25 -0
- wormsim/components/param/cell/MCDL05.json +25 -0
- wormsim/components/param/cell/MCDL06.json +25 -0
- wormsim/components/param/cell/MCDL07.json +25 -0
- wormsim/components/param/cell/MCDL08.json +25 -0
- wormsim/components/param/cell/MCDL09.json +25 -0
- wormsim/components/param/cell/MCDL10.json +25 -0
- wormsim/components/param/cell/MCDL11.json +25 -0
- wormsim/components/param/cell/MCDL12.json +25 -0
- wormsim/components/param/cell/MCDL13.json +25 -0
- wormsim/components/param/cell/MCDL14.json +25 -0
- wormsim/components/param/cell/MCDL15.json +25 -0
- wormsim/components/param/cell/MCDL16.json +25 -0
- wormsim/components/param/cell/MCDL17.json +25 -0
- wormsim/components/param/cell/MCDL18.json +25 -0
- wormsim/components/param/cell/MCDL19.json +25 -0
- wormsim/components/param/cell/MCDL20.json +25 -0
- wormsim/components/param/cell/MCDL21.json +25 -0
- wormsim/components/param/cell/MCDL22.json +25 -0
- wormsim/components/param/cell/MCDL23.json +25 -0
- wormsim/components/param/cell/MCDL24.json +25 -0
- wormsim/components/param/cell/MCDR01.json +25 -0
- wormsim/components/param/cell/MCDR02.json +25 -0
- wormsim/components/param/cell/MCDR03.json +25 -0
- wormsim/components/param/cell/MCDR04.json +25 -0
- wormsim/components/param/cell/MCDR05.json +25 -0
- wormsim/components/param/cell/MCDR06.json +25 -0
- wormsim/components/param/cell/MCDR07.json +25 -0
- wormsim/components/param/cell/MCDR08.json +25 -0
- wormsim/components/param/cell/MCDR09.json +25 -0
- wormsim/components/param/cell/MCDR10.json +25 -0
- wormsim/components/param/cell/MCDR11.json +25 -0
- wormsim/components/param/cell/MCDR12.json +25 -0
- wormsim/components/param/cell/MCDR13.json +25 -0
- wormsim/components/param/cell/MCDR14.json +25 -0
- wormsim/components/param/cell/MCDR15.json +25 -0
- wormsim/components/param/cell/MCDR16.json +25 -0
- wormsim/components/param/cell/MCDR17.json +25 -0
- wormsim/components/param/cell/MCDR18.json +25 -0
- wormsim/components/param/cell/MCDR19.json +25 -0
- wormsim/components/param/cell/MCDR20.json +25 -0
- wormsim/components/param/cell/MCDR21.json +25 -0
- wormsim/components/param/cell/MCDR22.json +25 -0
- wormsim/components/param/cell/MCDR23.json +25 -0
- wormsim/components/param/cell/MCDR24.json +25 -0
- wormsim/components/param/cell/MCL.json +30 -0
- wormsim/components/param/cell/MCR.json +30 -0
- wormsim/components/param/cell/MCVL01.json +25 -0
- wormsim/components/param/cell/MCVL02.json +25 -0
- wormsim/components/param/cell/MCVL03.json +25 -0
- wormsim/components/param/cell/MCVL04.json +25 -0
- wormsim/components/param/cell/MCVL05.json +25 -0
- wormsim/components/param/cell/MCVL06.json +25 -0
- wormsim/components/param/cell/MCVL07.json +25 -0
- wormsim/components/param/cell/MCVL08.json +25 -0
- wormsim/components/param/cell/MCVL09.json +25 -0
- wormsim/components/param/cell/MCVL10.json +25 -0
- wormsim/components/param/cell/MCVL11.json +25 -0
- wormsim/components/param/cell/MCVL12.json +25 -0
- wormsim/components/param/cell/MCVL13.json +25 -0
- wormsim/components/param/cell/MCVL14.json +25 -0
- wormsim/components/param/cell/MCVL15.json +25 -0
- wormsim/components/param/cell/MCVL16.json +25 -0
- wormsim/components/param/cell/MCVL17.json +25 -0
- wormsim/components/param/cell/MCVL18.json +25 -0
- wormsim/components/param/cell/MCVL19.json +25 -0
- wormsim/components/param/cell/MCVL20.json +25 -0
- wormsim/components/param/cell/MCVL21.json +25 -0
- wormsim/components/param/cell/MCVL22.json +25 -0
- wormsim/components/param/cell/MCVL23.json +25 -0
- wormsim/components/param/cell/MCVL24.json +25 -0
- wormsim/components/param/cell/MCVR01.json +25 -0
- wormsim/components/param/cell/MCVR02.json +25 -0
- wormsim/components/param/cell/MCVR03.json +25 -0
- wormsim/components/param/cell/MCVR04.json +25 -0
- wormsim/components/param/cell/MCVR05.json +25 -0
- wormsim/components/param/cell/MCVR06.json +25 -0
- wormsim/components/param/cell/MCVR07.json +25 -0
- wormsim/components/param/cell/MCVR08.json +25 -0
- wormsim/components/param/cell/MCVR09.json +25 -0
- wormsim/components/param/cell/MCVR10.json +25 -0
- wormsim/components/param/cell/MCVR11.json +25 -0
- wormsim/components/param/cell/MCVR12.json +25 -0
- wormsim/components/param/cell/MCVR13.json +25 -0
- wormsim/components/param/cell/MCVR14.json +25 -0
- wormsim/components/param/cell/MCVR15.json +25 -0
- wormsim/components/param/cell/MCVR16.json +25 -0
- wormsim/components/param/cell/MCVR17.json +25 -0
- wormsim/components/param/cell/MCVR18.json +25 -0
- wormsim/components/param/cell/MCVR19.json +25 -0
- wormsim/components/param/cell/MCVR20.json +25 -0
- wormsim/components/param/cell/MCVR21.json +25 -0
- wormsim/components/param/cell/MCVR22.json +25 -0
- wormsim/components/param/cell/MCVR23.json +25 -0
- wormsim/components/param/cell/MCVR24.json +25 -0
- wormsim/components/param/cell/MI.json +30 -0
- wormsim/components/param/cell/MuscleCell.json +25 -0
- wormsim/components/param/cell/NSML.json +30 -0
- wormsim/components/param/cell/NSMR.json +30 -0
- wormsim/components/param/cell/OLLL.json +30 -0
- wormsim/components/param/cell/OLLR.json +30 -0
- wormsim/components/param/cell/OLQDL.json +30 -0
- wormsim/components/param/cell/OLQDR.json +30 -0
- wormsim/components/param/cell/OLQVL.json +30 -0
- wormsim/components/param/cell/OLQVR.json +30 -0
- wormsim/components/param/cell/PDA.json +30 -0
- wormsim/components/param/cell/PDB.json +30 -0
- wormsim/components/param/cell/PDEL.json +30 -0
- wormsim/components/param/cell/PDER.json +30 -0
- wormsim/components/param/cell/PHAL.json +30 -0
- wormsim/components/param/cell/PHAR.json +30 -0
- wormsim/components/param/cell/PHBL.json +30 -0
- wormsim/components/param/cell/PHBR.json +30 -0
- wormsim/components/param/cell/PHCL.json +30 -0
- wormsim/components/param/cell/PHCR.json +30 -0
- wormsim/components/param/cell/PLML.json +30 -0
- wormsim/components/param/cell/PLMR.json +30 -0
- wormsim/components/param/cell/PLNL.json +30 -0
- wormsim/components/param/cell/PLNR.json +30 -0
- wormsim/components/param/cell/PQR.json +30 -0
- wormsim/components/param/cell/PVCL.json +30 -0
- wormsim/components/param/cell/PVCR.json +30 -0
- wormsim/components/param/cell/PVDL.json +30 -0
- wormsim/components/param/cell/PVDR.json +30 -0
- wormsim/components/param/cell/PVM.json +30 -0
- wormsim/components/param/cell/PVNL.json +30 -0
- wormsim/components/param/cell/PVNR.json +30 -0
- wormsim/components/param/cell/PVPL.json +30 -0
- wormsim/components/param/cell/PVPR.json +30 -0
- wormsim/components/param/cell/PVQL.json +30 -0
- wormsim/components/param/cell/PVQR.json +30 -0
- wormsim/components/param/cell/PVR.json +30 -0
- wormsim/components/param/cell/PVT.json +30 -0
- wormsim/components/param/cell/PVWL.json +30 -0
- wormsim/components/param/cell/PVWR.json +30 -0
- wormsim/components/param/cell/RIAL.json +30 -0
- wormsim/components/param/cell/RIAR.json +30 -0
- wormsim/components/param/cell/RIBL.json +30 -0
- wormsim/components/param/cell/RIBR.json +30 -0
- wormsim/components/param/cell/RICL.json +30 -0
- wormsim/components/param/cell/RICR.json +30 -0
- wormsim/components/param/cell/RID.json +30 -0
- wormsim/components/param/cell/RIFL.json +30 -0
- wormsim/components/param/cell/RIFR.json +30 -0
- wormsim/components/param/cell/RIGL.json +30 -0
- wormsim/components/param/cell/RIGR.json +30 -0
- wormsim/components/param/cell/RIH.json +30 -0
- wormsim/components/param/cell/RIML.json +30 -0
- wormsim/components/param/cell/RIMR.json +30 -0
- wormsim/components/param/cell/RIPL.json +30 -0
- wormsim/components/param/cell/RIPR.json +30 -0
- wormsim/components/param/cell/RIR.json +30 -0
- wormsim/components/param/cell/RIS.json +30 -0
- wormsim/components/param/cell/RIVL.json +30 -0
- wormsim/components/param/cell/RIVR.json +30 -0
- wormsim/components/param/cell/RMDDL.json +30 -0
- wormsim/components/param/cell/RMDDR.json +30 -0
- wormsim/components/param/cell/RMDL.json +30 -0
- wormsim/components/param/cell/RMDR.json +30 -0
- wormsim/components/param/cell/RMDVL.json +30 -0
- wormsim/components/param/cell/RMDVR.json +30 -0
- wormsim/components/param/cell/RMED.json +30 -0
- wormsim/components/param/cell/RMEL.json +30 -0
- wormsim/components/param/cell/RMER.json +30 -0
- wormsim/components/param/cell/RMEV.json +30 -0
- wormsim/components/param/cell/RMFL.json +30 -0
- wormsim/components/param/cell/RMFR.json +30 -0
- wormsim/components/param/cell/RMGL.json +30 -0
- wormsim/components/param/cell/RMGR.json +30 -0
- wormsim/components/param/cell/RMHL.json +30 -0
- wormsim/components/param/cell/RMHR.json +30 -0
- wormsim/components/param/cell/SAADL.json +30 -0
- wormsim/components/param/cell/SAADR.json +30 -0
- wormsim/components/param/cell/SAAVL.json +30 -0
- wormsim/components/param/cell/SAAVR.json +30 -0
- wormsim/components/param/cell/SABD.json +30 -0
- wormsim/components/param/cell/SABVL.json +30 -0
- wormsim/components/param/cell/SABVR.json +30 -0
- wormsim/components/param/cell/SDQL.json +30 -0
- wormsim/components/param/cell/SDQR.json +30 -0
- wormsim/components/param/cell/SIADL.json +30 -0
- wormsim/components/param/cell/SIADR.json +30 -0
- wormsim/components/param/cell/SIAVL.json +30 -0
- wormsim/components/param/cell/SIAVR.json +30 -0
- wormsim/components/param/cell/SIBDL.json +30 -0
- wormsim/components/param/cell/SIBDR.json +30 -0
- wormsim/components/param/cell/SIBVL.json +30 -0
- wormsim/components/param/cell/SIBVR.json +30 -0
- wormsim/components/param/cell/SMBDL.json +30 -0
- wormsim/components/param/cell/SMBDR.json +30 -0
- wormsim/components/param/cell/SMBVL.json +30 -0
- wormsim/components/param/cell/SMBVR.json +30 -0
- wormsim/components/param/cell/SMDDL.json +30 -0
- wormsim/components/param/cell/SMDDR.json +30 -0
- wormsim/components/param/cell/SMDVL.json +30 -0
- wormsim/components/param/cell/SMDVR.json +30 -0
- wormsim/components/param/cell/URADL.json +30 -0
- wormsim/components/param/cell/URADR.json +30 -0
- wormsim/components/param/cell/URAVL.json +30 -0
- wormsim/components/param/cell/URAVR.json +30 -0
- wormsim/components/param/cell/URBL.json +30 -0
- wormsim/components/param/cell/URBR.json +30 -0
- wormsim/components/param/cell/URXL.json +30 -0
- wormsim/components/param/cell/URXR.json +30 -0
- wormsim/components/param/cell/URYDL.json +30 -0
- wormsim/components/param/cell/URYDR.json +30 -0
- wormsim/components/param/cell/URYVL.json +30 -0
- wormsim/components/param/cell/URYVR.json +30 -0
- wormsim/components/param/cell/VA01.json +30 -0
- wormsim/components/param/cell/VA02.json +30 -0
- wormsim/components/param/cell/VA03.json +30 -0
- wormsim/components/param/cell/VA04.json +30 -0
- wormsim/components/param/cell/VA05.json +30 -0
- wormsim/components/param/cell/VA06.json +30 -0
- wormsim/components/param/cell/VA07.json +30 -0
- wormsim/components/param/cell/VA08.json +30 -0
- wormsim/components/param/cell/VA09.json +30 -0
- wormsim/components/param/cell/VA10.json +30 -0
- wormsim/components/param/cell/VA11.json +30 -0
- wormsim/components/param/cell/VA12.json +30 -0
- wormsim/components/param/cell/VB01.json +30 -0
- wormsim/components/param/cell/VB02.json +30 -0
- wormsim/components/param/cell/VB03.json +30 -0
- wormsim/components/param/cell/VB04.json +30 -0
- wormsim/components/param/cell/VB05.json +30 -0
- wormsim/components/param/cell/VB06.json +30 -0
- wormsim/components/param/cell/VB07.json +30 -0
- wormsim/components/param/cell/VB08.json +30 -0
- wormsim/components/param/cell/VB09.json +30 -0
- wormsim/components/param/cell/VB10.json +30 -0
- wormsim/components/param/cell/VB11.json +30 -0
- wormsim/components/param/cell/VC01.json +30 -0
- wormsim/components/param/cell/VC02.json +30 -0
- wormsim/components/param/cell/VC03.json +30 -0
- wormsim/components/param/cell/VC04.json +30 -0
- wormsim/components/param/cell/VC05.json +30 -0
- wormsim/components/param/cell/VC06.json +30 -0
- wormsim/components/param/cell/VD01.json +30 -0
- wormsim/components/param/cell/VD02.json +30 -0
- wormsim/components/param/cell/VD03.json +30 -0
- wormsim/components/param/cell/VD04.json +30 -0
- wormsim/components/param/cell/VD05.json +30 -0
- wormsim/components/param/cell/VD06.json +30 -0
- wormsim/components/param/cell/VD07.json +30 -0
- wormsim/components/param/cell/VD08.json +30 -0
- wormsim/components/param/cell/VD09.json +30 -0
- wormsim/components/param/cell/VD10.json +30 -0
- wormsim/components/param/cell/VD11.json +30 -0
- wormsim/components/param/cell/VD12.json +30 -0
- wormsim/components/param/cell/VD13.json +30 -0
- wormsim/components/param/cell/__init__.py +0 -0
- wormsim/components/param/cell/template.json +30 -0
- wormsim/components/param/connection/SI5-302-RIA.xlsx +0 -0
- wormsim/components/param/connection/SI5-302.xlsx +0 -0
- wormsim/components/param/connection/__init__.py +0 -0
- wormsim/components/param/connection/muscle_neuron.xlsx +0 -0
- wormsim/components/param/connection/neuron_muscle.xlsx +0 -0
- wormsim/config.json +682 -0
- wormsim/simulate.py +660 -0
- wormsim-0.0.1.dist-info/METADATA +7 -0
- wormsim-0.0.1.dist-info/RECORD +796 -0
- wormsim-0.0.1.dist-info/WHEEL +5 -0
- wormsim-0.0.1.dist-info/top_level.txt +1 -0
wormsim/__init__.py
ADDED
|
File without changes
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Modules containing class that
|
|
3
|
+
1. the most abstract circuit connection information
|
|
4
|
+
"""
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
class AbsSegment:
|
|
8
|
+
"""class for abstract segment
|
|
9
|
+
|
|
10
|
+
Attributes:
|
|
11
|
+
cell: AbsCell class, the cell that contains the segment
|
|
12
|
+
index: int, segment index in the cell, starts from 0
|
|
13
|
+
name: str, segment name generated by Neuron
|
|
14
|
+
pre_connections, post_connections: list of AbsConnections, the segment acts as postsynaptic segment or presynaptic segment
|
|
15
|
+
"""
|
|
16
|
+
def __init__(self, index, cell, name):
|
|
17
|
+
assert isinstance(cell, AbsCell)
|
|
18
|
+
|
|
19
|
+
self.cell, self.index, self.name = cell, int(index), name
|
|
20
|
+
self.pre_connections, self.post_connections = [], []
|
|
21
|
+
|
|
22
|
+
def add_pre_connection(self, new_connection):
|
|
23
|
+
"""the new connection points to self segment"""
|
|
24
|
+
assert isinstance(new_connection, AbsConnection)
|
|
25
|
+
|
|
26
|
+
if self.index == new_connection.post_segment.index:
|
|
27
|
+
self.pre_connections.append(new_connection)
|
|
28
|
+
else:
|
|
29
|
+
raise ValueError("AbsSegment Index Incompatible!")
|
|
30
|
+
|
|
31
|
+
def add_post_connection(self, new_connection):
|
|
32
|
+
"""the new connection points from self segment"""
|
|
33
|
+
assert isinstance(new_connection, AbsConnection)
|
|
34
|
+
|
|
35
|
+
if self.index == new_connection.pre_segment.index:
|
|
36
|
+
self.post_connections.append(new_connection)
|
|
37
|
+
else:
|
|
38
|
+
raise ValueError("AbsSegment Index Incompatible!")
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class AbsConnection:
|
|
42
|
+
"""class for abstract connection
|
|
43
|
+
either be synapse (positive weight for excitatory and negative for inhibitory) or gap-junction
|
|
44
|
+
|
|
45
|
+
Attributes:
|
|
46
|
+
pre_segment, post_segment: AbsSegment class, pre-synaptic segment or post-synaptic segment
|
|
47
|
+
pre_cell, post_cell: AbsCell class, pre-synaptic cell or post-synaptic cell
|
|
48
|
+
category: str, either 'syn' or 'gj'
|
|
49
|
+
weight: float
|
|
50
|
+
pair_key: int or None, two gj belongs to one pair has the same unique key in the circuit, syn's key is None
|
|
51
|
+
"""
|
|
52
|
+
def __init__(self, pre_segment, post_segment, category, weight, pair_key=None):
|
|
53
|
+
assert category in ('syn', 'gj')
|
|
54
|
+
assert isinstance(pre_segment, (AbsSegment, type(None))) and isinstance(post_segment, (AbsSegment, type(None)))
|
|
55
|
+
|
|
56
|
+
self.pre_segment, self.post_segment = pre_segment, post_segment
|
|
57
|
+
self.pre_cell = pre_segment.cell if pre_segment is not None else None
|
|
58
|
+
self.post_cell = post_segment.cell if post_segment is not None else None
|
|
59
|
+
self.category, self.weight, self.pair_key = category, weight, pair_key
|
|
60
|
+
|
|
61
|
+
def update_info(self, new_weight=None):
|
|
62
|
+
"""change the weight or category of the connection"""
|
|
63
|
+
assert new_weight is not None
|
|
64
|
+
self.weight = new_weight
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
class AbsCell:
|
|
68
|
+
"""class for abstract cell
|
|
69
|
+
|
|
70
|
+
Attributes:
|
|
71
|
+
index: int, cell index
|
|
72
|
+
name: str, cell name
|
|
73
|
+
segments: list of AbsSegment object
|
|
74
|
+
pre_connections, post_connections: list of connection, the Cell acts as post-synaptic cell or pre-synaptic cell respectively
|
|
75
|
+
"""
|
|
76
|
+
def __init__(self, index, name):
|
|
77
|
+
self.index, self.name = int(index), name
|
|
78
|
+
self.segments = []
|
|
79
|
+
self.pre_connections, self.post_connections = [], []
|
|
80
|
+
|
|
81
|
+
def add_segment(self, new_segment):
|
|
82
|
+
"""adding AbsSegment into self.segments"""
|
|
83
|
+
assert isinstance(new_segment, AbsSegment)
|
|
84
|
+
assert new_segment.cell.index == self.index
|
|
85
|
+
|
|
86
|
+
for segment in self.segments:
|
|
87
|
+
if segment.index == new_segment.index:
|
|
88
|
+
raise ValueError("Segment already inserted!")
|
|
89
|
+
self.segments.append(new_segment)
|
|
90
|
+
|
|
91
|
+
def add_pre_connection(self, new_connection):
|
|
92
|
+
"""the new connection points to the cell"""
|
|
93
|
+
assert isinstance(new_connection, AbsConnection)
|
|
94
|
+
|
|
95
|
+
if new_connection.post_cell.index == self.index:
|
|
96
|
+
self.pre_connections.append(new_connection)
|
|
97
|
+
else:
|
|
98
|
+
raise ValueError("Connection post-synaptic cell incompatible!")
|
|
99
|
+
|
|
100
|
+
def add_post_connection(self, new_connection):
|
|
101
|
+
"""the new connection points out of the cell"""
|
|
102
|
+
assert isinstance(new_connection, AbsConnection)
|
|
103
|
+
|
|
104
|
+
if new_connection.pre_cell.index == self.index:
|
|
105
|
+
self.post_connections.append(new_connection)
|
|
106
|
+
else:
|
|
107
|
+
raise ValueError("Connection pre-synaptic cell incompatible!")
|
|
108
|
+
|
|
109
|
+
def segment(self, segment_index=None, segment_name=None):
|
|
110
|
+
"""obtain the segment object according to its index or name"""
|
|
111
|
+
assert (segment_index is not None) or (segment_name is not None)
|
|
112
|
+
for segment in self.segments:
|
|
113
|
+
if ((segment.index == segment_index) or (segment_index is None)) and \
|
|
114
|
+
((segment.name == segment_name) or (segment_name is None)):
|
|
115
|
+
return segment
|
|
116
|
+
raise ValueError("Segment not found!")
|
|
117
|
+
|
|
118
|
+
def update_connections(self, new_weights):
|
|
119
|
+
"""updating pre_connections weight"""
|
|
120
|
+
assert len(self.pre_connections) == len(new_weights)
|
|
121
|
+
for connection, new_weight in zip(self.pre_connections, new_weights):
|
|
122
|
+
connection.update_info(new_weight)
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
class AbstractCircuit:
|
|
126
|
+
"""class for abstract circuit
|
|
127
|
+
|
|
128
|
+
Attributes:
|
|
129
|
+
cells: list of all AbsCell object in the circuit
|
|
130
|
+
connections: list of AbsConnection, all connections include input and output connections
|
|
131
|
+
input_connections: list of AbsConnection, input connections
|
|
132
|
+
output_connections: list of AbsConnection, output connections
|
|
133
|
+
"""
|
|
134
|
+
def __init__(self):
|
|
135
|
+
self.cells, self.connections = [], []
|
|
136
|
+
self.input_connections, self.output_connections = [], []
|
|
137
|
+
|
|
138
|
+
def add_cell(self, new_cell):
|
|
139
|
+
"""cell append interface"""
|
|
140
|
+
assert isinstance(new_cell, AbsCell)
|
|
141
|
+
self.cells.append(new_cell)
|
|
142
|
+
|
|
143
|
+
def add_connection(self, new_connection):
|
|
144
|
+
"""connection append interface"""
|
|
145
|
+
assert isinstance(new_connection, AbsConnection)
|
|
146
|
+
self.connections.append(new_connection)
|
|
147
|
+
if new_connection.pre_segment is None:
|
|
148
|
+
self.input_connections.append(new_connection)
|
|
149
|
+
else:
|
|
150
|
+
new_connection.pre_segment.add_post_connection(new_connection)
|
|
151
|
+
new_connection.pre_cell.add_post_connection(new_connection)
|
|
152
|
+
|
|
153
|
+
if new_connection.post_segment is None:
|
|
154
|
+
self.output_connections.append(new_connection)
|
|
155
|
+
else:
|
|
156
|
+
new_connection.post_segment.add_pre_connection(new_connection)
|
|
157
|
+
new_connection.post_cell.add_pre_connection(new_connection)
|
|
158
|
+
|
|
159
|
+
def cell(self, cell_index=None, cell_name=None):
|
|
160
|
+
"""obtain the cell object according to its index or name"""
|
|
161
|
+
assert (cell_index is not None) or (cell_name is not None)
|
|
162
|
+
for cell in self.cells:
|
|
163
|
+
if ((cell.index == cell_index) or (cell_index is None)) and \
|
|
164
|
+
((cell.name == cell_name) or (cell_name is None)):
|
|
165
|
+
return cell
|
|
166
|
+
raise ValueError("Cell not found!")
|
|
167
|
+
|
|
168
|
+
def update_connections(self, new_weights):
|
|
169
|
+
"""updating connects weight"""
|
|
170
|
+
assert len(self.connections) == len(new_weights)
|
|
171
|
+
for connection, new_weight in zip(self.connections, new_weights):
|
|
172
|
+
connection.update_info(new_weight)
|
wormsim/circuit.pkl
ADDED
|
Binary file
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
TITLE the microscale internal calcium concentration
|
|
2
|
+
|
|
3
|
+
COMMENT
|
|
4
|
+
Internal calcium concentration calculated in response to a calcium current.
|
|
5
|
+
|
|
6
|
+
model and parameters from:
|
|
7
|
+
Nicoletti, M., et al. (2019). "Biophysical modeling of C. elegans neurons: Single ion currents and whole-cell dynamics of AWCon and RMD." PLoS One 14(7): e0218738.
|
|
8
|
+
ENDCOMMENT
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
UNITS {
|
|
12
|
+
(molar) = (1/liter) : moles do not appear in units
|
|
13
|
+
(uM) = (micromolar)
|
|
14
|
+
(um) = (micron)
|
|
15
|
+
(mA) = (milliamp)
|
|
16
|
+
(pS) = (picosiemens)
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
NEURON {
|
|
21
|
+
SUFFIX cainternm
|
|
22
|
+
USEION ca READ ica, cai WRITE cai
|
|
23
|
+
RANGE vcell
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
CONSTANT {
|
|
28
|
+
FARADAY = 96485 (coul) : moles do not appear in units
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
PARAMETER {
|
|
33
|
+
vcell = 31.16 (um3)
|
|
34
|
+
f = 0.001 : free intracellular calcium fraction
|
|
35
|
+
tca = 50 (ms) : calcium removal time constant
|
|
36
|
+
caeq = 0.05 (uM/um2) : the baseline calcium concentration
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
ASSIGNED {
|
|
41
|
+
v (mV)
|
|
42
|
+
ica (pA/um2)
|
|
43
|
+
alpha
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
STATE {
|
|
48
|
+
cai (uM/um2)
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
INITIAL {
|
|
53
|
+
setparames(v)
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
BREAKPOINT {
|
|
58
|
+
SOLVE states METHOD derivimplicit
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
DERIVATIVE states {
|
|
63
|
+
setparames(v)
|
|
64
|
+
cai' = alpha
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
PROCEDURE setparames(v (mV)) {
|
|
69
|
+
if (v <= 60.) { : eca=60 mV
|
|
70
|
+
alpha = (-f * ica * 10^6 / (2 * FARADAY * vcell)) - ((cai - caeq) / tca)
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
alpha = -(cai - caeq) / tca
|
|
74
|
+
}
|
|
75
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
TITLE cca1 current for C. elegans neuron model
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
COMMENT
|
|
5
|
+
channel type: voltage-gated calcium channel
|
|
6
|
+
|
|
7
|
+
model and parameters from:
|
|
8
|
+
Nicoletti, M., et al. (2019). "Biophysical modeling of C. elegans neurons: Single ion currents and whole-cell dynamics of AWCon and RMD." PLoS One 14(7): e0218738.
|
|
9
|
+
ENDCOMMENT
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
UNITS {
|
|
13
|
+
(nS) = (nanosiemens)
|
|
14
|
+
(mV) = (millivolt)
|
|
15
|
+
(pA) = (picoamp)
|
|
16
|
+
(um) = (micron)
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
NEURON {
|
|
21
|
+
SUFFIX cca1
|
|
22
|
+
USEION ca READ eca WRITE ica
|
|
23
|
+
RANGE gbcca1, minf, hinf, tm, th, m, h
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
PARAMETER {
|
|
28
|
+
gbcca1 = 1 (nS/um2)
|
|
29
|
+
vhm = -43.32 (mV)
|
|
30
|
+
ka = 7.6 (mV)
|
|
31
|
+
vhh = -58.0 (mV)
|
|
32
|
+
ki = 7.0 (mV)
|
|
33
|
+
atm = 40.0 (ms)
|
|
34
|
+
btm = -62.5 (mV)
|
|
35
|
+
ctm = -12.6 (mV)
|
|
36
|
+
dtm = 0.7 (ms)
|
|
37
|
+
ath = 280 (ms)
|
|
38
|
+
bth = -60.7 (mV)
|
|
39
|
+
cth = 8.5 (mV)
|
|
40
|
+
dth = 19.8 (ms)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
ASSIGNED {
|
|
45
|
+
v (mV)
|
|
46
|
+
eca (mV)
|
|
47
|
+
ica (pA/um2)
|
|
48
|
+
minf
|
|
49
|
+
hinf
|
|
50
|
+
tm (ms)
|
|
51
|
+
th (ms)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
STATE {
|
|
56
|
+
m
|
|
57
|
+
h
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
BREAKPOINT {
|
|
62
|
+
SOLVE states METHOD cnexp
|
|
63
|
+
:ica = gbcca1 * m * m * h * (v - eca)
|
|
64
|
+
ica = gbcca1 * m * m * h * (v - 60) : eca=60 mV
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
INITIAL {
|
|
69
|
+
setparames(v)
|
|
70
|
+
m = minf
|
|
71
|
+
h = hinf
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
DERIVATIVE states {
|
|
76
|
+
setparames(v)
|
|
77
|
+
m' = (minf - m) / tm
|
|
78
|
+
h' = (hinf - h) / th
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
PROCEDURE setparames(v (mV)) {
|
|
83
|
+
minf = 1 / (1 + exp(-(v - vhm) / ka))
|
|
84
|
+
hinf = 1 / (1 + exp((v - vhh) / ki))
|
|
85
|
+
tm = atm / (1 + exp(-(v - btm) / ctm)) + dtm
|
|
86
|
+
th = ath / (1 + exp((v - bth) / cth)) + dth
|
|
87
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
TITLE egl19 current for C. elegans neuron model
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
COMMENT
|
|
5
|
+
voltage-gated calcium channel
|
|
6
|
+
|
|
7
|
+
model and parameters from:
|
|
8
|
+
Nicoletti, M., et al. (2019). "Biophysical modeling of C. elegans neurons: Single ion currents and whole-cell dynamics of AWCon and RMD." PLoS One 14(7): e0218738.
|
|
9
|
+
ENDCOMMENT
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
UNITS {
|
|
13
|
+
(nS) = (nanosiemens)
|
|
14
|
+
(mV) = (millivolt)
|
|
15
|
+
(pA) = (picoamp)
|
|
16
|
+
(um) = (micron)
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
NEURON {
|
|
21
|
+
SUFFIX egl19
|
|
22
|
+
USEION ca READ eca WRITE ica
|
|
23
|
+
RANGE gbegl19, minf, hinf, tm, th, m, h
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
PARAMETER {
|
|
28
|
+
gbegl19 = 1 (nS/um2)
|
|
29
|
+
vhm = 5.6 (mV)
|
|
30
|
+
ka = 7.5 (mV)
|
|
31
|
+
vhh = 24.9 (mV)
|
|
32
|
+
ki = 12.0 (mV)
|
|
33
|
+
vhhb = -20.5 (mV)
|
|
34
|
+
kib = 8.1 (mV)
|
|
35
|
+
ahinf = 1.43
|
|
36
|
+
bhinf = 0.14
|
|
37
|
+
chinf = 5.96
|
|
38
|
+
dhinf = 0.60
|
|
39
|
+
atm = 2.9 (ms)
|
|
40
|
+
btm = 5.2 (mV)
|
|
41
|
+
ctm = 6.0 (mV)
|
|
42
|
+
dtm = 1.9 (ms)
|
|
43
|
+
etm = 1.4 (mV)
|
|
44
|
+
ftm = 30.0 (mV)
|
|
45
|
+
gtm = 2.3 (ms)
|
|
46
|
+
ath = 0.4
|
|
47
|
+
bth = 44.6 (ms)
|
|
48
|
+
cth = -23.0 (mV)
|
|
49
|
+
dth = 5.0 (mV)
|
|
50
|
+
eth = 36.4 (ms)
|
|
51
|
+
fth = 28.7 (mV)
|
|
52
|
+
gth = 3.7 (mV)
|
|
53
|
+
hth = 43.1 (ms)
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
ASSIGNED {
|
|
58
|
+
v (mV)
|
|
59
|
+
eca (mV)
|
|
60
|
+
ica (pA/um2)
|
|
61
|
+
minf
|
|
62
|
+
hinf
|
|
63
|
+
tm (ms)
|
|
64
|
+
th (ms)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
STATE {
|
|
69
|
+
m
|
|
70
|
+
h
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
BREAKPOINT {
|
|
75
|
+
SOLVE states METHOD cnexp
|
|
76
|
+
:ica = gbegl19 * m * h * (v - eca)
|
|
77
|
+
ica = gbegl19 * m * h * (v - 60) : eca=60 mV
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
INITIAL {
|
|
82
|
+
setparames(v)
|
|
83
|
+
m = minf
|
|
84
|
+
h = hinf
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
DERIVATIVE states {
|
|
89
|
+
setparames(v)
|
|
90
|
+
m' = (minf - m) / tm
|
|
91
|
+
h' = (hinf - h) / th
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
PROCEDURE setparames(v (mV)) {
|
|
96
|
+
minf = 1 / (1 + exp(-(v - vhm) / ka))
|
|
97
|
+
hinf = (ahinf / (1 + exp(-(v - vhh) / ki)) + bhinf) * (chinf / (1 + exp((v - vhhb) / kib)) + dhinf)
|
|
98
|
+
tm = atm * exp(-((v - btm) / ctm) ^ 2) + dtm * exp(-((v - etm) / ftm) ^ 2) + gtm
|
|
99
|
+
th = ath * ((bth / (1 + exp((v - cth) / dth))) + (eth / (1 + exp((v - fth) / gth))) + hth)
|
|
100
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
TITLE egl2 current for C. elegans neuron model
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
COMMENT
|
|
5
|
+
channel type: voltage-gated potassium channel
|
|
6
|
+
|
|
7
|
+
patch clamp data from:
|
|
8
|
+
Weinshenker, D. , et al. "Block of an ether-a-go-go-like K(+) channel by imipramine rescues egl-2 excitation defects in Caenorhabditis elegans. " Journal of Neuroscience the Official Journal of the Society for Neuroscience 19.22(1999):9831.
|
|
9
|
+
Figure 3a upper left
|
|
10
|
+
|
|
11
|
+
ENDCOMMENT
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
UNITS {
|
|
15
|
+
(nS) = (nanosiemens)
|
|
16
|
+
(mV) = (millivolt)
|
|
17
|
+
(pA) = (picoamp)
|
|
18
|
+
(um) = (micron)
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
NEURON {
|
|
23
|
+
SUFFIX egl2
|
|
24
|
+
USEION k READ ek WRITE ik
|
|
25
|
+
RANGE gbegl2, minf, tm, m
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
PARAMETER {
|
|
30
|
+
gbegl2 = 1 (nS/um2)
|
|
31
|
+
vhm = -6.9 (mV)
|
|
32
|
+
ka = 14.9 (mV)
|
|
33
|
+
atm = 1845.8 (ms)
|
|
34
|
+
btm = -122.6 (mV)
|
|
35
|
+
ctm = 13.8 (mV)
|
|
36
|
+
dtm = 1517.74 (ms)
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
ASSIGNED {
|
|
41
|
+
v (mV)
|
|
42
|
+
ek (mV)
|
|
43
|
+
ik (pA/um2)
|
|
44
|
+
minf
|
|
45
|
+
tm (ms)
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
STATE {
|
|
50
|
+
m
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
|
|
54
|
+
BREAKPOINT {
|
|
55
|
+
SOLVE states METHOD cnexp
|
|
56
|
+
:ik = gbegl2 * m * (v - ek)
|
|
57
|
+
ik = gbegl2 * m * (v + 80) : ek = -80
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
INITIAL {
|
|
62
|
+
setparames(v)
|
|
63
|
+
m = minf
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
DERIVATIVE states {
|
|
68
|
+
setparames(v)
|
|
69
|
+
m' = (minf - m) / tm
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
PROCEDURE setparames(v (mV)) {
|
|
74
|
+
minf = 1 / (1 + exp(-(v - vhm) / ka))
|
|
75
|
+
tm = atm / (1 + exp((v - btm) / ctm)) + dtm
|
|
76
|
+
}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
TITLE egl36 current for C. elegans neuron model
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
COMMENT
|
|
5
|
+
Channel type: voltage-gated potassium channel.
|
|
6
|
+
|
|
7
|
+
Model, parameters and patch clamp data from:
|
|
8
|
+
Johnstone, D. B. , et al. "Behavioral Defects in C. elegans egl-36 Mutants Result from Potassium Channels Shifted in Voltage-Dependence of Activation." Neuron 19.1(1997):151-64.
|
|
9
|
+
|
|
10
|
+
patch clamp data in Figure 2A left upper
|
|
11
|
+
https://www.cell.com/action/showPdf?pii=S0896-6273%2800%2980355-4
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
ENDCOMMENT
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
UNITS {
|
|
18
|
+
(nS) = (nanosiemens)
|
|
19
|
+
(mV) = (millivolt)
|
|
20
|
+
(pA) = (picoamp)
|
|
21
|
+
(um) = (micron)
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
NEURON {
|
|
26
|
+
SUFFIX egl36
|
|
27
|
+
USEION k READ ek WRITE ik
|
|
28
|
+
RANGE gbegl36, mfinf, mminf, msinf, tmf, tmm, tms, mf, mm, ms
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
PARAMETER {
|
|
33
|
+
gbegl36 = 1 (nS/um2)
|
|
34
|
+
vhm = 63.0 (mV)
|
|
35
|
+
ka = 28.5 (mV)
|
|
36
|
+
atms = 355.0 (ms)
|
|
37
|
+
atmm = 63.0 (ms)
|
|
38
|
+
atmf = 13.0 (ms)
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
ASSIGNED {
|
|
43
|
+
v (mV)
|
|
44
|
+
ek (mV)
|
|
45
|
+
ik (pA/um2)
|
|
46
|
+
mfinf
|
|
47
|
+
mminf
|
|
48
|
+
msinf
|
|
49
|
+
tmf (ms)
|
|
50
|
+
tmm (ms)
|
|
51
|
+
tms (ms)
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
STATE {
|
|
56
|
+
mf
|
|
57
|
+
mm
|
|
58
|
+
ms
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
BREAKPOINT {
|
|
63
|
+
SOLVE states METHOD cnexp
|
|
64
|
+
:ik = gbegl36 * (0.33 * mf + 0.36 * mm + 0.39 * ms) * (v - ek)
|
|
65
|
+
ik = gbegl36 * (0.33 * mf + 0.36 * mm + 0.39 * ms) * (v + 80) : ek = -80
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
INITIAL {
|
|
70
|
+
setparames(v)
|
|
71
|
+
mf = mfinf
|
|
72
|
+
mm = mminf
|
|
73
|
+
ms = msinf
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
DERIVATIVE states {
|
|
78
|
+
setparames(v)
|
|
79
|
+
mf' = (mfinf - mf) / tmf
|
|
80
|
+
mm' = (mminf - mm) / tmm
|
|
81
|
+
ms' = (msinf - ms) / tms
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
PROCEDURE setparames(v (mV)) {
|
|
86
|
+
mfinf = 1 / (1 + exp(-(v - vhm) / ka))
|
|
87
|
+
mminf = 1 / (1 + exp(-(v - vhm) / ka))
|
|
88
|
+
msinf = 1 / (1 + exp(-(v - vhm) / ka))
|
|
89
|
+
tmf = atmf
|
|
90
|
+
tmm = atmm
|
|
91
|
+
tms = atms
|
|
92
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
COMMENT
|
|
2
|
+
Based on NMODL code for neuron_to_neuron_exc_syn
|
|
3
|
+
|
|
4
|
+
Code and comments have been normalized--that is,
|
|
5
|
+
they are now of the usual form employed in
|
|
6
|
+
NMODL-specified synaptic mechanisms.
|
|
7
|
+
|
|
8
|
+
Oddities that save neither storage nor time,
|
|
9
|
+
or preclude use with adaptive integration,
|
|
10
|
+
or deliberately introduce errors in an attempt
|
|
11
|
+
to save a few CPU cycles, have been removed.
|
|
12
|
+
|
|
13
|
+
Unused variables and parameters have also been removed.
|
|
14
|
+
|
|
15
|
+
vpre is now a POINTER.
|
|
16
|
+
|
|
17
|
+
In the INITIAL block, the completely unnecessary repeat
|
|
18
|
+
execution of procedure rates() has been removed,
|
|
19
|
+
and the state variable s is now set to the correct
|
|
20
|
+
initial value.
|
|
21
|
+
|
|
22
|
+
The value of the current i is now calculated in the
|
|
23
|
+
BREAKPOINT block, instead of being calculated as a
|
|
24
|
+
side-effect of calling rates().
|
|
25
|
+
ENDCOMMENT
|
|
26
|
+
|
|
27
|
+
TITLE excitatory to excitatory synapse
|
|
28
|
+
|
|
29
|
+
NEURON {
|
|
30
|
+
POINT_PROCESS exc_syn_advance
|
|
31
|
+
NONSPECIFIC_CURRENT i
|
|
32
|
+
RANGE weight, conductance, i, vpre
|
|
33
|
+
RANGE delta, k, Vth, erev
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
UNITS {
|
|
37
|
+
(nA) = (nanoamp)
|
|
38
|
+
(uA) = (microamp)
|
|
39
|
+
(mA) = (milliamp)
|
|
40
|
+
(A) = (amp)
|
|
41
|
+
(mV) = (millivolt)
|
|
42
|
+
(mS) = (millisiemens)
|
|
43
|
+
(uS) = (microsiemens)
|
|
44
|
+
(molar) = (1/liter)
|
|
45
|
+
(kHz) = (kilohertz)
|
|
46
|
+
(mM) = (millimolar)
|
|
47
|
+
(um) = (micrometer)
|
|
48
|
+
(umol) = (micromole)
|
|
49
|
+
(S) = (siemens)
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
PARAMETER {
|
|
53
|
+
weight = 1
|
|
54
|
+
conductance = 4.9E-4 (uS)
|
|
55
|
+
delta = 5 (mV)
|
|
56
|
+
k = 0.5 (kHz)
|
|
57
|
+
Vth = 0 (mV)
|
|
58
|
+
erev = 30 (mV) : -10
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
ASSIGNED {
|
|
62
|
+
v (mV)
|
|
63
|
+
vpre (mV)
|
|
64
|
+
inf
|
|
65
|
+
tau (ms)
|
|
66
|
+
i (nA)
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
STATE {
|
|
70
|
+
s
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
INITIAL {
|
|
74
|
+
rates()
|
|
75
|
+
s = inf : NTC original code did not properly initialize s
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
BREAKPOINT {
|
|
79
|
+
SOLVE states METHOD cnexp
|
|
80
|
+
i = weight * conductance * s * (v - erev)
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
DERIVATIVE states {
|
|
84
|
+
rates()
|
|
85
|
+
s' = (inf - s)/tau
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
PROCEDURE rates() {
|
|
89
|
+
inf = 1/( 1 + exp((Vth - vpre)/delta) )
|
|
90
|
+
tau = (1 - inf)/k
|
|
91
|
+
}
|