HomeMaterials ScienceCapillary Condensation 2D: Pore-Ensemble BJH Inversion

Capillary Condensation 2D: Pore-Ensemble BJH Inversion

2D top-down ensemble of cylindrical nanopores, each obeying the Kelvin equation independently: sweep relative pressure to watch condensation/evaporation ripple across a whole pore-size distribution, then watch a live BJH-style derivative inversion of the desorption branch reconstruct that distribution from the isotherm alone.

Materials Science2DAdvanced60 FPS📱 Mobile-adapted⇄ 3D version
2d-nanoporous-materials ↗ Open standalone

This is the 2D counterpart to the 3D single-pore Kelvin-equation simulator: instead of one cylindrical nanopore, this models a whole population of pores drawn from a log-normal pore-size distribution, each one independently condensing and evaporating according to the Kelvin equation's k=1 (adsorption) and k=2 (desorption) branches. Sweeping relative pressure P/P₀ through a full up-and-down cycle produces a volume-weighted ensemble isotherm with the classic hysteresis loop — and, uniquely to this 2D view, a live BJH-style derivative inversion reconstructs an estimated pore-size distribution directly from that isotherm's desorption branch, letting you compare the recovered distribution against the true one that generated it. Adjust the mean pore radius, distribution width and adsorptive gas to see how the reconstruction tracks the ground truth.

⚙ Under the hood

2D top-down ensemble of cylindrical nanopores, each obeying the Kelvin equation independently: sweep relative pressure to watch condensation and evaporation ripple across a whole log-normal pore-size distribution, then watch a live BJH-style derivative inversion of the desorption branch reconstruct that distribution from the isotherm alone, compared directly against the true generating distribution.

nanoporous materialsKelvin equationcapillary condensationadsorptionBJHporosimetrypore size distributionensemble simulation

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)