Coupled Dendritric Tree

Hello Brian Community,

I am at the outset of a large project and I would like the start off with the right simulator. Perhaps someone here can advise on the viability of Brian for my particular needs. I will be modeling neuromorphic hardware with some unique design constraints, such as:

  • A complex dendritic arbor
  • Dendrite potentials may be coupled with their neighbors
  • Several dendrites may feed into other dendrites (a several-layer-deep dendritic tree)
  • The arbor eventually feeds into the soma which has typical LIF behavior, with a membrane potential determined by the sum of all directly connected dendrites

The question here is how best to facilitate these dendritic nuances within Brian? I have thought of treating dendrite as point neurons, but then how to couple their non-firing potentials and feed their combined potentials to down-stream dendrites that will eventually feed the soma? Any counsel on whether it makes sense to pursue modeling such a system in Brian would be highly appreciated.

Thank you,

Hi @bryan,
I didn’t get your question, sorry. Could you please elaborate a bit more on what kind of problem you encountered? Have you tried Brian’s mechanisms for multicompartment models?

From my very limited experience, it is a very easy-to-use system, although there are a couple of limitations:

  1. it seems impossible to implement longitude diffusion (Ca2+, for example)
  2. I don’t know if it’s possible to implement an extracellular medium as an additional electrical circuit (very handy for TMS simulations, for example)

Hi rth,

After some revised thinking, I have simplified my requirements to something like this:

  • Dendritic arbor (let’s say 3 sets of 3 neurons each feeding into 1 of another 3 neurons that feed into the soma). So the first layer of dendrites is 9, which feed into a second layer of 3 dendrites, which finally feed into the soma
  • The dendrites do not spike, but only gather potential (up to some maximum) and decay.
  • Potential is gathered from either incoming spikes at the synapse or upstream dendrites. Either of which connect with a specific predefined function that translates the spiking event or upstream potential into a potential for that dendrite
  • Finally, when the soma spikes, it should send spiking events to dendrites of specific downstream neurons

The essence of the question here, is would Brian (with the multicompartment model for example) allow for this kind of dendritic customization? It would just be nice to have a clear view of this before diving into development.


@bryan in a multicompartment module, segments are “independent neurons” connected to each other by longitudinal currents. You can use whatever excitability of the dendrites because you have to set equations for cross-membrane currents. However, if you want an active membrane only in the soma but not in dendrites, you will need to create passive dendrites first and then link them to a single soma compartment with active ion channels. @mstimberg please correct me if I’m wrong.


Actually you can have a leaky IF soma with some passive dendrites connected to it using the following syntax:

GL = 50*uS/(cm**2)  # specific resistance
CM = 1*uF/cm**2    # specific leakage conductance
RI = 200*ohm*cm    # intracellular resistivity (axial resistance)
EL = -70*mV    # resting (reversal) potential
N = 5    # how many pieces to devide a Cylinder into

morpho = b.Cylinder(length=25*um, diameter=25*um, n=1)    # Or a Soma
morpho.dendrite = b.Cylinder(length=300*um, diameter=1*um,  n=N)

eqs = '''
Im = GL * (EL - v) : amp/meter**2
I : amp (point current)

spatial_neuron = SpatialNeuron(morphology=morpho, model=eqs, Cm=CM, Ri=RI,
                                 threshold='v > -40*mV', reset='v = -50*mV',
                                 refractory=3*ms, threshold_location=0)

You just specify that thresholding takes place at index 0.

1 Like

@mpagkalos, thank you for clarifications. I more thought of active some with of HH equations and passive dendrites.

1 Like

Just as a quick comment: you’d typically model a multi-compartmental model with an active soma based on HH equations together with passive dendrites by using the HH equations and simply setting g_Na and g_Kd (or whatever active channels you have) to zero in the dendrites. This obviously isn’t the most efficient way to model the dendrites, but in practice it usually does not make a big difference.