Work Description
Title: Code for simulating the formation of a binary fate pattern in response to mechanical stresses Open Access Deposited
Attribute | Value |
---|---|
Methodology |
|
Description |
|
Creator | |
Depositor | |
Contact information | |
Discipline | |
Funding agency |
|
Other Funding agency |
|
Keyword | |
Date coverage |
|
Citations to related material |
|
Resource type | |
Last modified |
|
Published |
|
Language | |
DOI |
|
License |
(2025). Code for simulating the formation of a binary fate pattern in response to mechanical stresses [Data set], University of Michigan - Deep Blue Data. https://doi.org/10.7302/44wm-j668
Relationships
Files (Count: 4; Size: 3.68 MB)
Thumbnailthumbnail-column | Title | Original Upload | Last Modified | File Size | Access | Actions |
---|---|---|---|---|---|---|
![]() |
code_for_simulating_finite_thick...e.zip | 2025-03-24 | 2025-03-24 | 3.62 MB | Open Access |
|
![]() |
solver_domain_wall_microposts.zip | 2025-03-24 | 2025-03-24 | 25.1 KB | Open Access |
|
![]() |
code_for_simulating_quarter_disk.zip | 2025-04-09 | 2025-04-09 | 23.7 KB | Open Access |
|
![]() |
ReadMe_2025-04-21_SIMULATION.txt | 2025-04-22 | 2025-04-25 | 9.96 KB | Open Access |
|
Date: 21 April, 2025
------------------------------------------------------------------------------------------------
Dataset Title: Code for simulating the formation of a binary fate pattern in response to mechanical stresses
------------------------------------------------------------------------------------------------
Dataset Contact: Hayden Nunley [email protected]
------------------------------------------------------------------------------------------------
Dataset Creator(s):
Name: Hayden Nunley
Email: [email protected]
Institution: University of Michigan Biophysics Program
ORCID: https://orcid.org/0000-0002-4634-9422
Name: David K. Lubensky
Email: [email protected]
Institution: University of Michigan Department of Physics and Biophysics Program
ORCID: https://orcid.org/0000-0002-4619-116X
------------------------------------------------------------------------------------------------
Funding: CMMI 1917304 (NSF), DGE 1256260 (NSF), DMR 2243624 (NSF), 597491-RWC and 1764421 (Simons Foundation/SFARI, NSF)
------------------------------------------------------------------------------------------------
Key Points:
- We proposed a mathematical model for an in vitro fate patterning process. In the model, highly contractile outer cells at the colony edge generate stresses in their neighbors and thus bias their fates. Since fate and contractility are related in the model, this amounts to a bidirectional coupling between mechanical stress and cell fate (/contractility).
- We wrote code for simulating this model for cell layers on a substrate composed of micro-posts (or a very thin continuous substrate). This code is for a 1D geometry, a quasi-1D stripe geometry, and a disc geometry.
- We wrote code for simulating this model for cell layers on a substrate of finite-thickness. This code is for a 1D geometry.
- In a particular limit of the model (called the domain wall limit), we can predict the fate pattern without direct simulation. We include code for this limit and compare the analytical results to direct simulation.
------------------------------------------------------------------------------------------------
Research Overview:
In a previous study (Xue et al. Nature Materials 2018), the authors showed that a key fate patterning event in vertebrate development can be reproduced in an in vitro stem cell culture. They further showed that this in vitro fate pattern seems to depend on mechanical signals rather than secreted chemical signals. In this follow-up study, a mathematical model of this process is proposed. The code in this deposit is for the simulation of this mathematical model in various cell layer geometries and substrate geometries. These geometries include a 1D cell layer, quasi-1D stripe geometry, disc geometry (all on a very thin substrate or a substrate composed of microposts) as well as a 1D cell layer on a finite-thickness substrate. Our model implies that the width of the outer fate domain varies non-monotonically with substrate stiffness, a prediction that we confirm experimentally.
------------------------------------------------------------------------------------------------
Methodology:
For the case of a cell layer bound to a substrate composed of microposts (or a very thin continuous substrate), we solve the equations for both fate and stress via finite-differences. We treat non-linear terms explicitly and linear terms implicitly in a first-order solver. For the case of a cell layer bound to a finite-thickness substrate, we use the methods developed in Marchetti et al. PRL 2012 to calculate the mechanical stress, for a given spatial pattern of active contraction. Specifically, we consider a one-dimensional cell layer of length L (L=400 μm for most of our colonies) lying parallel to the x axis and sitting on top of an elastic substrate occupying the region 0≤z≤h_s in the x-z plane. To solve for the dynamics of the fate variable w coupled to σ, we solve the equations for both fate and stress. Given some w profile, the stress σ is obtained as described above. Then, by using a first-order semi-implicit Backward Differentiation Formula (BDF) scheme, we treat the bistable fate driving and the linear bias of fate due to mechanical stress explicitly, while we treat the diffusion term implicitly. We compare our results to analytical results in the domain wall limit.
------------------------------------------------------------------------------------------------
Date Coverage: 2018-2024 (Date range includes dates of code development (2018-2021), and subsequent use of code for manuscript preparation (2021-2024)).
Instrument and/or Software specifications: code written in MATLAB
------------------------------------------------------------------------------------------------
There are three folders in this repository: code_for_simulating_finite_thickness_substrate.zip, solver_domain_wall_microposts.zip, and code_for_simulating_quarter_disk.zip.
code_for_simulating_finite_thickness_substrate.zip contains three folders: calculate_and_store_matrices, saved_matrices, and use_matrices_for_simulation
calculate_and_store_matrices contains the function (solve_finite_thickness_substrate.m) for calculating the integrals described in Section 6A of SI. See equation S118. This code is used to precompute matrices used for subsequent simulations. These calculations are costly.
saved_matrices stores the results of these integral calculations for certain colony and substrate conditions. The number in front of the first um specifies substrate thickness. L specifies colony diameter. (If not specified, then L = 400 um)
- saved_matrices/40_um/saved_matrix_hs_40.mat is for L = 400 um, substrate thickness 40 um
- saved_matrices/81_um/saved_matrix_hs_81.mat is for L = 400 um, substrate thickness 81 um
- saved_matrices/81_um_L_300_um/saved_matrix_hs_81_L_300.mat is for L = 300 um, substrate thickness 81 um
- saved_matrices/81_um_L_500_um/saved_matrix_hs_81_L_500.mat is for L = 500 um, substrate thickness 81 um
- saved_matrices/81_um_L_800_um/saved_matrix_hs_81_L_800.mat is for L = 800 um, substrate thickness 81 um
- saved_matrices/101_um/saved_matrix_hs_101.mat is for L = 400 um, substrate thickness 101 um
- saved_matrices/120_um/saved_matrix_hs_120.mat is for L = 400 um, substrate thickness 120 um
- saved_matrices/134_um/saved_matrix_hs_134.mat is for L = 400 um, substrate thickness 134 um
In use_matrices_for_simulation:
- solver_simple_model_domain_wall_1D.m is the function used for simulating fate pattern on a finite thickness substrate.
- final_form_stress_1D_finite_substrate.m is a helper function that computes the cell layer stress, given some active stress field
solver_domain_wall_microposts contains four folders: simple_domain_wall_calc_CONDITION, solve_for_u_vect_functions, solver_domain_wall_functions, stress_as_fcn_of_wall_posn
simple_domain_wall_calc_CONDITION contains only one function (solve_for_vnaught.m). This takes an input (w_mid, alpha, localization_length, nu, kN, ptilde) as well as sumstress
Use this to determine the value of sumstress for which f is zero (either by direct plotting or by using a MATLAB function to locate where the function equals zero).
solve_for_u_vect_functions contains only one function (solve_for_u_vect_disk.m). This is used to solve for radial substrate displacements u_r(r) in a disk geometry given some p_vect, localization_length, r0, number_of_spatial_steps, nu)
solver_domain_wall_functions contains three functions (solver_simple_model_domain_wall_1D_true.m, solver_simple_model_domain_wall_disk.m, solver_simple_model_domain_wall_stripe.m).
- solver_simple_model_domain_wall_1D_true.m is for solving for stress and w (fate) in a truly 1D cell geometry.
- solver_simple_model_domain_wall_disk.m is for solving for position of fate boundary, smooth stress at fate boundary, fate (w) in a cell layer in a disc geometry.
- solver_simple_model_domain_wall_stripe.m is for sigmaxx_vect, sigmayy_vect, smooth_stress, and w_vect in a quasi-1D cell layer in a stripe geometry (e_yy = 0).
stress_as_fcn_of_wall_posn contains two functions (move_domain_wall_1D.m, move_domain_wall_disk.m).
- move_domain_wall_1D estimates the non-dimensionalized smooth stress at the fate boundary (stress_at_boundary) -- as a function of fate boundary position -- for a cell layer in a stripe geometry. Note that this code can be used to generate plots as in Fig. S5A-C'.
- move_domain_wall_disk estimates the non-dimensionalized smooth stress at the fate boundary (stress_at_boundary) -- as a function of fate boundary position -- for a cell layer in a disc geometry. Note that this code can be used to generate plots as in Fig. S5D-F'.
code_for_simulating_quarter_disk.zip contains code for simulating fate patterning in a quarter disk (assuming corresponding symmetries that allow one to simulate only a quarter of the domain)
- solve_domain_wall_problem_2D_disk_quarter.m is the main function for simulating and saving results once every 60 time steps
- solve_general_contractile_disk_quarter_take2.m is a helper function which calculates the smooth stress field, which biases the fate.
------------------------------------------------------------------------------------------------
Related publication(s):
Nunley H, Xue X, Fu, J, Lubensky, DK. Generation of fate patterns via intercellular forces. BioRxiv 442205 [Preprint]. April 30, 2021 [cited 2025 Feb 20]. Available from: doi: https://doi.org/10.1101/2021.04.30.442205
Xue X, Sun Y, Resto-Irizarry A.M. et al. Mechanics-guided embryonic patterning of neuroectoderm tissue from human pluripotent stem cells. Nature Mater 17, 633–641 (2018). https://doi.org/10.1038/s41563-018-0082-9
Banerjee S, Marchetti MC. Substrate rigidity deforms and polarizes active gels. EPL (Europhysics Letters) 96, 28003 (2011). https://doi.org/10.1209/0295-5075/96/28003
Edwards CM, Schwarz US. Force Localization in Contracting Cell Layers, Physical Review Letters 107, 128101 (2011). https://doi.org/10.1103/PhysRevLett.107.128101
Banerjee S, Marchetti MC. Contractile Stresses in Cohesive Cell Layers on Finite-Thickness Substrates, Physical Review Letters 109, 108101 (2012). https://doi.org/10.1103/PhysRevLett.109.108101
------------------------------------------------------------------------------------------------
Use and Access:
This data set is made available under a Creative Commons Public Domain license (CC BY-NC 4.0).
------------------------------------------------------------------------------------------------
To Cite Data:
Nunley, H., Lubensky, D. K. Code for simulating the formation of a binary fate pattern in response to mechanical stresses [Data set], University of Michigan - Deep Blue Data. https://doi.org/10.7302/44wm-j668