bluecellulab 2.6.52__tar.gz → 2.6.53__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 (109) hide show
  1. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/PKG-INFO +1 -1
  2. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/analysis/analysis.py +22 -9
  3. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab.egg-info/PKG-INFO +1 -1
  4. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/tox.ini +1 -0
  5. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.compile_mod.sh +0 -0
  6. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.gitattributes +0 -0
  7. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.github/dependabot.yml +0 -0
  8. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.github/workflows/release.yml +0 -0
  9. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.github/workflows/test.yml +0 -0
  10. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.gitignore +0 -0
  11. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.gitlab-ci.yml +0 -0
  12. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.readthedocs.yml +0 -0
  13. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/.zenodo.json +0 -0
  14. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/AUTHORS.txt +0 -0
  15. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/CHANGELOG.rst +0 -0
  16. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/CITATION.cff +0 -0
  17. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/CONTRIBUTING.rst +0 -0
  18. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/LICENSE +0 -0
  19. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/MANIFEST.in +0 -0
  20. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/Makefile +0 -0
  21. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/README.rst +0 -0
  22. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/__init__.py +0 -0
  23. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/analysis/__init__.py +0 -0
  24. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/analysis/inject_sequence.py +0 -0
  25. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/analysis/plotting.py +0 -0
  26. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/analysis/utils.py +0 -0
  27. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/__init__.py +0 -0
  28. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/ballstick/__init__.py +0 -0
  29. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/ballstick/emodel.hoc +0 -0
  30. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/ballstick/morphology.asc +0 -0
  31. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/cell_dict.py +0 -0
  32. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/core.py +0 -0
  33. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/injector.py +0 -0
  34. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/plotting.py +0 -0
  35. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/random.py +0 -0
  36. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/recording.py +0 -0
  37. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/section_distance.py +0 -0
  38. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/serialized_sections.py +0 -0
  39. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/sonata_proxy.py +0 -0
  40. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/stimuli_generator.py +0 -0
  41. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/cell/template.py +0 -0
  42. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/__init__.py +0 -0
  43. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/circuit_access/__init__.py +0 -0
  44. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/circuit_access/bluepy_circuit_access.py +0 -0
  45. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/circuit_access/definition.py +0 -0
  46. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/circuit_access/sonata_circuit_access.py +0 -0
  47. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/config/__init__.py +0 -0
  48. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/config/bluepy_simulation_config.py +0 -0
  49. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/config/definition.py +0 -0
  50. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/config/sections.py +0 -0
  51. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/config/sonata_simulation_config.py +0 -0
  52. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/format.py +0 -0
  53. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/iotools.py +0 -0
  54. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/node_id.py +0 -0
  55. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/simulation_access.py +0 -0
  56. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/synapse_properties.py +0 -0
  57. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit/validate.py +0 -0
  58. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/circuit_simulation.py +0 -0
  59. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/connection.py +0 -0
  60. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/dendrogram.py +0 -0
  61. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/exceptions.py +0 -0
  62. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/graph.py +0 -0
  63. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/hoc/Cell.hoc +0 -0
  64. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/hoc/RNGSettings.hoc +0 -0
  65. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/hoc/TDistFunc.hoc +0 -0
  66. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/hoc/TStim.hoc +0 -0
  67. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/hoc/fileUtils.hoc +0 -0
  68. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/importer.py +0 -0
  69. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/neuron_interpreter.py +0 -0
  70. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/plotwindow.py +0 -0
  71. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/psection.py +0 -0
  72. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/psegment.py +0 -0
  73. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/rngsettings.py +0 -0
  74. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/simulation/__init__.py +0 -0
  75. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/simulation/neuron_globals.py +0 -0
  76. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/simulation/parallel.py +0 -0
  77. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/simulation/report.py +0 -0
  78. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/simulation/simulation.py +0 -0
  79. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/stimulus/__init__.py +0 -0
  80. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/stimulus/circuit_stimulus_definitions.py +0 -0
  81. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/stimulus/factory.py +0 -0
  82. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/stimulus/stimulus.py +0 -0
  83. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/synapse/__init__.py +0 -0
  84. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/synapse/synapse_factory.py +0 -0
  85. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/synapse/synapse_types.py +0 -0
  86. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/tools.py +0 -0
  87. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/type_aliases.py +0 -0
  88. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/utils.py +0 -0
  89. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/validation/validation.py +0 -0
  90. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab/verbosity.py +0 -0
  91. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab.egg-info/SOURCES.txt +0 -0
  92. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab.egg-info/dependency_links.txt +0 -0
  93. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab.egg-info/requires.txt +0 -0
  94. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/bluecellulab.egg-info/top_level.txt +0 -0
  95. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/Makefile +0 -0
  96. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/images/voltage-readme.png +0 -0
  97. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/make.bat +0 -0
  98. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/requirements_docs.txt +0 -0
  99. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/_static/.gitkeep +0 -0
  100. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/api.rst +0 -0
  101. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/changelog.rst +0 -0
  102. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/compiling-mechanisms.rst +0 -0
  103. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/conf.py +0 -0
  104. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/contributing.rst +0 -0
  105. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/index.rst +0 -0
  106. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/list_of_stim.rst +0 -0
  107. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/docs/source/logo/BlueCelluLabBanner.jpg +0 -0
  108. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/pyproject.toml +0 -0
  109. {bluecellulab-2.6.52 → bluecellulab-2.6.53}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bluecellulab
3
- Version: 2.6.52
3
+ Version: 2.6.53
4
4
  Summary: Biologically detailed neural network simulations and analysis.
