2. Functions for modeling¶
Note
The following functions are used for math modeling and analysis in Figure 2, 6 and in Suplementary Figure S4.
2.1. The basic model¶
Note
The following functions are used for the basic math model in Figure 2, where we assumed that actin filaments’ assembly and disassembly rates lack orientation bias or dependence, and that filaments are rotated by a constant contraction rate.
- modeling.basic_model.alignmentSimulator2(initN, dt, totalT, iFrame, vivoCDF, strainMin, strainMax, deathMin, deathMax)¶
alignmentSimulator2 explores parameter space for the basic math model.
- Parameters
initN – initial number of filaments
dt – delta time for stepwise estimate
totalT – total length of time to simulate
iFrame – period of time to record simulated results
vivoCDF – accumulative distribution function for the orientation of
vivo (
filaments distribution measured in
) –strainMin – minimum contraction rate the system will explore
strainMax – maximum contraction rate the system will explore
deathMin – minimum death rate the system will explore
deathMax – maximum death rate the system will explore
- Output:
First column: Contraction rate
Second column: Death rate
Third column: Asymmetry value of the distribution of the filament orientation at the end.
- modeling.basic_model.filamentsRotate(initN, dt, totalT, iFrame, vivoCDF, strainRate, deathRate)¶
filamentsRotate simulates the distribution of filament orientation with given contraction rate and death rate (turnover rate) assuming that filaments assemble at random orientations, cortex contracts with a constant contraction rate, and filaments in all directions have are equally likely to turnover.
- Parameters
initN – initial number of filaments
dt – delta time for stepwise estimate
totalT – total length of time to simulate
iFrame – period of time to record simulated results
vivoCDF – accumulative distribution function for the orientation of filaments distribution measured in vivo
strainRate – contraction rate
deathRate – turnover rate
- Output:
res: the distribution of filament orientation in the following format:
rows = time evolution
columns = bins from 0 - 90 degrees
numbers = the number of filament within a bin of direction at a given timepoint
density: total filament density
2.2. The differential turnover model¶
Note
The following functions are used for the differential turnover model in Supplementary Figure S4, where we assumed that actin filaments’ with correct orientations are protected from disassembly.
- modeling.diff_Trnv_model.filamentsRotate2v3(initN, dt, totalT, iFrame, vivoCDF, strainRate, deathRateMin, deathRateMax, k, kdgree)¶
filamentsRotate2v3 silulates the distribution of filament orientation with in vivo contraction rate and assume that the death rate depends on the orientation of filament governed by a Hill function.
- Parameters
initN – initial number of filaments
dt – delta time for stepwise estimate
totalT – total length of time to simulate
iFrame – period of time to record simulated results
vivoCDF – accumulative distribution function for the orientation of filaments distribution measured in vivo
strainRate – in vivo measurement of contraction rate
deathRateMin – minimum turnover rate
deathRateMax – maximum turnover rate
k – threshold for the Hill function
kdgree – degree of the Hill function
- Output:
res: the distribution of filament orientation in the following format:
rows = time evolution
columns = bins from 0 - 90 degrees
numbers = the number of filament within a bin of direction at a given timepoint
density: total filament density
- modeling.diff_Trnv_model.turnoverSimulator5(initN, dt, totalT, iFrame, vivoCDF, strainRate)¶
turnoverSimulator5 explores 200 random parameter pairs in the parameter space for differential turnover model.
- Parameters
initN – initial number of filaments
dt – delta time for stepwise estimate
totalT – total length of time to simulate
iFrame – period of time to record simulated results
vivoCDF – accumulative distribution function for the orientation of
vivo. (
filaments distribution measured in
) –strainRate – contraction rate measured in vivo.
- Output:
out: the result of the simulation in the following format:
minDeath = minimum turnover rate
maxDeath = maximum turnover rate
k = threshold for the Hill function
kdgree = degree of the Hill function
aveDeath2 = average turnover rate from 60 - 90 seconds
asy = asymmetry value
filamentDis = filament distribution from filamentsRotate2v3
Int = intensity from filamentsRotate2v3
2.3. The Filament-Guide-Filament-Assembly model¶
Note
The following functions are used for the FGFA model in Figure 6, where we assumed that a portion of actin filaments assemble with the orientation of existing filaments.
- modeling.FGFA_model.alignmentSimulator4(VivoCDF, initN, dt, totalT, iFrame, strainRate, deathRate)¶
alignmentSimulator4 explores 50 random lamda value for FGFA model
- Parameters
initN – initial number of filaments
dt – delta time for stepwise estimate
totalT – total length of time to simulate
iFrame – period of time to record simulated results
vivoCDF – accumulative distribution function for the orientation of
vivo. (
filaments distribution measured in
) –strainRate – measured contraction rate in vivo.
deathRate – measured turnover rate in vivo.
- Output:
first column: lamda
second column: asymmetry value
- modeling.FGFA_model.filamentsRotate4(VivoCDF, initN, dt, totalT, iFrame, strainRate, deathRate, p)¶
filamentsRotate4 simulates the distribution of filament orientation with in vivo contraction rate and turnover rate, assuming that lamda portion of the new born filament inherent the orientation of an existing filament.
- Parameters
initN – initial number of filaments
dt – delta time for stepwise estimate
totalT – total length of time to simulate
iFrame – period of time to record simulated results
vivoCDF – accumulative distribution function for the orientation of filaments distribution measured in vivo
strainRate – in vivo measurement of contraction rate
deathRate – in vivo measurement of turnover rate
p – lamda
- Output:
res: the distribution of filament orientation in the following format:
rows = time evolution
columns = bins from 0 - 90 degrees
numbers = the number of filament within a bin of direction at a given timepoint
density: total filament density
2.4. Additional functions¶
Note
the following functions are used in multiple models to help build the model and/or analyze modeling results.
- modeling.extra.AsymmetryRiseSlope(in)¶
AsymmetryRiseSlope fit a straight line to the Asymmetry data from 61 - 90 seconds to measure asymmetry slope during that period.
- Parameters
in – the result of the simulation from either turnoverSimulator5 or FGFA modeling.
- Output:
in with an additional field “asySlope” to record asymmetry slope.
- modeling.extra.EstimateOrientation(filaments, nBorn)¶
EstimateOrientation first estimate the accumulative distribution function of a given distribution of filament orientation, and then calculate the orientation of new filaments based on the CDF.
- Parameters
filaments – the orientation of existing filaments.
nBorn – number of new filaments
- Output:
the orientation of new filaments.
- modeling.extra.EstimateOrientationV2(CDF, nBorn)¶
EstimateOrientationV2 generate the orientation of new filaments based on the orientation of existing filaments
- Parameters
CDF – accumulative distribution function for existing filaments
nBorn – the number of new filaments.
- Output:
out: the orientation of new filaments
- modeling.extra.filamentIntensityplateau(in)¶
filamentIntensityplatueau fit a straight line to the intensity data from 41 - 90 seconds to measure intensity slope during that period.
- Parameters
in – the result of the simulation from either turnoverSimulator5 or FGFA modeling.
- Output:
in with an additional field “plateau” to record intensity slope.