BlueBrain / BlueBrain/NeuroMorphoVis
Unhandled division by zero
- Dominant language
- Python
- Stars
- 138
- Forks
- 27
- PR merge metrics
- No merged PRs in 30d
Description
Please fix the error reported for this morphology: /data/morphologies/neurons/swc/barbour/1/D27B.CNG.swc
```
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/interface/ui/io/io_panel.py", line 313, in modal
nmv.interface.analyze_morphology(morphology=nmv.interface.ui_morphology, context=context)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/interface/ui/analysis/analysis_panel_ops.py", line 333, in analyze_morphology
item.apply_per_arbor_analysis_kernel(morphology=morphology, context=context)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/structs/analysis_item.py", line 348, in apply_per_arbor_analysis_kernel
self.result = self.kernel(morphology)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/morphology/lengths_ops.py", line 315, in kernel_minimum_hillman_taper
return nmv.analysis.invoke_kernel(morphology,
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/morphology/common.py", line 361, in invoke_kernel
analysis_result = nmv.analysis.apply_analysis_operation_to_morphology(*[morphology, kernel])
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/functional.py", line 209, in apply_analysis_operation_to_morphology
analysis_result.axons_result.append(analysis_function(*arbor_args))
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/arbor/lengths_ops.py", line 487, in compute_minimum_hillman_taper_of_arbor
return min(compute_hillman_taper_values_of_arbor(arbor))
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/arbor/lengths_ops.py", line 449, in compute_hillman_taper_values_of_arbor
nmv.skeleton.ops.apply_operation_to_arbor(
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/skeleton/ops/skeleton_generic_ops.py", line 63, in apply_operation_to_arbor
apply_operation_to_arbor(*section_args)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/skeleton/ops/skeleton_generic_ops.py", line 49, in apply_operation_to_arbor
operation(*section_args)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/section/samples_ops.py", line 668, in compute_sections_hillman_taper
section_hillman_taper = compute_section_hillman_taper(section=section)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/section/samples_ops.py", line 628, in compute_section_hillman_taper
_hillman_taper_value = delta / section.parent.samples[-1].radius
ZeroDivisionError: float division by zero
location: :-1
Error: Python: Traceback (most recent call last):
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/interface/ui/io/io_panel.py", line 313, in modal
nmv.interface.analyze_morphology(morphology=nmv.interface.ui_morphology, context=context)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/interface/ui/analysis/analysis_panel_ops.py", line 333, in analyze_morphology
item.apply_per_arbor_analysis_kernel(morphology=morphology, context=context)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/structs/analysis_item.py", line 348, in apply_per_arbor_analysis_kernel
self.result = self.kernel(morphology)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/morphology/lengths_ops.py", line 315, in kernel_minimum_hillman_taper
return nmv.analysis.invoke_kernel(morphology,
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/morphology/common.py", line 361, in invoke_kernel
analysis_result = nmv.analysis.apply_analysis_operation_to_morphology(*[morphology, kernel])
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/functional.py", line 209, in apply_analysis_operation_to_morphology
analysis_result.axons_result.append(analysis_function(*arbor_args))
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/arbor/lengths_ops.py", line 487, in compute_minimum_hillman_taper_of_arbor
return min(compute_hillman_taper_values_of_arbor(arbor))
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/arbor/lengths_ops.py", line 449, in compute_hillman_taper_values_of_arbor
nmv.skeleton.ops.apply_operation_to_arbor(
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/skeleton/ops/skeleton_generic_ops.py", line 63, in apply_operation_to_arbor
apply_operation_to_arbor(*section_args)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/skeleton/ops/skeleton_generic_ops.py", line 49, in apply_operation_to_arbor
operation(*section_args)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/section/samples_ops.py", line 668, in compute_sections_hillman_taper
section_hillman_taper = compute_section_hillman_taper(section=section)
File "/home/abdellah/blender/bluebrain-blender-3.1/blender-neuromorphovis/3.1/scripts/addons/neuromorphovis/nmv/analysis/kernels/section/samples_ops.py", line 628, in compute_section_hillman_taper
_hillman_taper_value = delta / section.parent.samples[-1].radius
ZeroDivisionError: float division by zero
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with nmv/analysis/kernels/section/samples_ops.py at compute_section_hillman_taper, especially the division on line 628, and trace its caller in lengths_ops.py. Reproduce the failure with /data/morphologies/neurons/swc/barbour/1/D27B.CNG.swc, determine the expected handling of a zero parent radius, and verify that morphology analysis completes without the ZeroDivisionError.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100