Multicompartmental models (Brian 1 –> 2 conversion)
Brian 1 offered support for simple multi-compartmental models in the
compartments
module. This module allowed you to combine the equations for
several compartments into a single Equations
object. This is only a suitable
solution for simple morphologies (e.g. “ball-and-stick” models) but has the
advantage over using SpatialNeuron
that you can have several of such neurons
in a NeuronGroup
.
If you already have a definition of a model using Brian 1’s compartments
module, then you can simply print out the equations and use them directly in
Brian 2. For simple models, writing the equations without that help is rather
straightforward anyway:
Brian 1 |
Brian 2 |
---|---|
V0 = 10*mV
C = 200*pF
Ra = 150*kohm
R = 50*Mohm
soma_eqs = (MembraneEquation(C) +
IonicCurrent('I=(vm-V0)/R : amp'))
dend_eqs = MembraneEquation(C)
neuron_eqs = Compartments({'soma': soma_eqs,
'dend': dend_eqs})
neuron = NeuronGroup(N, neuron_eqs)
|
V0 = 10*mV
C = 200*pF
Ra = 150*kohm
R = 50*Mohm
neuron_eqs = '''
dvm_soma/dt = (I_soma + I_soma_dend)/C : volt
I_soma = (V0 - vm_soma)/R : amp
I_soma_dend = (vm_dend - vm_soma)/Ra : amp
dvm_dend/dt = -I_soma_dend/C : volt'''
neuron = NeuronGroup(N, neuron_eqs)
|