5
5
  Author: Blue Brain Project, EPFL
6
6
  License: Apache2.0
@@ -248,7 +248,7 @@ class BPAP:
248
248
  self.cell = cell
249
249
  self.dt = 0.025
250
250
  self.stim_start = 1000
251
- self.stim_duration = 3
251
+ self.stim_duration = 5
252
252
  self.basal_cmap = sns.color_palette("crest", as_cmap=True)
253
253
  self.apical_cmap = sns.color_palette("YlOrBr_r", as_cmap=True)
254
254
 
@@ -301,7 +301,11 @@ class BPAP:
301
301
  for rec in recs.values()
302
302
  ]
303
303
  features_results = efel.get_feature_values(traces, [efel_feature_name])
304
- amps = [feat_res[efel_feature_name][0] for feat_res in features_results]
304
+ amps = [
305
+ feat_res[efel_feature_name][0]
306
+ for feat_res in features_results
307
+ if feat_res[efel_feature_name] is not None
308
+ ]
305
309
 
306
310
  return amps
307
311
 
@@ -320,7 +324,7 @@ class BPAP:
320
324
 
321
325
  def get_amplitudes_and_distances(self):
322
326
  soma_rec, dend_rec, apic_rec = self.get_recordings()
323
- soma_amp = self.amplitudes({"soma": soma_rec})[0]
327
+ soma_amp = self.amplitudes({"soma": soma_rec})
324
328
  dend_amps = None
325
329
  dend_dist = None
326
330
  apic_amps = None
@@ -334,20 +338,21 @@ class BPAP:
334
338
 
335
339
  return soma_amp, dend_amps, dend_dist, apic_amps, apic_dist
336
340
 
337
- def fit(self, soma_amp, dend_amps, dend_dist, apic_amps, apic_dist):
341
+ @staticmethod
342
+ def fit(soma_amp, dend_amps, dend_dist, apic_amps, apic_dist):
338
343
  """Fit the amplitudes vs distances to an exponential decay function."""
339
344
  from scipy.optimize import curve_fit
340
345
 
341
346
  popt_dend = None
342
347
  if dend_amps and dend_dist:
343
348
  dist = [0] + dend_dist # add soma distance
344
- amps = [soma_amp] + dend_amps # add soma amplitude
349
+ amps = soma_amp + dend_amps # add soma amplitude
345
350
  popt_dend, _ = curve_fit(exp_decay, dist, amps)
346
351
 
347
352
  popt_apic = None
348
353
  if apic_amps and apic_dist:
349
354
  dist = [0] + apic_dist # add soma distance
350
- amps = [soma_amp] + apic_amps # add soma amplitude
355
+ amps = soma_amp + apic_amps # add soma amplitude
351
356
  popt_apic, _ = curve_fit(exp_decay, dist, amps)
352
357
 
353
358
  return popt_dend, popt_apic
@@ -357,10 +362,18 @@ class BPAP:
357
362
  validated = True
358
363
  notes = ""
359
364
  popt_dend, popt_apic = self.fit(soma_amp, dend_amps, dend_dist, apic_amps, apic_dist)
365
+ logging.warning(popt_dend)
366
+ if dend_amps is not None:
367
+ plt.cla()
368
+ plt.plot([0], soma_amp, '.')
369
+ plt.plot(dend_dist, dend_amps, '.')
370
+ x = np.linspace(0, max(dend_dist), 100)
371
+ plt.plot(x, exp_decay(x, *popt_dend), color='darkgreen', linestyle='--', label='Basal Dendritic Fit')
372
+ plt.savefig("bad_dendritic_fit.png")
360
373
  if popt_dend is None:
361
374
  logger.debug("No dendritic recordings found.")
362
375
  notes += "No dendritic recordings found.\n"
363
- elif popt_dend[1] <= 0:
376
+ elif popt_dend[1] <= 0 or popt_dend[0] <= 0:
364
377
  logger.debug("Dendritic fit is not decaying.")
365
378
  validated = False
366
379
  notes += "Dendritic fit is not decaying.\n"
@@ -369,7 +382,7 @@ class BPAP:
369
382
  if popt_apic is None:
370
383
  logger.debug("No apical recordings found.")
371
384
  notes += "No apical recordings found.\n"
372
- elif popt_apic[1] <= 0:
385
+ elif popt_apic[1] <= 0 or popt_apic[0] <= 0:
373
386
  logger.debug("Apical fit is not decaying.")
374
387
  validated = False
375
388
  notes += "Apical fit is not decaying.\n"
@@ -395,7 +408,7 @@ class BPAP:
395
408
 
396
409
  outpath = pathlib.Path(output_dir) / output_fname
397
410
  fig, ax1 = plt.subplots(figsize=(10, 6))
398
- ax1.scatter([0], [soma_amp], marker="^", color='black', label='Soma')
411
+ ax1.scatter([0], soma_amp, marker="^", color='black', label='Soma')
399
412
  if dend_amps and dend_dist:
400
413
  ax1.scatter(
401
414
  dend_dist,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: bluecellulab
3
- Version: 2.6.52
3
+ Version: 2.6.53
4
4
  Summary: Biologically detailed neural network simulations and analysis.
5
5
  Author: Blue Brain Project, EPFL
6
6
  License: Apache2.0
@@ -15,6 +15,7 @@ deps =
15
15
  pytest-timeout>=2.1.0
16
16
  pytest-xdist>=3.3.1 # multiprocessing
17
17
  pytest-forked>=1.6.0 # isolation
18
+ efel
18
19
  download = true
19
20
  allowlist_externals =
20
21
  make
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes