Live Supersonic Nozzle Simulation

2.0+ Ma 1.5 Ma 1.0 Ma 0.5 Ma 0.0 Ma

The Architecture

This is a live transient Converging-Diverging (CD) nozzle simulation, driven by a custom compressible Euler solver written entirely from scratch in C and compiled to WebAssembly. The engine features a custom Delaunay triangulator, a half-edge mesh data structure, and an arena memory allocator to ensure completely zero-copy memory access between the C physics engine and the JavaScript rendering canvas.

Why build this?

As a chemical engineer, my background is heavily rooted in process simulation, mathematical optimization, and writing steady-state simulators in C++. Historically, running rigorous finite volume methods required clunky desktop software and massive computational overhead.

The goal of this project is to prove that high-performance engineering math can run blazingly fast directly in the browser. By bridging highly optimized C++ math engines with modern TypeScript frontends, we can fundamentally change how engineers interact with process data. This architecture acts as a foundational proof-of-concept for the interactive calculations powering the diagramming tools at Voima.

Feel free to check out the source code, or reach out to me directly at marcio@voimatoolbox.com.