Krunal Panchal.
Computational methods for complex physical systems — combustion kinetics, optimization & uncertainty quantification, reduced-order & scientific ML.
Krunal Panchal.
Computational methods for complex physical systems — combustion kinetics, optimization & uncertainty quantification, reduced-order & scientific ML.
Krunal Panchal.
Computational methods for complex physical systems — combustion kinetics, optimization & uncertainty quantification, reduced-order & scientific ML.
Coordinate transformation, live
Krunal Panchal
Computational methods for complex physical systems — combustion kinetics, optimization & uncertainty quantification, reduced-order & scientific ML.
Under the hood
The solver behind the flow
The hero is a 2D incompressible flow solved on the GPU every frame (WebGL2, stable-fluids scheme). Below: the equations, the matrix its pressure step inverts, and live numbers from the running simulation.
1. The equations
Incompressible Navier-Stokes for velocity u and pressure p:
The solver advances one time step in three stages, in this order: force (vorticity confinement, buoyancy, inflow, your pointer), project (make the field divergence-free), advect (MacCormack semi-Lagrangian). There is no explicit ν∇²u term: viscosity here is the numerical diffusion of the advection step plus a small linear decay.
On the grid (spacing h) the Laplacian is the 5-point stencil, one linear equation per cell:
2. The matrix it solves
Stacking all cells gives a sparse linear system A p = b. Each row has at most five nonzeros: the diagonal and the four neighbours (+1). Hero boundaries: left, top and bottom are zero-gradient walls (the missing neighbour is replaced by the cell itself, so the diagonal becomes -3 or -2); the right edge is an outlet with p = 0 (diagonal stays -4, no right neighbour).
Hover or focus the matrix (arrow keys) to read an entry.
- diagonal (-4, -3, -2)
- neighbour (+1)
- zero
The solver does not factorise A. It runs a fixed number of Jacobi sweeps per frame (see iterations below), warm-started from last frame's pressure times 0.8. In the shader the units are h = 1 and p is scaled by Δt/(ρh), so ρ and Δt drop out:
With general spacing the update is p_new = (p_L + p_R + p_B + p_T - h²b)/4. At a wall the shader substitutes the cell's own value for the missing neighbour, so those rows iterate p ← p - (b - A p)/4. After the sweeps the velocity is corrected with a central difference:
The cylinder and the hot burner act as extra zero-gradient interior walls; the demo matrix above leaves them out.
3. Live numbers from the running hero
Reading the simulation.
- Sim grid
- -
- Quality tier
- -
- Jacobi sweeps / frame
- -
- Frames per second
- -
- Frame interval (median)
- -
- Time step Δt
- -
- CFL number
- -
- max |∇·u| before solve
- -
- max |∇·u| after solve
- -
Effects are reduced or off, so the panel does not poll. This takes a single reading.
What each number means
- Sim grid
- Cells of the velocity and pressure grid (width × height). The picture is drawn at a higher resolution than this.
- Quality tier
- 0 is highest, 3 lowest. The hero lowers it automatically if frames take too long.
- Jacobi sweeps / frame
- How many times the pressure update above is applied each frame. More sweeps leave less divergence.
- Frames per second, frame interval
- Measured between browser animation frames, so it is capped by the display rate. It is not GPU time.
- Time step Δt
- Seconds advanced per step: the frame interval, clamped to 1/120 - 1/30 s.
- CFL number
- Δt · max|u| / h, the number of cells the fastest fluid crosses in one step, using the speed after the solve. Semi-Lagrangian advection stays stable above 1.
- max |∇·u| before / after
- Largest divergence of the velocity field over the whole grid (boundary cells included), in 1/s: the field entering the pressure solve versus the field leaving it, sampled once a second from the GPU in 8 × 8 cell blocks. After is not zero: a fixed number of sweeps solves A p = b only approximately. Advection, applied afterwards, is not included.
Numbers shown come from the solver in this tab; nothing is sent anywhere.
PhD, Mechanical Engineering, IIT Madras (2026)Project Associate, Dept. of Mechanical Engineering, IIT Madras, until 30 Nov 2026
I build computational methods that connect detailed chemical models with practical combustion applications — kinetics, mechanism reduction, fair multi-objective optimization, uncertainty quantification, and scientific ML, treated as one connected problem rather than separate tools. Every figure on this site is backed by real runs — pool-flame experiments measured with instruments I built, stiff autoignition chemistry validated against 426 experimental targets, an open-source optimization workbench, and a live Neural ODE research playground — with the honest failures on record next to the results. The full story →
Overview
Research at a glance
- Combustion Kinetics & Mechanism Reduction — mechanism development, validation, and reduction of detailed kinetic models to tractable, simulation-ready form
- Experimental & Numerical Combustion — pool-flame characterization and downdraft gasification alongside CFD and chemical-kinetics simulation of the same systems
- Fair Multi-Objective Optimization & Uncertainty Quantification — multi-stage, multi-dataset calibration of Arrhenius parameters with correlated-parameter Bayesian UQ, built around MOSIAC, my open-source optimization framework
- Reduced-Order Modelling & Scientific ML — neural and response-surface surrogates that stand in for expensive stiff simulations
- Gasification — steam/catalyst-assisted downdraft fixed-bed gasification, from rig commissioning to syngas analysis
- CFD — PANSOPHIA, an in-house CFD/multiphysics solver, and reacting-flow and rig-design studies built on top of it
- Optimization & Reinforcement Learning — dokimazo, an open-source, dependency-light optimization/RL workbench with a plug-and-play graph IR — closed with an RL agent that tunes a real molecule’s rotatable bonds to find its lowest-energy 3D shape
The full research overview — themes, methods, experiments, and publications — is on the Research page.
- projects
- 40
- images
- 588
- videos
- 100
- studio routes
- 24
- categories
- 12
Math Visual Studio
Explore the research in the Studio
Guide
Showcase
Selected work
A rotating sample of the best results across every research area — each slide links to its full project page. Browse all projects →









