bluecellulab 2.5.11__tar.gz → 2.6.0__tar.gz

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.

Potentially problematic release.


This version of bluecellulab might be problematic. Click here for more details.

Files changed (438) hide show
  1. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/PKG-INFO +1 -1
  2. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/analysis/inject_sequence.py +2 -6
  3. bluecellulab-2.6.0/bluecellulab/stimulus/factory.py +389 -0
  4. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab.egg-info/PKG-INFO +1 -1
  5. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/list_of_stim.rst +14 -14
  6. bluecellulab-2.6.0/examples/5-stimuli/stimuli.ipynb +527 -0
  7. bluecellulab-2.6.0/examples/6-stimuli-sequence/stimuli-sequence.ipynb +478 -0
  8. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_analysis/test_inject_sequence.py +4 -4
  9. bluecellulab-2.6.0/tests/test_stimulus/test_factory.py +182 -0
  10. bluecellulab-2.5.11/bluecellulab/stimulus/factory.py +0 -254
  11. bluecellulab-2.5.11/examples/5-stimuli/stimuli.ipynb +0 -609
  12. bluecellulab-2.5.11/examples/6-stimuli-sequence/stimuli-sequence.ipynb +0 -458
  13. bluecellulab-2.5.11/tests/test_stimulus/test_factory.py +0 -143
  14. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.compile_mod.sh +0 -0
  15. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.gitattributes +0 -0
  16. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.github/dependabot.yml +0 -0
  17. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.github/workflows/release.yml +0 -0
  18. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.github/workflows/test.yml +0 -0
  19. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.gitignore +0 -0
  20. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.gitlab-ci.yml +0 -0
  21. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.readthedocs.yml +0 -0
  22. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/.zenodo.json +0 -0
  23. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/AUTHORS.txt +0 -0
  24. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/CHANGELOG.rst +0 -0
  25. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/LICENSE +0 -0
  26. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/MANIFEST.in +0 -0
  27. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/Makefile +0 -0
  28. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/README.rst +0 -0
  29. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/__init__.py +0 -0
  30. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/analysis/__init__.py +0 -0
  31. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/__init__.py +0 -0
  32. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/ballstick/__init__.py +0 -0
  33. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/ballstick/emodel.hoc +0 -0
  34. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/ballstick/morphology.asc +0 -0
  35. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/cell_dict.py +0 -0
  36. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/core.py +0 -0
  37. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/injector.py +0 -0
  38. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/plotting.py +0 -0
  39. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/random.py +0 -0
  40. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/recording.py +0 -0
  41. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/section_distance.py +0 -0
  42. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/serialized_sections.py +0 -0
  43. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/sonata_proxy.py +0 -0
  44. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/stimuli_generator.py +0 -0
  45. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/cell/template.py +0 -0
  46. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/__init__.py +0 -0
  47. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/circuit_access/__init__.py +0 -0
  48. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/circuit_access/bluepy_circuit_access.py +0 -0
  49. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/circuit_access/definition.py +0 -0
  50. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/circuit_access/sonata_circuit_access.py +0 -0
  51. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/config/__init__.py +0 -0
  52. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/config/bluepy_simulation_config.py +0 -0
  53. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/config/definition.py +0 -0
  54. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/config/sections.py +0 -0
  55. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/config/sonata_simulation_config.py +0 -0
  56. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/format.py +0 -0
  57. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/iotools.py +0 -0
  58. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/node_id.py +0 -0
  59. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/simulation_access.py +0 -0
  60. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/synapse_properties.py +0 -0
  61. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit/validate.py +0 -0
  62. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/circuit_simulation.py +0 -0
  63. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/connection.py +0 -0
  64. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/dendrogram.py +0 -0
  65. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/exceptions.py +0 -0
  66. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/graph.py +0 -0
  67. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/hoc/Cell.hoc +0 -0
  68. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/hoc/RNGSettings.hoc +0 -0
  69. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/hoc/TDistFunc.hoc +0 -0
  70. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/hoc/TStim.hoc +0 -0
  71. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/hoc/fileUtils.hoc +0 -0
  72. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/importer.py +0 -0
  73. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/neuron_interpreter.py +0 -0
  74. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/plotwindow.py +0 -0
  75. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/psection.py +0 -0
  76. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/psegment.py +0 -0
  77. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/rngsettings.py +0 -0
  78. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/simulation/__init__.py +0 -0
  79. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/simulation/neuron_globals.py +0 -0
  80. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/simulation/parallel.py +0 -0
  81. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/simulation/simulation.py +0 -0
  82. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/stimulus/__init__.py +0 -0
  83. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/stimulus/circuit_stimulus_definitions.py +0 -0
  84. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/synapse/__init__.py +0 -0
  85. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/synapse/synapse_factory.py +0 -0
  86. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/synapse/synapse_types.py +0 -0
  87. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/tools.py +0 -0
  88. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/type_aliases.py +0 -0
  89. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/utils.py +0 -0
  90. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab/verbosity.py +0 -0
  91. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab.egg-info/SOURCES.txt +0 -0
  92. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab.egg-info/dependency_links.txt +0 -0
  93. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab.egg-info/requires.txt +0 -0
  94. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/bluecellulab.egg-info/top_level.txt +0 -0
  95. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/Makefile +0 -0
  96. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/images/voltage-readme.png +0 -0
  97. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/make.bat +0 -0
  98. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/requirements_docs.txt +0 -0
  99. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/_static/.gitkeep +0 -0
  100. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/api.rst +0 -0
  101. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/changelog.rst +0 -0
  102. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/compiling-mechanisms.rst +0 -0
  103. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/conf.py +0 -0
  104. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/index.rst +0 -0
  105. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/docs/source/logo/BlueCelluLabBanner.jpg +0 -0
  106. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/1-singlecell/README.md +0 -0
  107. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/1-singlecell/hoc/cADpyr_L2TPC.hoc +0 -0
  108. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/1-singlecell/morphology/rr110330_C3_idA.asc +0 -0
  109. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/1-singlecell/singlecell.ipynb +0 -0
  110. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/.exception_node +0 -0
  111. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/circuit_sonata.json +0 -0
  112. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/hoc/cADpyr_L2TPC.hoc +0 -0
  113. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/hoc/cNAC_L23BTC.hoc +0 -0
  114. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/asc/C210401C.asc +0 -0
  115. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/asc/rr110330_C3_idA.asc +0 -0
  116. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/swc/C210401C.swc +0 -0
  117. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/swc/rr110330_C3_idA.swc +0 -0
  118. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/hoc/bAC_IN.hoc +0 -0
  119. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/hoc/cNAD_noscltb.hoc +0 -0
  120. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/asc/dend-jy180406_B_idC_axon-jy171019_B_10x_resta_idB_-_Scale_x1.000_y0.950_z1.000_-_Clone_1.asc +0 -0
  121. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/asc/dend-jy180406_C_idB_axon-04752-04764-X11537-Y13753_final_-_Clone_3.asc +0 -0
  122. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/swc/dend-jy180406_B_idC_axon-jy171019_B_10x_resta_idB_-_Scale_x1.000_y0.950_z1.000_-_Clone_1.swc +0 -0
  123. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/swc/dend-jy180406_C_idB_axon-04752-04764-X11537-Y13753_final_-_Clone_3.swc +0 -0
  124. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/edges_AB.h5 +0 -0
  125. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/edges_AB.h5.txt +0 -0
  126. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/local_edges_A.h5 +0 -0
  127. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/local_edges_A.h5.txt +0 -0
  128. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/local_edges_B.h5 +0 -0
  129. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/local_edges_B.h5.txt +0 -0
  130. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/node_sets.json +0 -0
  131. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/nodes_A.h5 +0 -0
  132. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/nodes_A.h5.txt +0 -0
  133. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/nodes_B.h5 +0 -0
  134. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/nodes_B.h5.txt +0 -0
  135. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/circuit_sonata_quick_scx_multi_circuit/simulation_sonata.json +0 -0
  136. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/circuit_sonata.json +0 -0
  137. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_hypamp/out.h5 +0 -0
  138. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_hypamp/populations_offset.dat +0 -0
  139. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_hypamp/soma.h5 +0 -0
  140. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_noinput/out.h5 +0 -0
  141. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_noinput/populations_offset.dat +0 -0
  142. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_noinput/soma.h5 +0 -0
  143. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_ornstein/out.h5 +0 -0
  144. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_ornstein/populations_offset.dat +0 -0
  145. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_ornstein/soma.h5 +0 -0
  146. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_shotnoise/out.h5 +0 -0
  147. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_shotnoise/populations_offset.dat +0 -0
  148. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/output_sonata_shotnoise/soma.h5 +0 -0
  149. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/simulation_config_hypamp.json +0 -0
  150. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/simulation_config_noinput.json +0 -0
  151. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/simulation_config_ornstein.json +0 -0
  152. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sim_quick_scx_sonata_multicircuit/simulation_config_shotnoise.json +0 -0
  153. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/2-sonata-network/sonata-network.ipynb +0 -0
  154. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/3-bpap/bpap.ipynb +0 -0
  155. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/epsp.ipynb +0 -0
  156. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/cacumm.mod +0 -0
  157. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/cagk.mod +0 -0
  158. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/cal2.mod +0 -0
  159. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/can2.mod +0 -0
  160. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/cat.mod +0 -0
  161. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/h.mod +0 -0
  162. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/kadist.mod +0 -0
  163. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/kaprox.mod +0 -0
  164. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/kca.mod +0 -0
  165. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/kdb.mod +0 -0
  166. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/kdrbca1.mod +0 -0
  167. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/kmb.mod +0 -0
  168. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hippocampus_mechanisms/na3n.mod +0 -0
  169. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/hoc/cell_seed2_0.hoc +0 -0
  170. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/4-epsp/morphology/011017HP2.asc +0 -0
  171. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/README.rst +0 -0
  172. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Ca.mod +0 -0
  173. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/CaDynamics_DC0.mod +0 -0
  174. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/CaDynamics_E2.mod +0 -0
  175. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Ca_HVA.mod +0 -0
  176. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Ca_HVA2.mod +0 -0
  177. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Ca_LVAst.mod +0 -0
  178. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/DetAMPANMDA.mod +0 -0
  179. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/DetGABAAB.mod +0 -0
  180. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/GluSynapse.mod +0 -0
  181. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Ih.mod +0 -0
  182. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Im.mod +0 -0
  183. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/K_Pst.mod +0 -0
  184. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/K_Tst.mod +0 -0
  185. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/KdShu2007.mod +0 -0
  186. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/NaTa_t.mod +0 -0
  187. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/NaTg.mod +0 -0
  188. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/NaTs2_t.mod +0 -0
  189. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/Nap_Et2.mod +0 -0
  190. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/ProbAMPANMDA_EMS.mod +0 -0
  191. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/ProbGABAAB_EMS.mod +0 -0
  192. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/README.md +0 -0
  193. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/SK_E2.mod +0 -0
  194. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/SKv3_1.mod +0 -0
  195. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/StochKv.mod +0 -0
  196. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/StochKv3.mod +0 -0
  197. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/TTXDynamicsSwitch.mod +0 -0
  198. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/VecStim.mod +0 -0
  199. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/gap.mod +0 -0
  200. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/mechanisms/netstim_inhpoisson.mod +0 -0
  201. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/examples/readme-plot.ipynb +0 -0
  202. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/pyproject.toml +0 -0
  203. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/setup.cfg +0 -0
  204. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/__init__.py +0 -0
  205. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/data/synapse_replay_file/spikes.dat +0 -0
  206. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/ballstick_cell/analytic_expsyn.txt +0 -0
  207. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/ballstick_cell/ballstick.asc +0 -0
  208. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/ballstick_cell/ballstick.hoc +0 -0
  209. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/ballstick_cell/bs.cfg +0 -0
  210. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/bpo_cell/0_cADpyr_L5TPC_a6e707a_1_sNone.hoc +0 -0
  211. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/bpo_cell/C060114A5.asc +0 -0
  212. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example1/test_cell.asc +0 -0
  213. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example1/test_cell.hoc +0 -0
  214. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example1/test_cell_longname1.hoc +0 -0
  215. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example2/test_cell.asc +0 -0
  216. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example2/test_cell.hoc +0 -0
  217. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example_cstut/cSTUT_7.hoc +0 -0
  218. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example_cstut/test_cell.asc +0 -0
  219. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example_empty/test_cell.asc +0 -0
  220. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example_empty/test_cell.hoc +0 -0
  221. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/cell_example_empty/test_cell_v6a.hoc +0 -0
  222. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/circuit_config.json +0 -0
  223. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/hoc/CA1_pyr_cACpyr_mpg141017_a1_2_idC_2019032814340.hoc +0 -0
  224. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/hoc/CA1_pyr_cACpyr_mpg141217_A_idB_2019030511280.hoc +0 -0
  225. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/hoc/CA1_pyr_cACpyr_mpg150305_A_idB_2019030511201.hoc +0 -0
  226. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/hoc/CA1_pyr_cACpyr_oh140807_A0_idB_2019030510521.hoc +0 -0
  227. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/hoc/CA1_pyr_cACpyr_oh140807_A0_idF_2019030511545.hoc +0 -0
  228. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/hoc/CA1_pyr_cACpyr_oh140807_A0_idJ_2019032814272.hoc +0 -0
  229. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-051208AM2_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000.swc +0 -0
  230. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-051208AM2_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000_-_Clone_10.swc +0 -0
  231. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-mpg141216_A_idA_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000_-_Clone_7.swc +0 -0
  232. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-mpg141216_A_idA_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.900_z1.000_-_Clone_12.swc +0 -0
  233. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-mpg141216_A_idA_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.900_z1.000_-_Clone_4.swc +0 -0
  234. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-mpg141216_A_idA_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.950_z1.000_-_Clone_4.swc +0 -0
  235. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-oh140521_B0_Rat_idC_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000_-_Clone_1.swc +0 -0
  236. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-oh140521_B0_Rat_idC_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000_-_Clone_12.swc +0 -0
  237. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/dend-oh140807_A0_idF_axon-mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000_-_Clone_12.swc +0 -0
  238. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/components/morphologies/mpg141017_a1-2_idC_-_Scale_x1.000_y0.850_z1.000_-_Clone_11.swc +0 -0
  239. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/copy-hoc-morphs.ipynb +0 -0
  240. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/edges/edges.h5 +0 -0
  241. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/hippocampus_projections/nodes.h5 +0 -0
  242. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/hoc-and-morphs.csv +0 -0
  243. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/id_mapping.json +0 -0
  244. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/node_sets.json +0 -0
  245. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_hipp_mooc_most_central_10_SP_PC/nodes/nodes.h5 +0 -0
  246. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/circuit_sonata.json +0 -0
  247. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/components/hoc/cADpyr_L2TPC.hoc +0 -0
  248. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/components/hoc/cNAC_L23BTC.hoc +0 -0
  249. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/components/morphologies/asc/C210401C.asc +0 -0
  250. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/components/morphologies/asc/rr110330_C3_idA.asc +0 -0
  251. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/components/morphologies/swc/C210401C.swc +0 -0
  252. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/components/morphologies/swc/rr110330_C3_idA.swc +0 -0
  253. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/local_edges_A.h5 +0 -0
  254. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/local_edges_A.h5.txt +0 -0
  255. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/node_sets.json +0 -0
  256. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/nodes_A.h5 +0 -0
  257. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx/nodes_A.h5.txt +0 -0
  258. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/.exception_node +0 -0
  259. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/circuit_sonata.json +0 -0
  260. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/hoc/cADpyr_L2TPC.hoc +0 -0
  261. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/hoc/cNAC_L23BTC.hoc +0 -0
  262. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/asc/C210401C.asc +0 -0
  263. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/asc/rr110330_C3_idA.asc +0 -0
  264. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/swc/C210401C.swc +0 -0
  265. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitA/morphologies/swc/rr110330_C3_idA.swc +0 -0
  266. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/hoc/bAC_IN.hoc +0 -0
  267. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/hoc/cNAD_noscltb.hoc +0 -0
  268. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/asc/dend-jy180406_B_idC_axon-jy171019_B_10x_resta_idB_-_Scale_x1.000_y0.950_z1.000_-_Clone_1.asc +0 -0
  269. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/asc/dend-jy180406_C_idB_axon-04752-04764-X11537-Y13753_final_-_Clone_3.asc +0 -0
  270. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/swc/dend-jy180406_B_idC_axon-jy171019_B_10x_resta_idB_-_Scale_x1.000_y0.950_z1.000_-_Clone_1.swc +0 -0
  271. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/components/CircuitB/morphologies/swc/dend-jy180406_C_idB_axon-04752-04764-X11537-Y13753_final_-_Clone_3.swc +0 -0
  272. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/edges_AB.h5 +0 -0
  273. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/edges_AB.h5.txt +0 -0
  274. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/local_edges_A.h5 +0 -0
  275. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/local_edges_A.h5.txt +0 -0
  276. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/local_edges_B.h5 +0 -0
  277. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/local_edges_B.h5.txt +0 -0
  278. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/node_sets.json +0 -0
  279. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/nodes_A.h5 +0 -0
  280. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/nodes_A.h5.txt +0 -0
  281. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/nodes_B.h5 +0 -0
  282. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/nodes_B.h5.txt +0 -0
  283. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/circuit_sonata_quick_scx_multi_circuit/simulation_sonata.json +0 -0
  284. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/hippocampus_opt_cell_template/README.md +0 -0
  285. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/hippocampus_opt_cell_template/electrophysiology/cell.hoc +0 -0
  286. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/hippocampus_opt_cell_template/morphology/cell.asc +0 -0
  287. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/legacy_circuitconfig/CircuitConfig +0 -0
  288. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/BlueConfig +0 -0
  289. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/BlueConfig.SUCCESS +0 -0
  290. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/output/out.dat +0 -0
  291. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/output/out.h5 +0 -0
  292. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/output/populations_offset.dat +0 -0
  293. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/output/soma_SONATA.h5 +0 -0
  294. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_bluepy/user.target +0 -0
  295. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/circuit_sonata.json +0 -0
  296. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/output_sonata_hypamp/out.h5 +0 -0
  297. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/output_sonata_hypamp/populations_offset.dat +0 -0
  298. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/output_sonata_hypamp/soma.h5 +0 -0
  299. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/output_sonata_noinput/out.h5 +0 -0
  300. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/output_sonata_noinput/populations_offset.dat +0 -0
  301. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/output_sonata_noinput/soma.h5 +0 -0
  302. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/simulation_config.json.SUCCESS +0 -0
  303. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/simulation_config_hypamp.json +0 -0
  304. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/simulation_config_hypamp.json.SUCCESS +0 -0
  305. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/simulation_config_noinput.json +0 -0
  306. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata/simulation_config_noinput.json.SUCCESS +0 -0
  307. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/circuit_sonata.json +0 -0
  308. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_hypamp/out.h5 +0 -0
  309. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_hypamp/populations_offset.dat +0 -0
  310. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_hypamp/soma.h5 +0 -0
  311. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_noinput/out.h5 +0 -0
  312. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_noinput/populations_offset.dat +0 -0
  313. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_noinput/soma.h5 +0 -0
  314. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_ornstein/out.h5 +0 -0
  315. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_ornstein/populations_offset.dat +0 -0
  316. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_ornstein/soma.h5 +0 -0
  317. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_shotnoise/out.h5 +0 -0
  318. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_shotnoise/populations_offset.dat +0 -0
  319. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/output_sonata_shotnoise/soma.h5 +0 -0
  320. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/simulation_config_hypamp.json +0 -0
  321. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/simulation_config_noinput.json +0 -0
  322. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/simulation_config_ornstein.json +0 -0
  323. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sim_quick_scx_sonata_multicircuit/simulation_config_shotnoise.json +0 -0
  324. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/condition_parameters/circuit_sonata.json +0 -0
  325. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/condition_parameters/node_sets.json +0 -0
  326. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/condition_parameters/sim_conf/populations_offset.dat +0 -0
  327. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/condition_parameters/simulation_config.json +0 -0
  328. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/condition_parameters/simulation_config_many_inputs.json +0 -0
  329. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/circuit_config.json +0 -0
  330. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/echo +0 -0
  331. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/node_sets.json +0 -0
  332. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/output_sonata/out.h5 +0 -0
  333. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/output_sonata/populations_offset.dat +0 -0
  334. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/output_sonata/soma.h5 +0 -0
  335. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/simulation_config.json +0 -0
  336. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/projections/simulation_config.json.SUCCESS +0 -0
  337. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/synapse_replay/circuit_config.json +0 -0
  338. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/synapse_replay/node_sets.json +0 -0
  339. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/synapse_replay/simulation_config.json +0 -0
  340. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/sonata_unit_test_sims/synapse_replay/synapse_replay.dat +0 -0
  341. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/tapertest_cells/notaper_cell.hoc +0 -0
  342. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/tapertest_cells/taper_cell.hoc +0 -0
  343. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/examples/tapertest_cells/test_cell.asc +0 -0
  344. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/helpers/__init__.py +0 -0
  345. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/helpers/os_utils.py +0 -0
  346. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Ca.mod +0 -0
  347. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/CaDynamics_DC0.mod +0 -0
  348. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/CaDynamics_E2.mod +0 -0
  349. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Ca_HVA.mod +0 -0
  350. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Ca_HVA2.mod +0 -0
  351. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Ca_LVAst.mod +0 -0
  352. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/DetAMPANMDA.mod +0 -0
  353. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/DetGABAAB.mod +0 -0
  354. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/GluSynapse.mod +0 -0
  355. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Ih.mod +0 -0
  356. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Im.mod +0 -0
  357. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/K_Pst.mod +0 -0
  358. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/K_Tst.mod +0 -0
  359. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/KdShu2007.mod +0 -0
  360. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/NaTa_t.mod +0 -0
  361. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/NaTg.mod +0 -0
  362. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/NaTs2_t.mod +0 -0
  363. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/Nap_Et2.mod +0 -0
  364. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/ProbAMPANMDA_EMS.mod +0 -0
  365. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/ProbGABAAB_EMS.mod +0 -0
  366. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/README.md +0 -0
  367. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/SK_E2.mod +0 -0
  368. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/SKv3_1.mod +0 -0
  369. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/StochKv.mod +0 -0
  370. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/StochKv3.mod +0 -0
  371. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/TTXDynamicsSwitch.mod +0 -0
  372. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/VecStim.mod +0 -0
  373. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/cacumm.mod +0 -0
  374. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/cacummb.mod +0 -0
  375. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/cagk.mod +0 -0
  376. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/cal2.mod +0 -0
  377. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/can2.mod +0 -0
  378. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/cat.mod +0 -0
  379. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/gap.mod +0 -0
  380. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/h.mod +0 -0
  381. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kadist.mod +0 -0
  382. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kaprox.mod +0 -0
  383. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kca.mod +0 -0
  384. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kd.mod +0 -0
  385. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kd2.mod +0 -0
  386. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kdb.mod +0 -0
  387. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kdrbca1.mod +0 -0
  388. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kdrca1.mod +0 -0
  389. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/km.mod +0 -0
  390. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/kmb.mod +0 -0
  391. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/na3n.mod +0 -0
  392. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/naxn.mod +0 -0
  393. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/mechanisms/netstim_inhpoisson.mod +0 -0
  394. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_ballstick.py +0 -0
  395. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_bglib.py +0 -0
  396. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/__init__.py +0 -0
  397. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_cell_dict.py +0 -0
  398. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_core.py +0 -0
  399. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_injector.py +0 -0
  400. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_random.py +0 -0
  401. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_recording.py +0 -0
  402. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_serialized_sections.py +0 -0
  403. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_sonata_proxy.py +0 -0
  404. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_stimuli_generator.py +0 -0
  405. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_cell/test_template.py +0 -0
  406. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/__init__.py +0 -0
  407. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_circuit_access.py +0 -0
  408. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_config_sections.py +0 -0
  409. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_format.py +0 -0
  410. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_node_id.py +0 -0
  411. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_simulation_access.py +0 -0
  412. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_simulation_config.py +0 -0
  413. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_synapse_properties.py +0 -0
  414. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_circuit/test_validate.py +0 -0
  415. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_exceptions.py +0 -0
  416. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_graph.py +0 -0
  417. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_importer.py +0 -0
  418. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_load.py +0 -0
  419. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_neuron_interpreter.py +0 -0
  420. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_psection.py +0 -0
  421. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_rngsettings.py +0 -0
  422. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_simulation/__init__.py +0 -0
  423. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_simulation/test_neuron_globals.py +0 -0
  424. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_simulation/test_parallel.py +0 -0
  425. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_simulation/test_simulation.py +0 -0
  426. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_ssim.py +0 -0
  427. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_ssim_sonata.py +0 -0
  428. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_stimulus/__init__.py +0 -0
  429. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_stimulus/test_circuit_stimulus_definitions.py +0 -0
  430. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_synapse/__init__.py +0 -0
  431. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_synapse/test-synapse-series.json +0 -0
  432. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_synapse/test_synapse.py +0 -0
  433. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_synapse/test_synapse_factory.py +0 -0
  434. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_tools.py +0 -0
  435. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_ttx.py +0 -0
  436. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_utils.py +0 -0
  437. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tests/test_verbosity.py +0 -0
  438. {bluecellulab-2.5.11 → bluecellulab-2.6.0}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bluecellulab
