## Diffusion limited rate of actin polymerization

What is diffusion limited rate of actin polymerization at 3mM concentration?

The diffusion limited rate is

$$ \kappa = 4\pi D r \approx 4\pi 20\mu m^2/s \times 0.003\mu m = 0.8\mu m^3/s \approx 3\times 10^{8} M^{-1}s^{-1}$$

With a concentration of \(3\times 10^{-4}M\), we find a rate of

$$ k = 9\times 10^{4}/s $$

This is a pretty high rate, certainly a lot higher than what is typically observed. However, the orientational correction factor will reduce this rate by at least a factor of 10.

## Drag force on a listerium

A sphere with diameter of one \(\mu m\) at a velocity of 200nm/s will experience a drag of

$$F = 6\pi r \eta v $$

where the viscosity of water is \(\eta=10^{-3}pNs/\mu m^2\). Hence

$$ F \approx 20\times 0.5\mu m\times 0.2\mu m/s \times 10^{-3} pNs/\mu m^2 = 2\times 10^{-3} pN$$

hence the actual drag force on the bacterium is pretty small. (And we must have made a mistake during the excercise session.)

## Plot the solution by Moligner and Oster.

import numpy as np import matplotlib.pyplot as plt from scipy.integrate import quad plt.ion() def o_integral(v): ''' This function returns the integral omega(v) for a particular value for v. omega(v) is evaluated by numeric integration. ''' def f(y, v): return np.exp((1-np.exp(v*y))/v) # the integration boundaries are 0 and minimum of 100 and 10/v # for small v, the integrand is ~exp(-x), hence a range 100 is generous # for large v, the integrand is neglibile if x>>log(v)/v return quad(f, 0.0, np.minimum(100, 10./v), args=(v,))[0] def omega(v): ''' this function checks whether the input v is a scalar (i.e. just one number) or a list/array. In the the latter case, the integral is evaluated for every point and the result returned as an array ''' if np.isscalar(v): return o_integral(v) else: return np.array([o_integral(x) for x in v]) def RHS(v, eps1, eps2, eps3, eps4): '''the right hand side (RHS) of the Moligner/Oster result''' return eps2*np.exp(-eps1*v*omega(v)**2-eps4) - eps3 ## Make a figure plotting the graphical solution of the # Moligner/Oster result plt.figure() v = np.linspace(1e-2,55,1001) # use the values from the paper rhs = RHS(v, 5.4, 105, 0.5, 0) #plot left and right hand side of the equation plt.plot(v, rhs) plt.plot(v, v) plt.xlabel('v') ### # plotting the approximate and numerical solutions of omega(w) ### plt.figure() # numeric solution plt.plot(v, omega(v), label='numerical solution') plt.plot(v[v>1], np.log(v[v>1])/v[v>1], label='large v approximation') plt.plot(v[v<1], 1-v[v<1], label='small v approximation') plt.ylabel('omega(v)') plt.xlabel('v')