Data for: Direct measurement of dynamic attractant gradients reveals breakdown of the Patlak-Keller-Segel chemotaxis model
Data files
Jan 02, 2024 version files 1.10 GB
-
All_Data_Processed_and_Raw.zip
1.10 GB
-
README.md
12.72 KB
Abstract
Chemotactic bacteria not only navigate chemical gradients but also shape their environments by consuming and secreting attractants. Investigating how these processes influence the dynamics of bacterial populations has been challenging because of a lack of experimental methods for measuring spatial profiles of chemoattractants in real-time. Here, we use a fluorescent sensor for aspartate to directly measure bacterially generated chemoattractant gradients during collective migration. Our measurements show that the standard Patlak-Keller-Segel model for collective chemotactic bacterial migration breaks down at high cell densities. To address this, we propose modifications to the model that consider the impact of cell density on bacterial chemotaxis and attractant consumption. With these changes, the model explains our experimental data across all cell densities, offering new insight into chemotactic dynamics. Our findings highlight the significance of considering cell density effects on bacterial behavior and the potential for fluorescent metabolite sensors to shed light on the complex emergent dynamics of bacterial communities.
README
Data for: Direct measurement of dynamic attractant gradients reveals breakdown of the Patlak-Keller-Segel chemotaxis model
Data for the paper:
Direct measurement of dynamic attractant gradients reveals breakdown of the Patlak-Keller-Segel chemotaxis model
Authors
Trung V. Phan, Henry H. Mattingly, Lam Vo, Jonathan S. Marvin, Loren L. Looger, Thierry Emonet
Abstract
Chemotactic bacteria not only navigate chemical gradients but also shape their environments by consuming and secreting attractants. Investigating how these processes influence the dynamics of bacterial populations has been challenging because of a lack of experimental methods for measuring spatial profiles of chemoattractants in real-time. Here, we use a fluorescent sensor for aspartate to directly measure bacterially generated chemoattractant gradients during collective migration. Our measurements show that the standard Patlak-Keller-Segel model for collective chemotactic bacterial migration breaks down at high cell densities. To address this, we propose modifications to the model that consider the impact of cell density on bacterial chemotaxis and attractant consumption. With these changes, the model explains our experimental data across all cell densities, offering new insight into chemotactic dynamics. Our findings highlight the significance of considering cell density effects on bacterial behavior and the potential for fluorescent metabolite sensors to shed light on the complex emergent dynamics of bacterial communities.
Methods
These data are density measurements of E. coli cells migrating as a band along a straight microfluidics channel as they consume and chase aspartate. Both the cell density and the concentration of aspartate are measured using fluorescent microscopy. The data was analyzed using MATLAB. Codes used to process the data are provided. See the Methods section of the paper for full details.
Funding
National Institute of General Medical Sciences, Award: R01GM138533
National Institute of General Medical Sciences, Award: F32GM131583
Description of the data folders
There are four folders, \Processing_Raw_Data\, \Data_to_Figure\, \A_Travelling_Wave_Movie\, and \Uncertainty_Analysis\ that contain data and MATLAB codes used to process them as described below:
folder \Processing_Raw_Data\
This folder contains all the raw data in the subfolder \AllData\ as well as additional calibration data in subfolder \Addition_Data\.
- Processing_Data.m (MATLAB code): Processes the data taken from the raw data folders, fit the data then give you figures that contain all the information about the bacteria wave experiments used in the main manuscript and the Supplementary Information. This code does not need any input argument. That code also creates an AllProcessingData.mat file that stores all the processed data right before doing the fit. This code calls subroutines (.m files) which are provided in the same directory.
- AllProcessingData_Make.m (MATLAB code): run this code to only generate the file AllProcessingData.mat.
- AllProcessingData_Plot.m (MATLAB code): Run this code if you just want to access the processed data and analyze it. It will load AllProcessingData.mat and then do the fitting and make the plots.
The best way to access the processed data is to open the MATLAB AllProcessingData.mat in MATLAB. This gives access to the following key variables:
- A_list_EXT (4 x 6001 double) , A_list_HIGH (5 x 6001 double), A_list_MID (9 x 6001 double), A_list_LOW (6 x 6001 double), which contains the aspartate profiles for the individual experiments grouped by whether the cell density was very high, high, medium or low, respectively. Each file consiste of mutliple rows of 6001 double values numbers, one raw per independent experiments. The number of experiment in each is indicated by the first number in parenthesis above.
- B_list_EXT (4 x 6001 double) , B_list_HIGH (5 x 6001 double), B_list_MID (9 x 6001 double), B_list_LOW (6 x 6001 double), same but for bacteria density
- C_list_EXT (1 x 4 double) , C_list_HIGH (1 x 5 double), C_list_MID (1 x 9 double), C_list_LOW (1 x 6001 double) contain the wave speeds for each case
Finally in the same folder there are the following additional .mat files:
- GFP_val_all.mat: This give the average value and standard deviation of all asp signal intensity for different microfluidic device when fill with the 100uM asp concentration media we use in our wave experiments (intermediate file not meant to be directly interfaced with)
- Plot_Sample_Data.mat: This contains the progression data in the co-moving frame of the wave, on how the bacteria density and the asp signal intensity change with time (intermediate file not meant to be directly interfaced with)
- SigmaRHS.mat: This contains the uncertainty data for the best fit model of the asp and bacteria dynamics, for both the original Keller-Segel and our proposed modification (intermediate file not meant to be directly interfaced with)
folder \Processing_Raw_Data\AllData\
The raw data is stored in individual subfolders organized by date. They contain the raw data and pre-processed data as well as the MATLAB code to do that pre-processing.
The original pre-processed data in each of these folders are StepA.mat. To access that raw data just open that file in MATLAB. It will give you the following variables:
- delta_t (double): the time interval betwen time frames in sec
- x (1 x LENGTH double): x-coordinates vector or length LENGTH which typically is on the order of 30,000.
- GFPRaw (NTime x LENGTH): GFP profiles (aspartate) averaged over the width of the channel. Each line is a different time point. NTime here is the number of time points
- RFPRaw (NTime x LENGTH): RFP profiles (cell density) averaged over the width of the channel. Each line is a different time point. NTime here is the number of time points.
You can run the MatLab codes in the same folder in the following order to analyze and redo the initial pre-processing (smoothing spline):
- StepB_FindPeaksPosition.m
- StepD_CoMovingFrame.m
- StepE_SplineFitAB.m
- Step01_SplineFit.m
- Step02_ConstantDbChi.m
- Step05_CHiBFunc.m
These file do not take any arguments as input and generate .mat files with the same names. These intermediate files are not meant to be directly interfaced with.
- StepB.mat
- StepD.mat
- StepE_SplineFitAB.mat
- Step01_SplineFit.mat
- Step02_ConstantDbChi.mat
- Step05_ChiBFunc_k=9.mat
Finally there are the following two files, Acquisition.mat use for stitching frame together and Memo_List.mat to do a mock-fit for the asp dynamics of Keller-Segel (which we use to check if the list of codes above is running properly in StepE_SplineFitAB.m):
- Acquisition.mat: contains info about the acquisition times and the FOV size:
- Acquisition_Time_in_Sec (2 x 46 double) : list of acquisition times of the individual frames that are later stitched together.
- FoV_Size_in_um (double): size of the field of view in uM
- Memo_List.mat:
- AsSel (3501 x 1 double): The estimated asp concentration in uM at a frame of interest, after smooth.
- BsSel (3501 x 1 double): The bacteria density in OD at a frame of interest, after smooth.
- Estimated_RocSel (3501 x 1 double): Estimated rate of change of bacteria density at a frame of interest, in the lab frame.
- dBdtSel (3501 x 1 double): Estimated rate of change of bacteria density at a frame of interest, in the co-moving frame, which can be shown to be very small (negligible).
- zSel (3501 x 1 double): The range of co-moving position (which contains the peak part of the wave) that we focus on doing the fit (from measurement data to proposed models)
folder \Processing_Raw_Data\Addition_Data\
This folder only contains one file RFP_OD6_Lam.mat which when opened in MATLAB gives you two variables used for the calibration of bacteria density:
- RFP_blank_int: The raw RFP intensity inside a microfluidic device with no bacteria
- RFP_ints (10 x 2 double): The raw RFP intensity inside 10 different microfluidic devices, each measured at 2 different locations, filled with 6OD density bacteria.
folder \Data_to_Figure\
Contains the MatLab codes for generating the figures are <<<
You will also find the .svg files for the figures (the product of the MatLab codes mentioned above). The labeling scheme is Fig@_R#C$.svg for the figures in the main manuscript and FigS@_R#C$.svg for the figures in the Supplementary Information, where @ is the order of the figure as they appear, # is the row-position and $ is the column position.
These MATLAB codes load the following processed data files:
- Asp_Calibration_New.mat: Data of GFP signal calibration of Asp at different concentrations, using the same microfluidic devices.
- Asp_Glu_Calibration_newAspRep.mat: Data of GFP signal calibration of Asp and Glu concentrations, using the same microfluidic devices.
- Avg_simdata_diversity.mat: Simulation data of bacteria population with phenotypic diversity. (intermediate file not meant to be directly interfaced with)
- Avg_simdata_no_div.mat: Simulation data of bacteria population with no phenotypic diversity. (intermediate file not meant to be directly interfaced with)
- Consume_Unc_Analysis.mat: The data of uncertainties in our measurements and in our fitting models, for the Asp dynamics. (intermediate file not meant to be directly interfaced with)
- Fig2.mat: All data needed in plotting Figure 2. (intermediate file not meant to be directly interfaced with)
- Fig3+4+5.mat: All data needed in plotting Figure 3, 4, and 5. (intermediate file not meant to be directly interfaced with)
- FigS3.mat: All data needed in plotting Figure S3. (intermediate file not meant to be directly interfaced with)
- FigS4.mat: All data needed in plotting Figure S4. (intermediate file not meant to be directly interfaced with)
- NEW_Bac_RFP_Calib.mat: Data of RFP signal calibration of bacteria at different densities.
- Plot_Sample_Data.mat: All data needed in plotting Figure S6. (intermediate file not meant to be directly interfaced with)
- RoC_Unc_Analysis.mat: The data of uncertainties in our measurements and in our fitting models, for the bacteria dynamics. (intermediate file not meant to be directly interfaced with)
- Spline_Derivative_Unc_Est.mat: : The data of uncertainties estimated for our spline-fit. (intermediate file not meant to be directly interfaced with)
folder \A_Travelling_Wave_Movie\
Contains the raw tiff stacks of bacteria and aspartate reporter signal profiles, Bac_Raw.tiff and AspRep_Raw.tiff. After subtracting the background fluorescent, rotating them so that the long channel is oriented horizontally, cropping only the relevant part, adjusting the contrast, then coloring the bacteria profile red and the aspartate reporter signal profile green, we get the Bac_Processed.tiff and AspRep_Processed.tiff files
- Bac_Raw.tiff and AspRep_Raw.tiff: raw tiff stacks of bacteria and aspartate reporter signal profiles.
- Bac_Processed.tif and AspRep_Processed.tif: files in which the frames are selected and assembled to create Fig. 1C as shown in the main manuscript.
- A_Travelling_Wave_Movie.mp4: movie made of these two files, stamped with real-time.
folder \Uncertainty_Analysis\
Contain the codes to analyze uncertainties of measured data and best-fit model data, also with those data.
- MSE_Calc.m: Calculate the uncertainties of measured data, save as SigmaRHS.mat.
- SigmaLHS_AspDyn.m: Calculate the uncertainties of best-fit model for Asp dynamics, save as Consume_Unc_Analysis.mat.
- SigmaLHS_BacDyn.m: Calculate the uncertainties of best-fit model for bacteria dynamics, save as RoC_Unc_Analysis.mat.
These codes load the following processed data files:
- AllProcessingData.mat: Contain all the measured data. (intermediate file not meant to be directly interfaced with)
- Consume_Unc_Analysis.mat: The data file produced by SigmaLHS_AspDyn.m
- Fig2.mat: Contain all the Keller-Segel best-fit model data. (intermediate file not meant to be directly interfaced with)
- Fig3+4+5.mat: Contain all the best-fit model data for the modified Keller-Segel model we proposed. (intermediate file not meant to be directly interfaced with)
- RoC_Unc_Analysis.mat: The data file produced by SigmaLHS_BacDyn.m.
- SigmaRHS.mat: The data file produced by MSE_Calc.m
Methods
See Methods in the paper for details. These are density measurements of E. coli cells migrating as a band along a straight microfluidics channel as they consume and chase aspartate. Both the cell density and the concentration of aspartate are measured using fluorescent microscopy. The data was analyzed using MATLAB. Raw data, processed data and codes used to process the data are provided. See the Methods section of the paper and README file located with the data.
Usage notes
MATLAB is required.