From 05e41f596488c12244994585c73d3d15d334e7cd Mon Sep 17 00:00:00 2001 From: "Cody, Jonathan William" Date: Mon, 9 Jan 2023 10:38:12 -0600 Subject: [PATCH] Update README.md --- README.md | 59 +++++++++++++++++++++++++++++++++---------------------- 1 file changed, 36 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index 5e71822..bceb035 100644 --- a/README.md +++ b/README.md @@ -3,41 +3,54 @@ Jonathan W. Cody This repository contains all the code needed to replicate the following journal article, soon to be submitted to PLoS Computational Biology. MATLAB R2018b or later is required. -"Mathematical modeling indicates that regulatory inhibition of CD8+ T cell cytotoxicity can limit efficacy of IL-15 immunotherapy in cases of high pre-treatment SIV viral load" -Article Authors: Jonathan W. Cody, Amy L. Ellis-Connell, Shelby L. O’Connor, Elsje Pienaar +Cody JW, Ellis-Connell AL, O’Connor SL, Pienaar E. "Mathematical modeling indicates that regulatory inhibition of CD8+ T cell cytotoxicity can limit efficacy of IL-15 immunotherapy in cases of high pre-treatment SIV viral load." -To replicate the article, unzip the entire repository into a folder and run the code in the following order: +========================= +To replicate the article, unzip the entire repository into a folder and run the code in the following order below. Steps #1,2 are lengthy (~1 week each). Results of step #3 are included in the repository in the file 'N803_MCMC.mat', which allows you to skip to plotting (steps #4,5). - 1. "main_shared_calibration_2022_08_18.m" - 2. "main_singles_calibration_2022_09_25.m" - 3. "N803_collector_2.m" - 4. "N803_plotter_2.m" - 5. "N803_plotter_2_parameters.m" - -The following is list of files (INCOMPLETE) + 1. "main_shared_calibration_2022_08_18.m" (runs MSLS and MCMC for both cohorts with parameters shared) + 2. "main_singles_calibration_2022_09_25.m" (repeat with parameters not shared) + 3. "N803_collector_2.m" (stores model outputs, parameters, and initial conditions from thinned MCMC sample) + 4. "N803_plotter_2.m" (creates all time-course plots) + 5. "N803_plotter_2_parameters.m" (creates parameter violin plots) -'N803_model_1.m' = single-compartment model for article 1 +========================= +The repository containts the following data (MATLAB .mat files): -'N803_model_2.m' = single-compartment model for article 2 +"N803_DataSet_1.mat" (Cohort 1 calibration data) +Source: Ellis-Connell AL, Balgeman AJ, Zarbock KR, Barry G, Weiler A, Egan JO, et al. "ALT-803 Transiently Reduces Simian Immunodeficiency Virus Replication in the Absence of Antiretroviral Treatment." Journal of virology. 2018;92(3). -'N803_shared.m' = calls 'N803_model_2.m', but first solves for ICs and shared parameters to start from two fixed points +"N803_DataSet_2.mat" (Cohort 2 calibration data, validation data) +Source: Ellis-Connell AL, Balgeman AJ, Harwood OE, Moriarty RV, Safrit JT, Weiler AM, et al. "Control of Simian Immunodeficiency Virus Infection in Prophylactically Vaccinated, Antiretroviral Treatment-Naive Macaques Is Required for the Most Efficacious CD8 T Cell Response during Treatment with the Interleukin-15 Superagonist N-803." Journal of virology. -'N803_single.m' = calls 'N803_model_2.m', but first solves for ICs and parameters to start from one fixed point +Webb_DataSet.mat" (validation data) +Source: Webb GM, Li S, Mwakalundwa G, Folkvord JM, Greene JM, Reed JS, et al. "The human IL-15 superagonist ALT-803 directs SIV-specific CD8(+) T cells into B-cell follicles." Blood advances. 2018;2(2):76-84. -'Analyzer' folder: +'N803_MCMC.mat' (model parameter values, initial conditions, and outputs underlying all article figures) - -> 'calibrator.m' = calibrates model parameters via multi-start local-search +========================= +The repository containts the following code (MATLAB .m functions): - -> 'calibrator_plot.m' = plots results from calibrator.m +'N803_model_2.m' (solves ODE model) - -> 'costFun_NLL' = model cost calculator (NLL,SSE,MSE w/additional options) [used with 'calibrator.m'] +'N803_shared.m' (calls 'N803_model_2.m', but first solves for ICs and shared parameters to start from two fixed points) - -> 'looper.m' = loops through and operates on a structure array [used by 'calibrator.m'] +'N803_single.m' (calls 'N803_model_2.m', but first solves for ICs and parameters to start from one fixed point) - -> 'MCMCsampler.m' = performs uncertainty quantification via markov chain monte carlo [needs result file from 'calibrator.m'] +In 'Analyzer' folder: - -> 'performPT.m' = parallel tempering MCMC algorithm [called by 'MCMCsampler.m'] +'calibrator.m' = calibrates model parameters via multi-start local-search - -> 'prepper.m' = normalizes a data set and provides several useful outputs [used with 'calibrator.m'] +'calibrator_plot.m' = plots results from calibrator.m - -> 'sampler.m' = samples a parameter space via latin hypercube sampling [used by 'calibrator.m'] +'costFun_NLL' = model cost calculator (NLL,SSE,MSE w/additional options) [used with 'calibrator.m'] + +'looper.m' = loops through and operates on a structure array [used by 'calibrator.m'] + +'MCMCsampler.m' = performs uncertainty quantification via markov chain monte carlo [needs result file from 'calibrator.m'] + +'performPT.m' = parallel tempering MCMC algorithm [called by 'MCMCsampler.m'] + +'prepper.m' = normalizes a data set and provides several useful outputs [used with 'calibrator.m'] + +'sampler.m' = samples a parameter space via latin hypercube sampling [used by 'calibrator.m']