Skip to content

Morphomovies

Morphomovies are a representation of a 2D domain that changes in space and time in LimbNET's simulations. They are used to represent the evolution of a 2D domain, e.g. the growth and shape change of an embryonic mouse limb bud over time. They are discretised, in other words the internal volume of the domain is split into elements that are used for the simulation representation of the domain, in the case of LimbNET to perform finite volume integration of the Reaction-Diffusion equations defined over the domain.

The morphomovies are defined by a set of morphomovie frames, each of which is a discretised representation of the domain at a given time. The morphomovie frames are defined at discrete time points, and the morphomovie itself is defined by interpolating between these frames. This section provides an overview of the morphomovie definition and functionality within the simulation engine, and the available morphomovies in LimbNET.

Morphomovie definition

Boundary and meshing

The core of LimbNET's simulation engine is designed to model dynamical patterning processes in 2D during early embryonic limb development. Simulated Reaction-Diffusion processes take place within a 2D domain, with a boundary that may or may not change shape over time. In the case of the original core morphomovie - representing the embryonic mouse hindlimb bud - this boundary is defined by the canonical wild-type limb bud boundary shape defined in Musy et al.1, from mouse embryonic stage mE10:09 (10 days and 9 hours), through to mE12:08:

Canonical wild-type mouse limb bud boundary trajectory.
Canonical wild-type mouse limb bud boundary trajectory.

The limb bud boundary, above, with the addition of a rectangular domain representing the flank, is meshed with triangular elements at hourly intervals to form the discretised domain(s) used for subsequent numerical simulations. In total, 48 meshes are included for the mouse limb morphomovie, one per hour of the two-day developmental trajectory. Three representative meshes are shown below:

Mouse limb bud meshes at three time points of the meshed morphomovie.
Mouse limb bud meshes at three time points of the meshed morphomovie.

In the meshes above, the limb bud boundary (solid line) is separately discretised with linear elements, such that each linear element of the boundary is exactly coincident with the outer edge of a corresponding triangular element at the outside of the 2D domain. Thus the external linear element mesh - referred to as the ectoderm in the model - effectively forms a dynamic boundary condition for the internal triangular element mesh - referred to as the mesenchyme compartment. The use of the ectoderm is completely optional. If the ectoderm/intercompartmental connection feature is not used, the boundary of the mesenchyme is essentially treated as a no-flux boundary condition.

Finite volume simulation

Numerical simulation of a model's Reaction-Diffusion equations is split into two main components: diffusion and reaction. For a single time-step of a given simulation, diffusion is integrated according to a finite volume scheme over the discretised domain(s):

Meshed domain with finite volume diffusion, and per-element reaction.
Meshed domain with finite volume diffusion, and per-element reaction.

As illustrated in the figure above, within the mesenchymal compartment, diffusion occurs only between neighbouring triangular elements. Within the outer ectodermal boundary, if enabled, diffusion occurs only between neighbouring linear elements. Material can be exchanged between ectoderm and mesenchyme: a diffusive process between all linear elements and their neighbouring triangle elements.

At every time step, reaction proceeds according to the numerical solution of differential equations corresponding to all given reactants, which are integrated per individual element (stars, in the above figure) in either/both mesenchymal and ectodermal compartments as relevant.

Stretching and interpolation

Within each hourly interval a single mesh topology (discretisation of the 2D domain) is defined. However, growth - and consequently stretching - of the simulation domain is treated as a smooth and continuous process. This stretching of the internal mesh is performed by interpolating the positions of the vertices of elements in a morphomovie frame:

During one hour of simulated development, the limb bud boundary grows and changes shape (left), and thus the meshed domain and internal elements are correspondingly deformed (right).
During one hour of simulated development, the limb bud boundary grows and changes shape (left), and thus the meshed domain and internal elements are correspondingly deformed (right).

So, as shown in the figure above, within a given hour of simulated development the meshed domain (inset) is deformed such that its original shape (solid) - derived from the canonical limb bud boundary at the beginning of the hour - fits the boundary at the end of the hour (dashed). The stretching is linear in time, in other words for a given element, the position of its vertices at any given time point is interpolated linearly between the positions of the vertices at the beginning and end of the hour.

Since the boundary of the domain grows and changes shape significantly over time, the mesh is replaced at hourly time intervals, as described in boundary and meshing. Upon mesh replacement, all scalar quantities that are specified per-element (the variables and reactants) are interpolated from the mesh at the end of the previous time point (solid) onto the mesh at the current time point (dashed):

Interpolation between meshes upon mesh change.
Interpolation between meshes upon mesh change.

For any given element in the original mesh, a scalar quantity (purple) is interpolated onto elements in the new mesh with which it intersects proportionally according to the ratio of overlapping area between the elements.


  1. Musy, M., et al. (2018) "A quantitative method for staging mouse embryos based on limb morphometry". Dev. Camb. Engl. 145, dev154856. 10.1242/dev.154856