Cable cell decoration

class arbor.decor

A decor object contains a description of the cell dynamics to be applied to a morphology when used to instantiate a cable_cell

__init__()

Construct an empty decor description.

Properties for which defaults can be defined over the entire cell, specifically cable properties and ion properties, are set with set_property and set_ion methods.

set_property(Vm=None, cm=None, rL=None, tempK=None)

Set default values of cable properties on the whole cell. Overrides the default global values, and can be overridden by painting the values onto regions.

Parameters:
  • Vm (float or None) – Initial membrane voltage [mV].

  • cm (float or None) – Membrane capacitance [F/m²].

  • rL (float or None) – Axial resistivity of cable [Ω·cm].

  • tempK (float or None) – Temperature [Kelvin].

import arbor as A
# Set cell-wide values for properties for resistivity and capacitance
decor = A.decor()
decor.set_property(rL=100 * U.Ohm * U.cm, cm=0.1 * U.F/ U.m2)
set_ion(ion, int_con=None, ext_con=None, rev_pot=None, method=None)

Set default value for one or more properties of a specific ion on the whole cell. Set the properties of ion species named ion that will be applied by default everywhere on the cell. Species concentrations and reversal potential can be overridden on specific regions using the paint interface, while the method for calculating reversal potential is global for all CVs in the cell, and can’t be overridden locally.

Parameters:
  • ion (str) – description of the ion species.

  • int_con (float or None.) – initial internal concentration [mM].

  • ext_con (float or None.) – initial external concentration [mM].

  • rev_pot (float or None) – reversal potential [mV].

  • method (mechanism or None) – method for calculating reversal potential.

import arbor as A
# Set nernst reversal potential method for calcium.
ca_mech = A.mechanism('nernst/x=ca')
decor.set_ion('ca', method=ca_mech)

# Set reversal potential and concentration for sodium.
# The reversal potential is fixed, so we set the method to None.
decor.set_ion('na', int_con=5.0 * U.mM, rev_pot=70 * U.mV, method=None)

Various specialisations of the paint method are available for setting properties and density mechanisms that are applied to regions.

paint(region, Vm=None, cm=None, rL=None, tempK=None)

Set cable properties on a region. A property v is given as a float or a string. In the latter, v will be interpreted as an inhomogeneous expression.

Parameters:
  • region (str) – description of the region.

  • Vm (float, str, or None) – Initial membrane voltage [mV].

  • cm (float, str, or None) – Membrane capacitance [F/m²].

  • rL (float, str, or None) – Axial resistivity of cable [Ω·cm].

  • tempK (float, str, or None) – Temperature [Kelvin].

# Specialize resistivity on soma
decor.paint('"soma"', rL=100 * U.Ohm * U.cm)
# Specialize resistivity and capacitance on the axon, where
# axon is defined using a region expression.
decor.paint('(tag 2)', cm=0.05 * U.F/U.m2, rL=80 * U.Ohm * U.cm)
# Specialize resistivity on soma and set :math:`r_L(s) = 42.0 \cdot d(s)`
# where `s` parametrises the cable segment(s) and :math:`d(s)` is the cable
# diameter at `s`.
decor.paint('"soma"', rL='(mul 42 (diameter))')
paint(region, name, int_con=None, ext_con=None, rev_pot=None)

Set ion species properties initial conditions on a region. A property v is given as a float or a string. In the latter, v will be interpreted as an inhomogeneous expression.

Parameters:
  • name (str) – name of the ion species.

  • int_con (float, str, or None.) – initial internal concentration [mM].

  • ext_con (float, str, or None.) – initial external concentration [mM].

  • rev_pot (float, str, or None) – reversal potential [mV].

paint(region, density)

Apply a density mechanism on a region.

Parameters:
  • region (str) – description of the region.

  • density (density) – the density mechanism.

place(locations, synapse, label)

Place one instance of the synapse mechanism described by synapse to each location in locations and label the group of synapses with label. The label can be used to form connections to one of the synapses in the arbor.recipe by creating a arbor.connection.

Parameters:
  • locations (str) – description of the locset.

  • synapse (synapse) – the synapse.

  • label (str) – the label of the group of synapses on the locset.

place(locations, junction, label)

Place one instance of the gap junction mechanism described by junction at each location in locations and label the group of gap junction sites with label. The label can be used to form gap junction connections to/from one of the labeled sites in the arbor.recipe by creating a arbor.gap_junction_connection.

Parameters:
  • locations (str) – description of the locset.

  • junction (junction) – the gap junction mechanism.

  • label (str) – the label of the group of gap junction sites on the locset.

place(locations, stim, label)

Add a current stimulus at each location in locations and label the group of stimuli with label.

Parameters:
  • locations (str) – description of the locset.

  • stim (iclamp) – the current stim.

  • label (str) – the label of the group of stimuli on the locset.

place(locations, d, label)

Add a voltage threshold detector at each location in locations and label the group of detectors with label. The label can be used to form connections from one of the detectors in the arbor.recipe by creating a arbor.connection.

Parameters:
  • locations (str) – description of the locset.

  • d (threshold_detector) – description of the detector.

  • label (str) – the label of the group of detectors on the locset.

paintings()

Returns a list of tuples (region, painted_object) for inspection.

placements()

Returns a list of tuples (locset, placed_object) for inspection.

defaults()

Returns a list of all set defaults for inspection.