_Pool#
- class _Pool(
- cells: list,
- initial_voltage__mV: float | list[float] | None = None,
- spike_threshold__mV: float = -10.0,
Bases:
objectBase class for neuron cell populations.
Provides common functionality for managing groups of neurons including voltage initialization for populations with real NEURON sections and configurable spike detection thresholds.
- Parameters:
cells (list) – List of neuron cells in the population.
initial_voltage__mV (Union[float, list[float]], optional) – Initial membrane voltage(s) in millivolts for populations with real NEURON sections. Can be a single value applied to all cells or a list of per-cell values. If None (default), no voltage initialization is performed, which is appropriate for dummy cell populations.
spike_threshold__mV (float, optional) – Spike detection threshold in millivolts for recording spikes from this population. Motor neurons typically need higher thresholds (e.g., 50.0 mV) while interneurons use lower thresholds (-10.0 mV). By default -10.0.
Notes
Populations with dummy cells (e.g., DescendingDrive, AffIa, AffIb) should not provide initial_voltage__mV as they have no real soma or dendrite sections to initialize. Populations with real NEURON sections (e.g., AlphaMN, AffII, GII, GIb) should provide appropriate voltage values.
Different neuron types have different action potential amplitudes: - Motor neurons: typically reach 80-100 mV, need threshold ~50 mV - Interneurons: typically reach 30-50 mV, can use default -10 mV
Methods
Return sections and their initial voltages for NEURON simulation setup.
- get_initialization_data() tuple[list, list][source]#
Return sections and their initial voltages for NEURON simulation setup.
Collects all soma and dendrite sections from the neuron population along with their corresponding initial voltage values for proper NEURON simulation initialization. Returns empty lists if this population doesn’t have voltage initialization (e.g., dummy cells).