GSI / README.md
schuettem's picture
Create README.md
6f90ed4 verified
|
Raw
History Blame Contribute Delete
4.58 kB
---
license: "cc-by-nc-sa-4.0"
tags:
- gas-surface-interaction
- normalizing-flow
- real-nvp
- variational-autoencoder
- molecular-dynamics
- piclas
- dsmc
- rarefied-gas-dynamics
- vleo
library_name: "piclas"
---
# PICLas-ML/GSI - ML Gas-Surface Interaction Models
Machine-learned surface scattering models for [PICLas](https://github.com/piclas-framework/piclas),
an open-source 3D particle-based kinetic simulation framework for plasma dynamics and rarefied
gas flows.
## Models in Repo
This repo contains two model architectures for calculating the scattering of atomic oxygen on an aluminum oxide surface Al₂O₃:
- **cRealNVP** - a conditional real-valued non-volume-preserving flow, using a detailed-balance
loss as a physics constraint
- **cVAE** - a conditional variational autoencoder
| File | Architecture | Incident Species → Surface → Reflected Species |
|---|---|---|
| `cRealNVP_MDclassic_O-Al2O3-O.h5` | Conditional RealNVP (normalizing flow) | O → Al₂O₃ → O |
| `cVAE_MDclassic_O-Al2O3-O.h5` | Conditional variational autoencoder | O → Al₂O₃ → O |
**File naming convention:** `<architecture>_<data source>_<species>.h5`
- 1st part — model architecture: `cVAE` or `cRealNVP`
- 2nd part — source of the non-equilibrium data: MD simulation with a classical potential
- 3rd part — atomic oxygen impacting an aluminum oxide surface; outgoing species is atomic oxygen
**Performance comparison:**
| | cRealNVP | cVAE |
|---|---|---|
| Accuracy (thermal → 11,000 m/s) | Better overall | Comparable till 10,000 m/s |
| Equilibrium temperature | Converges correctly | Does not converge correctly |
| Sampling speed | Slower | Much faster |
## Method
These models were developed as a collaboration within the [Collaborative Research Center 1667 ATLAS](https://www.sfb1667.uni-stuttgart.de/)
at the University of Stuttgart. A detailed description of the models and the data is given in
[arXiv:2606.31928](https://arxiv.org/abs/2606.31928) - *Conditional Normalizing Flow for
Gas-Surface Scattering from Thermal to Hypersonic Velocities*.
**Data**
Two training data sets are used, both for atomic oxygen impacting an aluminum oxide (Al₂O₃)
surface:
- Non-equilibrium data generated from MD simulations
- Equilibrium data generated from Maxwell flux distribution
*Non-Equilibrium Data:*
- Atomic oxygen impacts on an aluminum oxide surface are simulated with molecular dynamics
using classical potentials
- Incident velocity magnitudes: 2,000-10,000 m/s
- Polar angles: 0°-80°
*Equlibrium:*
- If the gas is in equilibrium with the wall, an incident Maxwell flux must be reflected as the same Maxwell flux
- Maxwell flux samples are added to the training data to cover the equilibrium regime
**Model**
- In PICLas, scattering is represented through a scattering kernel, i.e., the conditional probability distribution P(v_i → v_r) describing how an incoming velocity transitions to a reflected one.
- To learn this kernel from data, two generative ML models (cVAE and cRealNVP) are trained on the data
## Intended use
- Load into PICLas as an ML surrogate GSI scattering model to sample scattered particle velocities
- **Valid for:** O → Al₂O₃ collisions, from the thermal regime up to 11,000 m/s impact velocity
- **Not valid for:** other species/materials, conditions far outside the training data, or
chemistry beyond what the classical MD potential captures
## Usage in PICLas
Example entry in `parameter.ini`:
```
Part-Boundary1-SurfaceModel = 0 ! only Scattering: 0
Part-Boundary1-SurfaceModelScattering = 3 ! cVAE: 2, cRealNVP: 3
SurfaceScattering-NumOfMLs = 1
SurfaceScattering-ML1-NumOfBoundaries = 1
SurfaceScattering-ML1-Boundaries = (/1/)
SurfaceScattering-ML1-File = https://huggingface.co/PICLas-ML/GSI/resolve/main/cRealNVP_MDclassic_O-Al2O3-O.h5
```
The model is downloaded and cached under `piclas-ml/gsi/` on first use.
For further information, visit the [PICLas documentation](https://piclas.readthedocs.io/en/latest/).
## Citation
If your research leads to a publication, please cite the models using:
```bibtex
@misc{schütte2026conditionalnormalizingflowgassurface,
title={Conditional Normalizing Flow for Gas-Surface Scattering from Thermal to Hypersonic Velocities},
author={Miklas Schütte and Stephen Hocker and Hansjörg Lipp and Johannes Roth and Stefanos Fasoulas and Marcel Pfeiffer},
year={2026},
eprint={2606.31928},
archivePrefix={arXiv},
primaryClass={physics.comp-ph},
url={https://arxiv.org/abs/2606.31928},
}
```