Repository navigation
Using the App
-
Leave the default preset Zeolite 13X — CO₂/N₂ selected. Its isotherm parameters are the ones measured by Wilkins & Rajendran (2019).
-
Choose Adsorption or Desorption in the Setup step.
-
Click ▶ Run Simulation (header, or Next on Run setup; Ctrl + Enter works from anywhere).
The feed flow can be entered in SLPM, SCCM, NLPM, NmL/min, SCFH, SCFM (with an editable reference temperature and pressure), LPM, mL/min, m³/h, mol/s or mmol/min, or directly as the interstitial velocity
$v_0$ ; the Flow card shows the SLPM equivalent and the resulting$v_0$ . -
The solve runs in a separate Python process, so the page stays responsive — edit fields while it works, or click ✕ Cancel to stop it.
-
When it finishes the Results page opens. Read the Charts, Mass balance, Computed params and Raw data tabs.
The app follows your operating system's light or dark setting on first launch and remembers a manual choice after that — the toggle is in the header, and the charts follow it.
- Header: Inputs / Results, theme, How to, Tour, Case menu, Run.
-
Inputs: Setup, Isotherms, Feed & column, Heat transfer, Mass transfer,
Run setup (case name,
$t_{run}$ ,$N_{grid}$ ). The feed composition,$t_{run}$ and$N_{grid}$ also have sliders. Back / Next or Alt + ← / →; Next on Run setup runs. Guided shows one step, All inputs shows every step. - Checks: a step shows a red count for improper inputs and a yellow ! for warnings; click it to jump to the field.
-
Isotherm preview: the Isotherms step plots both pure-component isotherms
at
$T_{feed}$ (solid) and at a chosen offset above it (dashed), with the feed partial pressures marked, and redraws as you edit. - Notes: an (i) button opens the explanation for a card; hovering a field shows what it means.
- How to opens the guide on its own page; Esc closes it.
- Case menu: load, save, export, case library, credits.
The top of the Results page summarises the run: the breakthrough time (or, in desorption, the bed-clearing time), the loading of each component against its equilibrium value, and the peak bed temperature. Each tile opens the tab behind it. Below them, Can I trust this run? reports mole conservation for each component, marked green below 5 %, amber to 10 % and red above, and the outlet state against mixture equilibrium, marked green below 2 %.
Charts. Outlet mole fraction (the breakthrough curve itself), normalised
outlet molar flow, column temperature profiles at three fixed axial positions (25 / 50 / 75 % of
the bed) plus an optional custom probe, outlet
pressure, total outlet flow
Mass Balance. Three blocks, in order of importance.
-
Reference — the run and the equilibrium state it is judged against:
mode, mixing rule, mass-transfer model, the integrator used,
adsorbent mass, final bed temperature,
$q_i^{\ast}$ at feed conditions and the equilibrium breakthrough times$t_{bt,i}$ . -
Loading, one card per component (the result). Moles accumulated in the
bed divided by the mass of adsorbent, against the mixture equilibrium
loading at feed conditions. This is the comparison that says whether the run
reproduced the isotherm. It is a completeness measure, not an error: large on
a short run, and the fix is a longer
$t_{run}$ . Two targets are given — isothermal at$T_{feed}$ and at the bed's actual final temperature — because they part company once wall heat loss has moved the bed off feed temperature. Below 5 % the bed reached equilibrium; 5–20 % it is still approaching; above 20 % the run ended well short. -
Mole conservation (supporting check). One compact table for both
components:
$n_{in}$ ,$n_{out}$ ,$n_{in}-n_{out}$ , the bed inventory change$n_{acc}$ (adsorbed phase plus interparticle gas$\varepsilon c$ ), and the closure$|n_{in}-n_{out}-n_{acc}|/n_{ref}$ . For Component 1, which the bed retains,$n_{ref}=|n_{acc}|$ . Component 2 is the balance gas: it passes through at many times its bed inventory with$n_{acc}\to0$ , so$n_{ref}=n_{in}$ . It is collapsed by default and opens itself when either component reaches 5 %. Below 5 %, conserved; 5–10 %, marginal — confirm the result against the loading check before using it; above 10 %, outside the expected envelope — save the case and report it. The finite-volume discretisation is conservative, so the residual reflects the time integration and the quadrature of the reported output only. A case saved before this release carries no Component 2 flux data; re-run it to fill the row.
Computed params. Every dimensionless group, the feed-condition diffusivities,
Péclet numbers, minimum fluidisation velocity and Archimedes number, the
equilibrium factor
Raw Data. The full time series, copyable and exportable.
Save / Load Case (Case menu). Save case writes a self-contained .json
with every input, the isotherm and mass-transfer configuration, and — if a run has
completed — the complete output time series. Load case restores all of it
and redraws the charts without re-solving; it first states what a case file is
and offers a template built from the setup currently on screen. Keep these in
your own folder to
build a library of validation cases; the Case library tab also keeps a
quick-access copy in the browser.
Export Report (Case menu). Produces a formatted document — operating conditions, isotherm and mass-transfer setup, mass balance, IAST check, governing equations, embedded chart images with an automatic reading of each figure, and full citations — which opens in a new tab. Use the browser's Print dialog to save it as PDF.
Logs. A timestamped record of the run. An advanced view shows the full backend output for diagnosis.
The Experimental validation tab on the Results page is always there; upload
from it before or after a run. Upload measured breakthrough data as .csv, .xls or .xlsx. The upload
button first states the expected layout and offers a template CSV to paste
your data into — start there rather than guessing at the headers.
Columns are matched by header name: a time column, plus any of outlet mole
fraction, outlet flow rate, and temperature. Up to four thermocouples named
T1…T4 are supported and paired in order with the four simulated axial
temperature traces.
Units are chosen on the same tab (q_out unit, T unit) or in the upload
window, and the template is written in them. Outlet flow defaults to the same
unit as q_out [SCCM] or T1 [K], overrides the setting. Values are converted to
SLPM and °C on upload; the status line, the log and the report state the units
read.
Supply the outlet flow column as well as the mole fraction. It is essential:
the composite retention time integrates
Once uploaded, the points overlay on the corresponding charts — with both
y_out and q_out present, the normalised outlet molar flow chart as well — and the
Experimental validation tab reports RMSE, MAE and
The same tab closes the mass balance on your uploaded trace to get
with the composite retention time integrated from your own effluent trace,
Two numbers are not in the CSV and you supply them: the blank-column retention
time
Each card shows the equation behind its number. The result is reported against
the mixing rule the run uses (IAST or extended Langmuir), evaluated on your
fitted pure-component isotherms at the same
Dynamic Column Breakthrough Simulator ·
Latest release ·
CC BY 4.0 · Documentation for 2026.09v4.
Cite it as given on the References page.
Theory
Using it
Reference