DOI: 10.5061/dryad.37pvmcvqx
title: Data for: Direct measurement of dynamic attractant gradients reveals breakdown of the Patlak-Keller-Segel chemotaxis model

description: 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.
description: See Methods in the paper for details. These are density
 measurements of <em>E. coli </em>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.
description: MATLAB is required. 
description: ## 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 &lt;&lt;&lt;&gt;&gt;&gt; for the
 main manuscript figures and
 &lt;&lt;&lt;&gt;&gt;&gt; for the Supplementary
 Information. Here @ is the order of the figure as they appear in the
 published paper. 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