Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Supporting data for "Machine Learning-Based Prediction of Phase Equilibria and Interfacial Properties of Multi-component CO2 Mixtures with Impurities: Application to CO2 Transportation"

Darshan Raju, Roar Skartlien, Mahinder Ramdin, Thijs J. H. Vlugt

This repository contains the raw and processed data, the trained machine-learning models, and their predictions supporting the above manuscript. It is the archive referred to in the Data availability statement of the paper.


Contents

BINARY_INTERACTION_PARAMETERS/
└── KIJ/                        experimental Pxy data used to fit the
                                temperature-dependent binary interaction
                                parameters kij(T), one folder per binary pair
                                (23 pairs, Excel format)

MACHINE_LEARNING/
├── DATASET/
│   ├── dataset_data_driven.csv     19 361 rows x 50 columns
│   └── dataset_wsd_residual.csv    41 737 rows x 55 columns
├── TabPFN/
│   ├── P_bubble/                   bubble-point pressure
│   ├── P_dew/                      dew-point pressure
│   ├── gamma/                      interfacial tension
│   └── interfacial_thickness/      interfacial thickness (L10_90)
│       each containing  TabPFN_<target>_model.joblib
│                        TabPFN_<target>_predictions.csv
└── SVGP/
    └── SVGP_residual_model.pt      stochastic variational GP residual model
                                    for the hybrid WSD + SVGP interfacial-tension
                                    correction

Datasets

Both datasets were generated with the PCP-SAFT equation of state coupled to classical density functional theory (cDFT), for multi-component CO2-rich mixtures containing H2, N2, Ar, CH4, O2, CO and H2S.

dataset_data_driven.csv — used to train the data-driven models (RF, SVR, XGBoost, TabPFN). Columns: state variables (temperature, pressure), feed composition (z_*), critical and reduced properties (Tc, Pc, Tr, Pr), the four target properties (P_bubble, P_dew, gamma, interfacial_thickness), coexisting-phase densities and compositions (liquid_density, vapor_density, x_*, y_*), interfacial enrichment (E_*), pure-CO2 reference quantities (gamma0_CO2, rhoL0_CO2, rhoV0_CO2, Tc_CO2, Psat_CO2) and source_id, which identifies the feed composition (see Table 2 of the main text).

dataset_wsd_residual.csv — used to train the residual-correction models for the semi-empirical Winterfeld-Scriven-Davis (WSD) interfacial-tension correlation [P. H. Winterfeld, L. E. Scriven and H. T. Davis, AIChE J. 1978, 24, 1010-1014]. Contains the same state and composition variables plus per-component bulk densities (rhoL_*, rhoV_*), the WSD baseline in its corrected and uncorrected forms (gamma_wsd, gamma_wsd_UC), and the corresponding cDFT-minus-WSD residuals (gamma_cDFT_minus_wsd_corrected, gamma_cDFT_minus_wsd_uncorrected) that form the regression target.


Trained models

TabPFN

One model per target property, with the hyperparameters obtained from the optimization reported in the Supporting Information. All four use TabPFN model version v2.5. the checkpoint variant and the architecture selected by the hyperparameter optimization differ per target:

Target Architecture max_depth TabPFN checkpoint
P_bubble TabPFNRegressor tabpfn-v2.5-regressor-v2.5_low-skew.ckpt
interfacial_thickness TabPFNRegressor tabpfn-v2.5-regressor-v2.5_small-samples.ckpt
P_dew DecisionTreeTabPFNRegressor 4 tabpfn-v2.5-regressor-v2.5_small-samples.ckpt
gamma DecisionTreeTabPFNRegressor 2 tabpfn-v2.5-regressor-v2.5_small-samples.ckpt

The checkpoint name is recorded inside each .joblib file and can be read back directly from the loaded object (model.model_path, or model.tabpfn.model_path for the decision-tree variant).

Predictions

TabPFN_<target>_predictions.csv has four columns — idx, actual, predicted, split — covering all 19 361 rows of the data-driven dataset, split 13 552 train / 2 905 validation / 2 904 test. idx is the row index into dataset_data_driven.csv.

SVGP

SVGP_residual_model.pt is the trained stochastic variational Gaussian process used for the residual correction of the WSD interfacial tension, saved as a PyTorch state dictionary (GPyTorch).


Loading the models

The .joblib files were serialized on a H100 GPU machine, so their tensors carry a CUDA device tag. On a CPU-only machine joblib.load therefore fails with

RuntimeError: Attempting to deserialize object on a CUDA device but
torch.cuda.is_available() is False.

Redirect the deserialization to the CPU before loading:

import functools, torch, joblib

torch.load = functools.partial(torch.load, map_location="cpu")   # CPU-only machines

model = joblib.load("MACHINE_LEARNING/TabPFN/P_bubble/TabPFN_P_bubble_model.joblib")
print(type(model).__name__, model.model_path)

On a machine with a working CUDA device, joblib.load works without the override.

Reproducing the predictions requires the same feature matrix and the same train/validation/test split as used for training. idx in the prediction files maps each row back to dataset_data_driven.csv.


Citation

If you use these data or models, please cite the manuscript. The archived, version-of-record copy of this repository is deposited on Zenodo:

DOI: XXXXX


License

CC-BY-4.0

About

Supporting data for 'Machine Learning-Based Prediction of Phase Equilibria and Interfacial Properties of Multi-component CO2 Mixtures with Impurities: Application to CO2 Transportation' - PCP-SAFT EoS + cDFT datasets, trained TabPFN and SVGP models, and binary interaction parameter data.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors