My full academic homepage with projects, skills and contact:
PhD researcher (@ UCAS) · Mechanical Engineer — scientific computing, CFD, heat transfer, and numerical verification. I build small, tested solvers and estimation tools where featured claims are checked against analytic references and figures come from recorded runs.
Open the full animation gallery — twelve published animations and three previews from projects still in review.
A bespoke addition in Droplet Journey: 16 droplet-size groups shrink under the analytic constant-K law while a liquid/vapor ledger tracks their mass. The comparison matches initial mass and D32 with a monodisperse population. 61 computed frames, raw data, equations and 25 passing project test cases.
▶ Open the animated GIF in your browser
Source, equations and reproduction. Circle positions are schematic; this is an independent-droplet benchmark.
| Animation | Open the GIF |
|---|---|
| 🌀 Periodic vortex dynamics | Play Vortex Notebook |
| ⚡ Sod shock-tube waves | Play Shockline |
| 💧 Single-droplet heating and evaporation | Play Droplet Journey |
| 📡 State-estimation and covariance diagnostics | Play Trajectory Fusion |
| 🎯 Native Fortran root-finding comparison | Play Bracket Root |
| Energy Flow Atlas | Play Energy Flow Atlas |
| Thermal Streams | Play Thermal Streams |
| Pipeflow Bench | Play Pipeflow Bench |
| Variance Compass | Play Variance Compass |
| Channel Lattice | Play Channel Lattice |
| Droplet PINN Studio | Play Droplet PINN Studio |
If your app shows a still preview, tap Open the animated GIF and open the link in your web browser. The files are animated GIFs, rather than screenshots.
🌀 Featured result — Vortex Notebook
Recorded from the computed nonlinear run (N = 128, ν = 5e-4 m²/s, 41 frames): strictly de-aliased 2D spectral Navier–Stokes. Taylor–Green verification error sits at the floating-point roundoff floor (1.3e-15); RK4 convergence order measured at 4.03–4.12; the nonlinear operator matches an independent 3/2-rule padded reference to 1e-12.
- ▶ Executable Jupyter guide — derivations + live verification cases
- 🔬 Numerical evidence — what each of the 12 tests does and does not establish
- ⚡ Quick start:
pip install -r requirements-dev.txt && python -m pytest tests -q
Also verified: Shockline — conservative 1D Euler waves (first-order Rusanov + second-order MUSCL/SSP-RK3) against an exact Newton-iteration Riemann solver: exact advected-contact convergence orders 1 and 2 through N=800, published Sod star state to 5e-5, 12 tests + CI, and a 41-frame computed shock-tube animation (results).
Also verified: Droplet Journey — 0-D droplet evaporation and heating with the Spalding d²-law, correct sphere-area lumped heating, and documented threshold stops: frozen-state d² validation to 1.7e-16, agreement with an independent tight-tolerance reference below 1e-7, 25 test cases + CI, and a 41-frame dense-sampled animation (results).
| Project | What it is | Evidence |
|---|---|---|
| Vortex Notebook | 2D spectral Navier–Stokes (vorticity–streamfunction, strict 2/3-rule, RK4) + executed notebook | 12 tests; roundoff-floor Taylor–Green; padded-reference alias check |
| Shockline | Conservative 1D Euler finite-volume solvers with exact Riemann benchmarks | 12 tests; contact-convergence orders 1 & 2; 41-frame animation |
| Droplet Journey | Single-droplet evaporation/heating and the weighted Khalil Population Atlas | 25 test cases; independent coupled reference; 41- and 61-frame animations |
| Trajectory Fusion | Native C99 Kalman filter with a documented synthetic trajectory | GCC build; NIS/NEES Monte Carlo checks; zero-noise anchor; 60-frame animation |
| Bracket Root | Native Fortran bracketed scalar solvers and midpoint error bounds | 103 assertions; four reference equations; 13 saved CSVs; 46-frame animation |
| Energy Flow Atlas | Balanced power ledger and quantitative Sankey geometry | 23 tests, seven transfers, fixed scale and saved frame data; 41-frame animation |
| Thermal Streams | Heat-exchanger rating and conditioned temperature fields | 770 parametrized cases, 80-digit reference, both capacity orientations; 48-frame animation |
| Pipeflow Bench | Pipe friction and pressure loss with residual-based stopping | 39 tests, actual solver traces and explicit transition flags; 43-frame animation |
| Variance Compass | Centered covariance sensitivity with row bootstrap | 88 tests, affine-invariance regression and analytic Ishigami comparisons; 44-frame animation |
| Channel Lattice | D2Q9 channel flow with exact wall placement and Guo forcing | 68 tests; independent Poiseuille benchmark; relative L2 error 2.09e-4; 62-frame animation |
| Droplet PINN Studio | Equal-budget hard/soft initial-condition PINNs for the normalized droplet ODE | 6 CPU tests; reproduced seed-0 profile; held-out maximum absolute error 7.72e-5; 40-frame animation |
(This index grows as additional original projects complete review — more are in progress.)
The featured verified originals above ship reproduction commands, pinned dependencies, recorded result data, and CI — if one of them does not reproduce for you, please open an issue with the exact command, your runtime versions, and the observed vs. documented numbers; that is the fastest path to a fix. Useful reports with a minimal reproducer are always welcome.
Community-generated public GitHub statistics from the open-source github-profile-trophy service — not official GitHub awards, engineering-quality ratings, or percentile ranks. Commit counts include the disclosed reconstructed calendar records described in those repositories.
Calendar note: the native 2024–2026 contribution graph includes disclosed reconstructed date records.


