Skip to content

Codes corresponding to work in manuscript "Minimally Sufficient Experimental Design using Identifiability Analysis"

Notifications You must be signed in to change notification settings

jgevertz/Minimal_Experimental_Design

Repository files navigation

Minimal_Experimental_Design

Data and code associated with manuscript "Minimally Sufficient Experimental Design using Identifiability Analysis"

  • Generate simulated data shown in Figure 4A: Run generate_TO_data.m in Generate_TO_Data folder. This step can be skipped if you are only interested in running the codes that use the script output, as the output is already saved in Generate_TO_Data/TO_sim_data.mat
  • Generate profile likelihood curves when %TO in the TME data is available each day (Figure 4B-C): Run pembro_fit_and_profiles.m. This step can also be skipped if you’re only interested in running the minimally sufficient experimental design codes, as the output is already saved in fit_profiles.mat.
  • Explore if a single measurement of %TO in the TME is sufficient to identify model parameters (Figure 5): Run profiles_one_time_pt_parallel.m in One_Day_Protocol folder. Note this does require access to four parallel pools, which are typically available on all machines. The functions needed to run the executable file are all embedded in the main script. The output of running this code is saved in profiles_sample_one_pt.mat, so the output can also be directly analyzed without running this code.
  • Quantify predictive challenges of model over plausible parameter sets for a set of 1-day protocols (Figure 6): Run PD_predictions_across_paramters.m in One_Day_Protocol folder.
  • Further analysis on practical identifiability of parameters using a single measurement of %TO in TME (Figure S2): Run additional_plots.m in One_Day_Protocol folder.
  • Explore if 2 measurements of %TO in TME is sufficient to identify model parameters (Figure S3): Run profiles_2timePtsAll_parallel.m in Two_Day_Protocols folder. Note the number of parallel pools is set to run on a high performance cluster. The number can be readily reduced, though I also recommend reducing the resolution of the profile likelihood curves; that is, decreasing num_pts on line 55 down from its default value of 50. The output of running this code is saved in profiles_sample_Npts.mat, so the output can also be directly analyzed without running this code.
  • Further analysis of 2-day protocols that result in practically identifiable parameters (Figure 7A-C): Run analyze_samples.m, with path on line 30 set to ‘Two_Day_Protocols/’
  • Quantify predictive consistencies of model over plausible parameter sets associated with the identifiable 2-day protocols (Figure 7D-F): Run PD_predictions_across_parameters_identifiable.m in Two_DayProtocols folder.
  • Explore if 3 measurements of %TO in TME is sufficient to identify model parameters (Figure S4): Run profiles_sample_N_timePts_parallel.m in Three_Day_Protocols_Subset/ folder. Note the number of parallel pools is set to run on a high performance cluster. The number can be readily reduced, though I also recommend reducing the resolution of the profile likelihood curves; that is, decreasing num_pts on line 60 down from its default value of 50. Further, a user can run the code for less than 1/3 of the possible number of protocols (line 76). The output of running this code is saved in profiles_sample_Npts.mat, so the output can also be directly analyzed without running this code.
  • Further analysis of 3-day protocols that result in practically identifiable parameters (Figure 8A-D): Run analyze_samples.m, with path on line 30 set to ‘Three_Day_Protocols_Subset/’.

About

Codes corresponding to work in manuscript "Minimally Sufficient Experimental Design using Identifiability Analysis"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages