CO₂ACT (CO₂-Amine Calorimetry and Thermodynamics) is a mechanistic thermodynamic and kinetic modeling framework for simulating aqueous CO₂–amine systems during titration and calorimetric experiments. The software predicts solution speciation, pH evolution, and reaction energetics by coupling acid–base equilibria, carbonate chemistry, amine protonation, carbamate formation, and mass and charge balance within a unified numerical framework. CO₂ACT simulates the injection-by-injection addition of aqueous CO₂ and supports the simulation and global fitting of experimental datasets, including pH titrations, isothermal titration calorimetry (ITC), and complementary spectroscopic measurements, enabling the estimation of equilibrium constants, enthalpies, and other thermodynamic parameters. Following parameter optimization, CO₂ACT provides profile likelihood analysis for confidence interval estimation and parameter identifiability using previously fitted parameter sets. The framework also includes a two-dimensional heatmap generator that leverages the simulation engine to predict total carbon capture and carbamate formation over user-defined parameter spaces. Designed to be extensible, CO₂ACT provides a platform for investigating CO₂ capture chemistries ranging from simple amino acids to multifunctional amines and more complex absorbent systems.
CO₂ACT is distributed as an interactive JupyterLab notebook that provides a graphical interface for thermodynamic simulations, parameter estimation, uncertainty analysis, and visualization of CO₂–amine systems. All analyses are performed through interactive widgets, allowing users to configure models and perform calculations without modifying the underlying source code.
- Launch JupyterLab and open the CO₂ACT notebook.
- Execute every notebook cell from top to bottom.
- Once initialization is complete, the graphical interface will appear automatically.
The notebook is organized into several analysis tabs that guide the complete workflow from experimental data fitting to uncertainty analysis and visualization.
A typical CO₂ACT analysis follows the sequence below:
- Load one or more experimental datasets.
- Select the appropriate fitting interface.
- Configure the thermodynamic model.
- Select the parameters to optimize.
- Run the nonlinear least-squares optimization.
- Evaluate parameter uncertainty using Profile Likelihood Analysis.
- Explore the fitted model using Heatmap Generation.
Although each module can be used independently, this workflow represents the recommended order of analysis.
CO₂ACT currently supports three experimental data types.
| Experimental Technique | Required Input |
|---|---|
| ITC | NITPIC integrated injection heats |
| pH titrations | Excel workbook containing pH vs. injection data |
| NMR | CSV file containing carbamate populations or raw peak integrals |
Example datasets are included in the examples/ directory.
The Fitting Interface is the primary analysis environment within CO₂ACT. It contains four independent fitting tabs that all operate using the same thermodynamic model.
- ITC Fit
- pH Fit
- NMR Fit
- Global Fit
Although each tab accepts different experimental data, they all follow the same workflow.
Begin by selecting the experimental dataset using the file browser.
Depending on the selected fitting tab, CO₂ACT imports either:
- integrated ITC heats,
- pH titration datasets, or
- NMR carbamate measurements.
Multiple experiments can be loaded simultaneously. Individual datasets may be enabled or disabled, allowing different combinations of experiments to be included in the optimization.
Example
A user may load three ITC experiments collected at pH 8.5, 9.5, and 10.5, disable one experiment containing poor-quality data, and simultaneously fit the remaining two datasets using a shared parameter set.
The model configuration section defines the chemistry that will be simulated.
Here users specify the molecular system and experimental conditions, including:
- active amine sites,
- initial concentrations,
- injection conditions,
- experimental temperatures,
- model assumptions, and
- dataset-specific settings.
These values define the system that CO₂ACT will simulate during optimization.
The parameter table lists every adjustable thermodynamic parameter available within the model.
For each parameter users can:
- include or exclude it from optimization,
- specify an initial value,
- define lower and upper optimization bounds, or
- keep the parameter fixed.
This allows both simple and highly constrained fitting strategies.
Example
A user may choose to optimize only:
pKaαpKaεlogKαlogKε
while fixing all reaction enthalpies to literature values.
Alternatively, every equilibrium constant and reaction enthalpy can be optimized simultaneously during a global fit.
Once the datasets and adjustable parameters have been selected, the optimization is started using the corresponding Run Fit button.
CO₂ACT repeatedly simulates the selected experiments and minimizes the difference between simulated and experimental data using nonlinear least-squares optimization.
Optimization progress is displayed interactively within the notebook.
After convergence, CO₂ACT automatically reports:
- optimized parameter values,
- standard errors,
- confidence intervals,
- parameter correlation matrices,
- residual analyses,
- goodness-of-fit statistics,
- simulated versus experimental comparison plots, and
- publication-quality figures.
The optimized parameter set is retained within the notebook and is automatically used by the Profile Likelihood and Heatmap interfaces.
The ITC Fit tab is used to fit integrated injection heats generated by NITPIC.
Multiple calorimetric experiments may be fitted simultaneously, allowing experiments collected under different initial conditions to constrain a common thermodynamic parameter set.
The pH Fit tab fits pH titration experiments measured during sequential CO₂ addition.
Multiple titration curves may be combined into a single optimization to improve parameter estimation.
The NMR Fit tab fits experimentally determined carbamate populations obtained from NMR spectroscopy.
Both processed carbamate fractions (f_alpha_carb, f_eps_carb, and f_double_sites) and raw peak integrals (a, e, and ae) are accepted.
The Global Fit tab combines ITC, pH, and NMR datasets into a single optimization.
All selected experiments contribute simultaneously to the objective function, allowing one thermodynamic parameter set to satisfy every experimental observation.
After completing a successful fit, the optimized parameters can be evaluated using the Profile Likelihood interface.
This interface automatically imports the most recent fitted parameter set.
To generate a profile:
- Select the parameter to analyze.
- Define the profiling range.
- Choose the number of profile points.
- Run the profile calculation.
For each point in the selected range, CO₂ACT fixes the chosen parameter while reoptimizing every remaining adjustable parameter. The resulting profile likelihood curve is used to determine confidence intervals and evaluate parameter identifiability.
Example
After fitting an ITC dataset, a user may profile logKε to determine whether the experimental data uniquely constrain its value or whether multiple values produce statistically equivalent fits.
Each profile can be exported as both publication-quality figures and numerical datasets.
The Heatmap interface is used to visualize model predictions using either manually defined parameters or parameters obtained from a previous fit.
Unlike the fitting interfaces, no optimization is performed. Instead, CO₂ACT repeatedly evaluates the thermodynamic model across a user-defined parameter space.
To generate a heatmap:
- Select the variables defining the x- and y-axes.
- Specify the range and resolution of each variable.
- Choose the thermodynamic property to visualize.
- Generate the heatmap.
For every point in the selected parameter space, CO₂ACT performs a complete equilibrium simulation before assembling the results into a two-dimensional heatmap.
Available outputs include:
- total CO₂ capture,
- carbamate concentration,
- carbonate speciation,
- solution pH,
- reaction enthalpies,
- molecular populations, and
- other calculated thermodynamic observables.
Example
A user may generate a heatmap showing predicted CO₂ capture capacity as a function of pH and logKα, or visualize carbamate formation over a range of pH values and amine concentrations.
Generated figures and numerical datasets can be exported directly for publication or further analysis.
