How to execute the code for the research article: "Decoding stimulus-specific regulation of promoter activity of p53 target genes". The folder "code" contains the Python scripts that process the measurement files in "workspace", execute Bayesian inference with MCMC for the system parameters, and create the plots. The simplest way to execute the whole pipeline from the measurement files to the final plots is by executing: python run_all.py all in this folder. Otherwise, run_all.py can be executed with a specific config file from this folder, e.g. python run_all.py --config="process_posterior_samples.ini" all This will run the generator for all plots from the samples obtained by the MCMC runs. The config files available are all.ini [DEFAULT] process_measurements.ini run_mcmc_40k.ini process_posterior_samples.ini and contain an ordered list of scripts to be executed with their command-line options that should be set upon execution. The shortcut "all" is used above. It causes a scan of the folder "workspace/measurement/excel", from which all available IDs are detected, for which the scripts listed in the configuration file are executed. An ID is a combination of "{stimulus}_{replicate}_{gene}" and subsumes measurement data for all time-points of this combination. Scripts are called sequentially and each script is executed for each ID first before the next script is used. Therefore, the way by which "run_all.py" is executed can be used to manipulate the degree of concurrency w.r.t. the IDs. It is only recommended to call "run_mcmc_40k.ini" in concurrently for different IDs. Examples of calls are given below for some sample IDs. [sequential run] python run_all.py --config="run_mcmc_40k.ini" "5FU_n_2, 5FU_n_3, E_low_1, IR_n_1, UV_6J_1, Nut_n_2" OR SIMPLY CALL (if there are no others) python run_all.py --config="run_mcmc_40k.ini" all [somewhat concurrent run] python run_all.py --config="run_mcmc_40k.ini" "5FU_n_2, 5FU_n_3, E_low_1" python run_all.py --config="run_mcmc_40k.ini" "IR_n_1, UV_6J_1, Nut_n_2" [fully concurrent run] python run_all.py --config="run_mcmc_40k.ini" "IR_n_1" python run_all.py --config="run_mcmc_40k.ini" "UV_6J_1" python run_all.py --config="run_mcmc_40k.ini" "Nut_n_2" python run_all.py --config="run_mcmc_40k.ini" "5FU_n_2" python run_all.py --config="run_mcmc_40k.ini" "5FU_n_3" python run_all.py --config="run_mcmc_40k.ini" "E_low_1" which configuration is the best choice depends on your machine and how you intend to use it during the run. For a fully dedicated machine with a fair amount of cores, a fully concurrent run should overall be fastest. This is due to some time-points taking much longer than others, which significantly impacts runtime in sequential runs, leaving some cores under-utilized in systems with a fair amount of cores. The Python version used was 3.11. and the code that generated the results of the paper was executed on a Gentoo/Linux machine.