This repository contains computational models for understanding zip length of depolymerization through a mechanistic modeling lens. The work compares two computational approaches to analytical expressions:
- Kinetic Monte Carlo (KMC)
- Method of Moments (MoM)
- Boyd (1959)
Title: Understanding polymer zip length through the lens of mechanistic modeling
DOI: https://doi.org/10.1021/acs.macromol.6c01473
-
spedup_cpp_files/— KMC source code for simple mechanismsmain.cpp,reaction_functions.cpp/h,save_variables.cpp/h— Core simulation engine in C++17Makefile— Compilation instructions (requires g++)params.inp— Temperature-dependent kinetic parameters (A, Ea for I/D/T/SR reactions)T_260/— Simulations at multiple DPn values (100, 150, ..., 4000) for scaling analysis
-
polyME_cpp_files_conv/— KMC source code for modeling polyME depolymerizationrun_conv_4_2_26/— Simulation outputs at three conditions (T=250°C/300°C, ρ=5/25 g/L)no_sr_run_conv_4_2_26/— Control runs without side reactions
T260/run400/— MoM ODE solutions for comparison with KMC at DPn=400
plot_figures.ipynb— Jupyter notebook generating all publication figures (Main Figs 2–6 + SI Figs S3–S8)plot_helpers.py— Data loading and processing functionsread_data()— Loads KMC CSV outputs (time_based_data, zip_length, chain_weights, params)process_data()— Calculates derived quantities (radical concentrations, Mn, zip length corrected values)
presentation.mplstyle— Matplotlib style file for publication-quality figuresfig_pdfs/— Output directory for generated figures
radical_KMC_runs/— Output directory for Scheme 2 radicalsrs_methods_all_dpn_og_v*.csv— Comprehensive parameter search results for Scheme 1eci_summary_with_plots.csv— Comprehensive parameter search results for Scheme 2
Python: 3.8 or higher
Dependencies: pandas numpy matplotlib scipy scikit-learn jupyter
Compiler: g++ with C++17
Compile:
cd cpp_file_src
makeAll publication figures are generated from a single notebook:
Run cells sequentially to generate:
- Figure 2 — Model comparison (KMC vs MoM) at DPn=400
- Figure 3 — Scaling with initial chain length (DPn = 100, 400, 2000)
- Figure 4 — Parameter space exploration (KMC + ECI data)
- Figure 5 — ECI special cases across DPn values
- Figure 6 — Best-fit kinetics at three conditions (T, ρ variations)
- Figures S3–S8 — Supplementary analyses
-
Modify parameters in
kmc_src/polyME_cpp_files_conv/params.inp -
Compile:
cd kmc_src/polyME_cpp_files_conv make -
Run (example):
mkdir -p run_custom && cd run_custom cp ../params.inp ../program . ./program
Generates:
time_based_data.csv,zip_length.csv,chain_weights_*.csv -
Analyze with
plot_helpers.read_data()in your script
-
KMC Outputs — CSV time-series for key conditions (T=250/300°C, ρ=5/25 g/L)
time_based_data.csv— Time evolution: Mn, conversion, radical countszip_length.csv— Detected backbiting events: zip length, occurrence timechain_weights_*pct_conversion.csv— Molecular weight snapshots at conversion milestones
-
Parameter Exploration — Summary CSV files with computed metrics across parameter space
Extended simulation data (all DPn, all dispersities) available upon request. Contact authors for:
- Full
spedup_cpp_files/T_260/outputs - ECI parameter sweep raw data
- All Method of Moments results
MIT License
- Code Author(s): Shivani Kozarekar, Dachey Lin (PI: Linda Broadbelt)
- Affiliation: Northwestern University, Department of Chemical and Biological Engineering
- Contact: shivanikozarekar2026@u.northwestern.edu
If you use this code or data, please cite:
@article{10.1021/acs.macromol.6c01473,
author = {Kozarekar, Shivani S. and Lin, Dachey and Deshmukh, Gaurav and Hu, Qixuan and Ogunfowora, Lawal and Wu, Pengfei and Savoie, Brett and Dou, Letian and Gao, Hanyu and Broadbelt, Linda J.},
title = {Understanding Polymer Zip Length through the Lens of Mechanistic Modeling},
journal = {Macromolecules},
year = {2026},
month = {09},
}