3
- Version: 2.5.11
3
+ Version: 2.6.0
4
4
  Summary: Biologically detailed neural network simulations and analysis.
5
5
  Author: Blue Brain Project, EPFL
6
6
  License: Apache2.0
@@ -35,7 +35,6 @@ def run_stimulus(
35
35
  stimulus: Stimulus,
36
36
  section: str,
37
37
  segment: float,
38
- duration: float,
39
38
  ) -> Recording:
40
39
  """Creates a cell and stimulates it with a given stimulus.
41
40
 
@@ -44,7 +43,6 @@ def run_stimulus(
44
43
  stimulus: The input stimulus to inject into the cell.
45
44
  section: Name of the section of cell where the stimulus is to be injected.
46
45
  segment: The segment of the section where the stimulus is to be injected.
47
- duration: The duration for which the simulation is to be run.
48
46
 
49
47
  Returns:
50
48
  The voltage-time recording at the specified location.
@@ -61,7 +59,7 @@ def run_stimulus(
61
59
  current_vector = neuron.h.Vector()
62
60
  current_vector.record(iclamp._ref_i)
63
61
  simulation = Simulation(cell)
64
- simulation.run(duration)
62
+ simulation.run(stimulus.stimulus_time)
65
63
  current = np.array(current_vector.to_python())
66
64
  voltage = cell.get_voltage_recording(neuron_section, segment)
67
65
  time = cell.get_time()
@@ -74,7 +72,6 @@ def apply_multiple_step_stimuli(
74
72
  cell: Cell,
75
73
  stimulus_name: StimulusName,
76
74
  amplitudes: Sequence[float],
77
- duration: float,
78
75
  section_name: str | None = None,
79
76
  segment: float = 0.5,
80
77
  n_processes: int | None = None,
@@ -85,7 +82,6 @@ def apply_multiple_step_stimuli(
85
82
  cell: The cell to which the stimuli are applied.
86
83
  stimulus_name: The name of the stimulus to apply.
87
84
  amplitudes: The amplitudes of the stimuli to apply.
88
- duration: The duration for which each stimulus is applied.
89
85
  section_name: Section name of the cell where the stimuli are applied.
90
86
  If None, the stimuli are applied at the soma[0] of the cell.
91
87
  segment: The segment of the section where the stimuli are applied.
@@ -116,7 +112,7 @@ def apply_multiple_step_stimuli(
116
112
  else:
117
113
  raise ValueError("Unknown stimulus name.")
118
114
 
119
- task_args.append((cell.template_params, stimulus, section_name, segment, duration))
115
+ task_args.append((cell.template_params, stimulus, section_name, segment))
120
116
 
121
117
  with IsolatedProcess(processes=n_processes) as pool:
122
118
  # Map expects a function and a list of argument tuples
@@ -0,0 +1,389 @@
1
+ from __future__ import annotations
2
+ from abc import ABC, abstractmethod
3
+ import matplotlib.pyplot as plt
4
+ import numpy as np
5
+
6
+
7
+ class Stimulus(ABC):
8
+ def __init__(self, dt: float) -> None:
9
+ self.dt = dt
10
+
11
+ @property
12
+ @abstractmethod
13
+ def time(self) -> np.ndarray:
14
+ """Time values of the stimulus."""
15
+ ...
16
+
17
+ @property
18
+ @abstractmethod
19
+ def current(self) -> np.ndarray:
20
+ """Current values of the stimulus."""
21
+ ...
22
+
23
+ def __len__(self) -> int:
24
+ return len(self.time)
25
+
26
+ @property
27
+ def stimulus_time(self) -> float:
28
+ return len(self) * self.dt
29
+
30
+ def __repr__(self) -> str:
31
+ return f"{self.__class__.__name__}(dt={self.dt})"
32
+
33
+ def plot(self, ax=None, **kwargs):
34
+ if ax is None:
35
+ ax = plt.gca()
36
+ ax.plot(self.time, self.current, **kwargs)
37
+ ax.set_xlabel("Time (ms)")
38
+ ax.set_ylabel("Current (nA)")
39
+ ax.set_title(self.__class__.__name__)
40
+ return ax
41
+
42
+ def __add__(self, other: Stimulus) -> CombinedStimulus:
43
+ """Override + operator to concatenate Stimulus objects."""
44
+ if self.dt != other.dt:
45
+ raise ValueError(
46
+ "Stimulus objects must have the same dt to be concatenated"
47
+ )
48
+ if len(self.time) == 0:
49
+ return CombinedStimulus(other.dt, other.time, other.current)
50
+ elif len(other.time) == 0:
51
+ return CombinedStimulus(self.dt, self.time, self.current)
52
+ else:
53
+ # shift other time
54
+ other_time = other.time + self.time[-1] + self.dt
55
+ combined_time = np.concatenate([self.time, other_time])
56
+ # Concatenate the current arrays
57
+ combined_current = np.concatenate([self.current, other.current])
58
+ return CombinedStimulus(self.dt, combined_time, combined_current)
59
+
60
+ def __eq__(self, other: object) -> bool:
61
+ if not isinstance(other, Stimulus):
62
+ return NotImplemented
63
+ else:
64
+ return (
65
+ np.allclose(self.time, other.time)
66
+ and np.allclose(self.current, other.current)
67
+ and self.dt == other.dt
68
+ )
69
+
70
+
71
+ class CombinedStimulus(Stimulus):
72
+ """Represents the Stimulus created by combining multiple stimuli."""
73
+
74
+ def __init__(self, dt: float, time: np.ndarray, current: np.ndarray) -> None:
75
+ super().__init__(dt)
76
+ self._time = time
77
+ self._current = current
78
+
79
+ @property
80
+ def time(self) -> np.ndarray:
81
+ return self._time
82
+
83
+ @property
84
+ def current(self) -> np.ndarray:
85
+ return self._current
86
+
87
+
88
+ class Empty(Stimulus):
89
+ """Represents empty stimulus (all zeros) that has no impact on the cell.
90
+
91
+ This is required by some Stimuli that expect the cell to rest.
92
+ """
93
+
94
+ def __init__(self, dt: float, duration: float) -> None:
95
+ super().__init__(dt)
96
+ self.duration = duration
97
+
98
+ @property
99
+ def time(self) -> np.ndarray:
100
+ return np.arange(0.0, self.duration, self.dt)
101
+
102
+ @property
103
+ def current(self) -> np.ndarray:
104
+ return np.zeros_like(self.time)
105
+
106
+
107
+ class Flat(Stimulus):
108
+ def __init__(self, dt: float, duration: float, amplitude: float) -> None:
109
+ super().__init__(dt)
110
+ self.duration = duration
111
+ self.amplitude = amplitude
112
+
113
+ @property
114
+ def time(self) -> np.ndarray:
115
+ return np.arange(0.0, self.duration, self.dt)
116
+
117
+ @property
118
+ def current(self) -> np.ndarray:
119
+ return np.full_like(self.time, self.amplitude)
120
+
121
+
122
+ class Slope(Stimulus):
123
+ def __init__(
124
+ self, dt: float, duration: float, amplitude_start: float, amplitude_end: float
125
+ ) -> None:
126
+ super().__init__(dt)
127
+ self.duration = duration
128
+ self.amplitude_start = amplitude_start
129
+ self.amplitude_end = amplitude_end
130
+
131
+ @property
132
+ def time(self) -> np.ndarray:
133
+ return np.arange(0.0, self.duration, self.dt)
134
+
135
+ @property
136
+ def current(self) -> np.ndarray:
137
+ return np.linspace(self.amplitude_start, self.amplitude_end, len(self.time))
138
+
139
+
140
+ class Step(Stimulus):
141
+
142
+ def __init__(self):
143
+ raise NotImplementedError(
144
+ "This class cannot be instantiated directly. "
145
+ "Please use the class methods 'amplitude_based' "
146
+ "or 'threshold_based' to create objects."
147
+ )
148
+
149
+ @classmethod
150
+ def amplitude_based(
151
+ cls,
152
+ dt: float,
153
+ pre_delay: float,
154
+ duration: float,
155
+ post_delay: float,
156
+ amplitude: float,
157
+ ) -> CombinedStimulus:
158
+ """Create a Step stimulus from given time events and amplitude.
159
+
160
+ Args:
161
+ dt: The time step of the stimulus.
162
+ pre_delay: The delay before the start of the step.
163
+ duration: The duration of the step.
164
+ post_delay: The time to wait after the end of the step.
165
+ amplitude: The amplitude of the step.
166
+ """
167
+ return (
168
+ Empty(dt, duration=pre_delay)
169
+ + Flat(dt, duration=duration, amplitude=amplitude)
170
+ + Empty(dt, duration=post_delay)
171
+ )
172
+
173
+ @classmethod
174
+ def threshold_based(
175
+ cls,
176
+ dt: float,
177
+ pre_delay: float,
178
+ duration: float,
179
+ post_delay: float,
180
+ threshold_current: float,
181
+ threshold_percentage: float,
182
+ ) -> CombinedStimulus:
183
+ """Creates a Step stimulus with respect to the threshold current.
184
+
185
+ Args:
186
+
187
+ dt: The time step of the stimulus.
188
+ pre_delay: The delay before the start of the step.
189
+ duration: The duration of the step.
190
+ post_delay: The time to wait after the end of the step.
191
+ threshold_current: The threshold current of the Cell.
192
+ threshold_percentage: Percentage of desired threshold_current amplification.
193
+ """
194
+ amplitude = threshold_current * threshold_percentage / 100
195
+ res = cls.amplitude_based(
196
+ dt,
197
+ pre_delay=pre_delay,
198
+ duration=duration,
199
+ post_delay=post_delay,
200
+ amplitude=amplitude,
201
+ )
202
+ return res
203
+
204
+
205
+ class Ramp(Stimulus):
206
+
207
+ def __init__(self):
208
+ raise NotImplementedError(
209
+ "This class cannot be instantiated directly. "
210
+ "Please use the class methods 'amplitude_based' "
211
+ "or 'threshold_based' to create objects."
212
+ )
213
+
214
+ @classmethod
215
+ def amplitude_based(
216
+ cls,
217
+ dt: float,
218
+ pre_delay: float,
219
+ duration: float,
220
+ post_delay: float,
221
+ amplitude: float,
222
+ ) -> CombinedStimulus:
223
+ """Create a Ramp stimulus from given time events and amplitudes.
224
+
225
+ Args:
226
+ dt: The time step of the stimulus.
227
+ pre_delay: The delay before the start of the ramp.
228
+ duration: The duration of the ramp.
229
+ post_delay: The time to wait after the end of the ramp.
230
+ amplitude: The final amplitude of the ramp.
231
+ """
232
+ return (
233
+ Empty(dt, duration=pre_delay)
234
+ + Slope(
235
+ dt,
236
+ duration=duration,
237
+ amplitude_start=0.0,
238
+ amplitude_end=amplitude,
239
+ )
240
+ + Empty(dt, duration=post_delay)
241
+ )
242
+
243
+ @classmethod
244
+ def threshold_based(
245
+ cls,
246
+ dt: float,
247
+ pre_delay: float,
248
+ duration: float,
249
+ post_delay: float,
250
+ threshold_current: float,
251
+ threshold_percentage: float,
252
+ ) -> CombinedStimulus:
253
+ """Creates a Ramp stimulus with respect to the threshold current.
254
+
255
+ Args:
256
+
257
+ dt: The time step of the stimulus.
258
+ pre_delay: The delay before the start of the ramp.
259
+ duration: The duration of the ramp.
260
+ post_delay: The time to wait after the end of the ramp.
261
+ threshold_current: The threshold current of the Cell.
262
+ threshold_percentage: Percentage of desired threshold_current amplification.
263
+ """
264
+ amplitude = threshold_current * threshold_percentage / 100
265
+ res = cls.amplitude_based(
266
+ dt,
267
+ pre_delay=pre_delay,
268
+ duration=duration,
269
+ post_delay=post_delay,
270
+ amplitude=amplitude,
271
+ )
272
+ return res
273
+
274
+
275
+ class StimulusFactory:
276
+ def __init__(self, dt: float):
277
+ self.dt = dt
278
+
279
+ def step(
280
+ self, pre_delay: float, duration: float, post_delay: float, amplitude: float
281
+ ) -> Stimulus:
282
+ return Step.amplitude_based(
283
+ self.dt,
284
+ pre_delay=pre_delay,
285
+ duration=duration,
286
+ post_delay=post_delay,
287
+ amplitude=amplitude,
288
+ )
289
+
290
+ def ramp(
291
+ self, pre_delay: float, duration: float, post_delay: float, amplitude: float
292
+ ) -> Stimulus:
293
+ return Ramp.amplitude_based(
294
+ self.dt,
295
+ pre_delay=pre_delay,
296
+ duration=duration,
297
+ post_delay=post_delay,
298
+ amplitude=amplitude,
299
+ )
300
+
301
+ def ap_waveform(
302
+ self, threshold_current: float, threshold_percentage: float = 220.0
303
+ ) -> Stimulus:
304
+ """Returns the APWaveform Stimulus object, a type of Step stimulus.
305
+
306
+ Args:
307
+ threshold_current: The threshold current of the Cell.
308
+ threshold_percentage: Percentage of desired threshold_current amplification.
309
+ """
310
+ pre_delay = 250.0
311
+ duration = 50.0
312
+ post_delay = 250.0
313
+ return Step.threshold_based(
314
+ self.dt,
315
+ pre_delay=pre_delay,
316
+ duration=duration,
317
+ post_delay=post_delay,
318
+ threshold_current=threshold_current,
319
+ threshold_percentage=threshold_percentage,
320
+ )
321
+
322
+ def idrest(
323
+ self,
324
+ threshold_current: float,
325
+ threshold_percentage: float = 200.0,
326
+ ) -> Stimulus:
327
+ """Returns the IDRest Stimulus object, a type of Step stimulus.
328
+
329
+ Args:
330
+ threshold_current: The threshold current of the Cell.
331
+ threshold_percentage: Percentage of desired threshold_current amplification.
332
+ """
333
+ pre_delay = 250.0
334
+ duration = 1350.0
335
+ post_delay = 250.0
336
+ return Step.threshold_based(
337
+ self.dt,
338
+ pre_delay=pre_delay,
339
+ duration=duration,
340
+ post_delay=post_delay,
341
+ threshold_current=threshold_current,
342
+ threshold_percentage=threshold_percentage,
343
+ )
344
+
345
+ def iv(
346
+ self,
347
+ threshold_current: float,
348
+ threshold_percentage: float = -40.0,
349
+ ) -> Stimulus:
350
+ """Returns the IV Stimulus object, a type of Step stimulus.
351
+
352
+ Args:
353
+ threshold_current: The threshold current of the Cell.
354
+ threshold_percentage: Percentage of desired threshold_current amplification.
355
+ """
356
+ pre_delay = 250.0
357
+ duration = 3000.0
358
+ post_delay = 250.0
359
+ return Step.threshold_based(
360
+ self.dt,
361
+ pre_delay=pre_delay,
362
+ duration=duration,
363
+ post_delay=post_delay,
364
+ threshold_current=threshold_current,
365
+ threshold_percentage=threshold_percentage,
366
+ )
367
+
368
+ def fire_pattern(
369
+ self,
370
+ threshold_current: float,
371
+ threshold_percentage: float = 200.0,
372
+ ) -> Stimulus:
373
+ """Returns the FirePattern Stimulus object, a type of Step stimulus.
374
+
375
+ Args:
376
+ threshold_current: The threshold current of the Cell.
377
+ threshold_percentage: Percentage of desired threshold_current amplification.
378
+ """
379
+ pre_delay = 250.0
380
+ duration = 3600.0
381
+ post_delay = 250.0
382
+ return Step.threshold_based(
383
+ self.dt,
384
+ pre_delay=pre_delay,
385
+ duration=duration,
386
+ post_delay=post_delay,
387
+ threshold_current=threshold_current,
388
+ threshold_percentage=threshold_percentage,
389
+ )
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bluecellulab
3
- Version: 2.5.11
3
+ Version: 2.6.0
4
4
  Summary: Biologically detailed neural network simulations and analysis.
5
5
  Author: Blue Brain Project, EPFL
6
6
  License: Apache2.0
@@ -37,7 +37,7 @@ Step Stimulus
37
37
  :context: close-figs
38
38
  :include-source: True
39
39
 
40
- step = stim_factory.step(start=20, end=180, amplitude=70)
40
+ step = stim_factory.step(pre_delay=20, duration=80, post_delay=20, amplitude=70)
41
41
  step.plot()
42
42
 
43
43
 
@@ -47,19 +47,19 @@ Multiple step stimuli with different amplitudes.
47
47
  :context: close-figs
48
48
  :include-source: True
49
49
 
50
- step1 = stim_factory.step(start=50, end=150, amplitude=60)
51
- step2 = stim_factory.step(start=50, end=150, amplitude=80)
52
- step3 = stim_factory.step(start=50, end=150, amplitude=100)
53
- step4 = stim_factory.step(start=50, end=150, amplitude=120)
50
+ step1 = stim_factory.step(pre_delay=50, duration=100, post_delay=50, amplitude=60)
51
+ step2 = stim_factory.step(pre_delay=50, duration=100, post_delay=50, amplitude=80)
52
+ step3 = stim_factory.step(pre_delay=50, duration=100, post_delay=50, amplitude=100)
53
+ step4 = stim_factory.step(pre_delay=50, duration=100, post_delay=50, amplitude=120)
54
54
 
55
55
  # Create a figure and an Axes object
56
56
  fig, ax = plt.subplots()
57
57
 
58
58
  # Plot the step functions on the same axes
59
- step1.plot_during_simulation(200, ax=ax, color='red')
60
- step2.plot_during_simulation(200, ax=ax, color='green')
61
- step3.plot_during_simulation(200, ax=ax, color='blue')
62
- step4.plot_during_simulation(200, ax=ax, color='orange')
59
+ step1.plot(ax=ax, color='red')
60
+ step2.plot(ax=ax, color='green')
61
+ step3.plot(ax=ax, color='blue')
62
+ step4.plot(ax=ax, color='orange')
63
63
 
64
64
  plt.show()
65
65
 
@@ -73,7 +73,7 @@ Ramp Stimulus
73
73
  :context: close-figs
74
74
  :include-source: True
75
75
 
76
- ramp = stim_factory.ramp(start=20, end=180, amplitude_start=0.25, amplitude_end=0.5)
76
+ ramp = stim_factory.ramp(pre_delay=20, duration=160, post_delay=70, amplitude=0.5)
77
77
 
78
78
  ramp.plot()
79
79
 
@@ -89,7 +89,7 @@ APWaveform
89
89
  :include-source: True
90
90
 
91
91
  ap_waveform = stim_factory.ap_waveform(threshold_current=0.5)
92
- ap_waveform.plot_during_simulation(600)
92
+ ap_waveform.plot()
93
93
 
94
94
 
95
95
  IDRest
@@ -102,7 +102,7 @@ IDRest
102
102
  :include-source: True
103
103
 
104
104
  id_rest = stim_factory.idrest(threshold_current=0.5)
105
- id_rest.plot_during_simulation(2000)
105
+ id_rest.plot()
106
106
 
107
107
  IV
108
108
  ~~
@@ -114,7 +114,7 @@ IV
114
114
  :include-source: True
115
115
 
116
116
  iv = stim_factory.iv(threshold_current=0.5)
117
- iv.plot_during_simulation(4500)
117
+ iv.plot()
118
118
 
119
119
  FirePattern
120
120
  ~~~~~~~~~~~~~
@@ -126,7 +126,7 @@ FirePattern
126
126
  :include-source: True
127
127
 
128
128
  fire_pattern = stim_factory.fire_pattern(threshold_current=0.5)
129
- fire_pattern.plot_during_simulation(4500)
129
+ fire_pattern.plot()
130
130
 
131
131
 
132
132
  .. plot::