(dedicated to late prof. Chris Henley at Cornell who supervised this project)
Microtubules are structural polymers inside living cells that cells use to move around. Microtubules can be thought of as rigid rods continuously growing at the front end and slowly shrinking at the rear end, resulting in a net displacement towards the inner side of cell membrane and pushing it outwards. I wrote a C++ 2D simulation used to investigate whether there exists a set of conditions where randomly growing microtubules (rods) might self-organize to form a stable ordered state. Some results are shown below.
-
generation / growth: This code simulates the microtubules as a number of rigid rods. The rods grow from the front end at a rate
vplus
(μm/min) and shrink from the rear end at a ratevmin
. New rods are generated on the screen at a rate ofrInj
in units μm-2sec-1. -
collision / pass-through algorithm: As rods grow, they can interact by either (i) colliding with each other and halting their growth as long as their front end is obstructed by another rod, or (ii) passing through another rod. The probabilities of (i) and (ii) are controlled through variables
lBundlingProb
andrBundlingProb
which set the probabilities of rods passing through other rods if they encounter it from left or right, respectively. -
bundling: If
bundling
is true, whenever a rod hits another rod, it will not stop growing. Instead it will continue growing 'alongside' the encountered rod, i.e. along the direction of the rod that was hit.
Rods are generated in random directions if startOriented == false
. If this
is true then the rods are generated using Normal distribution with the mean
startTheta
and standard deviation startThetaSpread
. kSwitch
controls
the step number at which we stop generating rods from the Normal distribution
and switch to the uniform.
This simulation uses exclusively square periodic boundary conditions.
The level of order in this system is quantified using a coarse-grained
ordered parameters (see e.g. the statistical physics textbook from Jim
Sethna 'Statistical physics, order parameters and complexity'). The entire
system is first coarse-grained into a grid of 2fftPowerOfTwo
squares, the
order parameter is defined as the average of z= exp(i*θ) in each square where
θ is the angle of each rod.
For the case where ordered state is decaying, the first three moments of this order parameter (mean, standard deviation and skewness) are shown in the plot below.