Given a spatial neuron with three compartments (labeled 0, 1, 2) and a channel at compartment 0 whose conductance depends on the diffusion current coming from the neighboring compartment, is there a way to access the diffusion current from compartment 1 to 0 specifically?

In my specific case for example, I am injecting a point current at compartment 2, and I know a certain percent of this forms I_Ca+. I would like to get I_Ca+ at the compartment 0, but I believe I need the diffusion current from the previous compartment in order to make this calculation.

I thought of maybe using Cm and dv/dt to recover the Im and I_diffusion, but this also requires having the previous voltage value of the compartment, which I also don’t think is an attribute of the neuron.

Apologies if this is already in the documentation.

@harpercho, in general, there are two components of ion diffusion in a neuron - radial, i.e., in the direction from the membrane inside a dendrite, and longitudinal (also known as axial) diffusion along the dendrite. What you want is the second one, and (sadly) it is probably impossible or at least tough to model it in Brian. I tried several times to get my head around with no luck.

Saying that it should be noted that longitudinal diffusion should, in theory, not add so much because it is slow. Voltage propagates much faster and opens Ca2+ channels which increase local calcium concentration. Therefore, in a simplified model, you may not need longitudinal diffusion. But if a simplified model isn’t what you need, I would suggest using NEURON, which has mechanisms for modeling this diffusion. I have a few examples of how to do it in NEURON. Let me know if you would like to take a look at them.