Automatic Generation of Chemical Reactor Networks from CFD data
NetGEN is a suite for automatically generating Chemical Reactor Networks (CRNs) from CFD data. The package is based on connectivity-enhanced unsupervised learning clustering algorithms. In particular, clustering algorithms are used to post-process the data stored in the computational cells of a CFD simulation, finding zones with similar thermo-chemical features that can be modelled as a series of interconnected chemical reactors. To guarantee that the identified zones represent geometrically connected areas within the combustor, graph algorithms are employed to reassign the cells, making sure that each cluster is composed of spatially connected zones. This will guarantee the conservation of mass in the CRN model. For more details, see the publication [1].
-
Clone the repository:
git clone https://github.com/burn-research/NetGEN.git
-
Enter the Python source code folder:
cd Python
-
Install:
python setup.py install
Open Matlab, then type:
addpath(genpath('MATLAB/src/'))
The code is directly usable. To run examples, you can either find examples in the Python/examples/ folder or in the MATLAB/Example/ folder. Those example contains a series of options that can be customized.
- Unsupervised Learning (k-means, vector quantization PCA)
- Graph-based clustering
- Fluent - NetSMOKE++ interface for CRN
We want to deeply thanks the Creck group at Politecnico di Milano for their collaboration to this project, in particular for the development of the CRN solver NetSMOKE++. The CRN solver is available upon request for academic usage
The code is open source. Please cite [1].
[1] M. Savarese, A. Cuoci, W. De Paepe, A. Parente (2023) Machine Learning clustering algorithms for the automatic generation of chemical reactor networks from CFD simulations Fuel, 343, 127945