Showcase
Selected results
-
Flame development across eight repeat n-heptane pool-flame runs, ignition-aligned and shown at a common physical scale — measured with flamelab, the computer-vision instrument behind it (animated overlay videos on the project page). Open project -
All four MUQ-SAC sampling-method classes (A, B, C, D) building their joint-uncertainty bands at once, each panel's own real measured compute time ticking at its true rate — one crawls, three finish almost instantly — see MUQ-SAC. Open project -
An RL agent and dokimazo's own IPOP-CMA-ES both independently reach n-dodecane's true global-minimum conformer energy, verified against a directly-computable structural ground truth — see dokimazo (optimization-process video on the project page). Open project
Feed
Recently added
-
2026-10-07 flamelabSeam check of two stitched video parts -
2026-10-07 flamelabCalibration from a ruler and the burner tube -
2026-10-07 flamelabStitching video parts into one stream -
2026-10-07 flamelabDetecting the onset with a sliding window -
2026-10-07 flamelabOnset of puffing: Hopf bifurcation -
2026-10-07 flamelabInverse Abel transform by onion peeling -
2026-10-07 flamelabFlame height versus heat release -
2026-10-07 flamelabKymograph: stripe slope is convection speed -
2026-10-07 flamelabSub-pixel edge detection -
2026-10-07 flamelabVeiling glare and the threshold -
2026-10-07 flamelabAliasing: a 14 Hz flame at 23.976 fps -
2026-10-06 Neural ODEs and Transformations — A Self-Built CourseS052 No chart compresses the stiffness ratio of hydrogen/air; a nonlinear chart moves a spectrum only away from rest
Try the research live
Interactive
Try it live
Latest
News
| Aug 06, 2026 | Three abstracts accepted for presentation at the 64th Symposium (Japanese) on Combustion, Fukuoka, 4–6 Nov 2026 — including the power-mean objective-function work (Panchal & Narayanaswamy, 2026). |
|---|---|
| Jul 15, 2026 | PhD degree conferred by IIT Madras. |
Papers
Selected publications
-
- A multi-stage kinetic reaction optimization strategy applied to n-heptane combustion mechanismIn 14th Asia-Pacific Conference on Combustion (ASPACC), 2023
- A Power-Mean (Hölder) Objective Function for Balancing Unequal Datasets in Combustion Kinetic Mechanism Optimization: Case Studies on Methyl Butanoate and n-HeptaneIn 64th Symposium (Japanese) on Combustion, 2026Accepted