Skip to content

Proposal for morphologies

romainbrette edited this page Jan 22, 2016 · 27 revisions

Morphology are used for two purposes: for simulation, and for access and plotting. For simulation, the geometry doesn't actually matter, only the electrical properties do. I propose to separate those two sets of properties.

Core properties

Electrical properties

A morphology consists of a tree, each node being a branch. Each branch is a set of compartments. What we need to know for a simulation is:

  • area of each compartment;
  • resistance between two successive compartments;
  • (half-)resistance at the end points.

I propose the following idea.

First, we only store the area and total resistance of each compartment. We then assume that potential and other variables are meant at electrical, and not geometrical, middle points. That is, at half-resistance. The geometrical meaning would depend on the implied geometry, but in practice it doesn't really matter. In this way we can readily deduce all required values (i.e. sum half-resistance of successive compartments).

Second, since the resistance depends on intracellular resistivity, which is only specified later, we instead calculated an effective length, that is, so that resistance is intracellular resistivity divided by effective length (for a cylinder, pi * d**2/4L).

The advantage here is that those values do not depend on the actual geometry of the compartment, so the simulation core does not need to know about it, and all geometrical aspects are confined into the Morphology module.

Thinking about diffusion

We need to keep in mind that we will want to also simulate diffusion at some point, which means we will want to know the volume of compartments. Let us have that also specified.

Geometrical properties

Those are used mostly for plotting and access (eg, access point at distance 10 um). Access also goes through the Morphology class. What matters mostly for access is the distance parameter. Specifically, we need to know the distance (along the branch, not Euclidian distance) of end points of compartments to the origin of the branch. This is also somehow independent of what specific geometry is implied. It is directly implied by the length parameter (cumulative sum) and therefore length should be understood as length along the branch, not Euclidian distance.

In summary, coordinates should be decoupled from other parameters (length, area etc). The question what the coordinates should refer to in terms of geometry, but that is mostly meaningful for plotting purposes. I would suggest that the coordinates correspond to those of the electrical midpoint, as defined previously, because it corresponds to where the values of V etc are taken. Depending on the geometry, end points can be calculated directly from the other geometrico-electrical parameters.

We should also think about extracellular field calculations at some point.

Summary

The basic idea is that the core specification of morphologies is independent of implied geometry (cylinder, truncated cones, etc). Each compartment is defined by:

  • (electrical) midpoint coordinates;
  • geometrical curved length (not Euclidian distance between endpoints);
  • area;
  • resistive length;
  • volume.

Diameter and end point coordinates are not core properties. Those are mainly used for plotting purposes, and they depend on the specific geometry (cylinder, truncated cone, sphere). Distance is only used internally for access (i.e. to determine which compartment is meant when specifying a distance). We only need distance from branch origin, not from soma origin.

Building morphologies

Building blocks

One way is to assemble a morphology with blocks such as cylinders. We will need the following kinds of blocks:

  • Isopotential sphere. This is the Soma class.
  • Cylinder.
  • Sequence of truncated cones. I think this is better than a sequence of cylinders because diameter is continuous (and so we don't have the problem of what to with the surface at junctions). Given that a cylinder is a sequence of truncated cones, this could be the default Morphology type.

Boundary surfaces

One issue is what to do with the surface at the two ends of a cylinder or truncated cones. Physically, those should be included in the calculation of area for the two compartments. I propose to do that. Then when a branch is connected, the area of the end compartment of the parent branch of and of the start compartment of the child are updated.

Multicompartmental soma

Loading files