Soma#

class dendrify.compartment.Soma(name, model='leakyIF', length=None, diameter=None, cm=None, gl=None, cm_abs=None, gl_abs=None, r_axial=None, v_rest=None, scale_factor=1.0, spine_factor=1.0)[source]#

Bases: Compartment

A class representing a somatic compartment in a neuron model.

This class automatically generates and handles all differential equations and parameters needed to describe a somatic compartment and any currents (synaptic, dendritic, noise) passing through it.

See also

Soma acts as a wrapper for Compartment with slight changes to account for certain somatic properties. For a full list of its methods and attributes, please see: Compartment.

Parameters:
  • name (str) – A unique name used to tag compartment-specific equations and parameters. It is also used to distinguish the various compartments belonging to the same NeuronModel.

  • model (str, optional) – A keyword for accessing Dendrify’s library models. Custom models can also be provided but they should be in the same formattable structure as the library models. Available options: 'leakyIF' (default), 'adaptiveIF', 'adex'.

  • length (Quantity, optional) – A compartment’s length.

  • diameter (Quantity, optional) – A compartment’s diameter.

  • cm (Quantity, optional) – Specific capacitance (usually μF / cm^2).

  • gl (Quantity, optional) – Specific leakage conductance (usually μS / cm^2).

  • cm_abs (Quantity, optional) – Absolute capacitance (usually pF).

  • gl_abs (Quantity, optional) – Absolute leakage conductance (usually nS).

  • r_axial (Quantity, optional) – Axial resistance (usually Ohm * cm).

  • v_rest (Quantity, optional) – Resting membrane voltage.

  • scale_factor (float, optional) – A global area scale factor, by default 1.0.

  • spine_factor (float, optional) – A dendritic area scale factor to account for spines, by default 1.0.

Examples

>>> # specifying equations only:
>>> compX = Soma('nameX', 'leakyIF')
>>> # specifying equations and ephys properties:
>>> compY = Soma('nameY', 'adaptiveIF', length=100*um, diameter=1*um,
>>>                     cm=1*uF/(cm**2), gl=50*uS/(cm**2))
>>> # specifying equations and absolute ephys properties:
>>> compY = Soma('nameZ', 'adaptiveIF', cm_abs=100*pF, gl_abs=20*nS)