By: SAMUELSON G
An interactive, WebGL-powered 3D visualization and simulation suite for aerospace propulsion systems. Featuring aerodynamically accurate NACA airfoil blade profiles, dual-spool concentric shaft kinematics (
Aero Engine Lab provides aerospace students, engineers, and enthusiasts with a browser-based, high-fidelity CAD viewer for jet and rocket engines. Built entirely with Three.js and modern ES modules, it combines real-time graphics rendering with aerodynamic engineering principles—all without requiring external asset downloads or server dependencies.
- Aerodynamically Accurate Blades: Extruded NACA cambered airfoil geometries with realistic suction/pressure surfaces, spanwise twist, and high-pressure compression stage tapering.
-
Dual-Spool Kinematics: Independent rotation of
$N_1$ (low-pressure spool driving fan/booster/LPT) and$N_2$ (high-pressure spool driving 8-stage HPC/HPT) scaled to real-world relative RPM ratios. - Collision-Free HUD Shell: Modern flex/grid responsive UI layout ensuring control panels, station ribbons, and telemetry cards never overlap across screen sizes.
-
Real-Time Telemetry HUD: Live performance output calculating
$N_1$ /$N_2$ RPM, net thrust (kN),$T_4$ combustion temperatures (K), Overall Pressure Ratio (OPR), and mass airflow rate (kg/s). -
Interactive Dissection & Inspection:
- Exploded View: Dynamic longitudinal separation slider to inspect individual compressor and turbine stages.
- Cutaway Mode: Precision clipping plane showing internal annular combustor liners, 16 fuel injector nozzles, and concentric shaft assemblies.
- Airflow Streamlines: Dynamic, color-coded WebGL particle system simulating air intake, high-pressure compression, heat addition, and exhaust acceleration.
-
Multi-Engine Library:
- Dual-Spool High-Bypass Turbofan (24-blade fan, 3-stage LP booster, 8-stage HPC, 16-injector combustor, HPT, 4-stage LPT).
- Supersonic Turbojet (Variable intake spike, 7-stage axial compressor, afterburner manifold, convergent nozzle petals).
- Liquid Rocket Engine (Dual turbopumps, fuel injector dome, spherical reaction chamber, regeneratively-cooled expansion nozzle).
- Rendering Engine: Three.js (r160)
- Post-Processing:
EffectComposer,RenderPass,UnrealBloomPass - Camera Controls:
OrbitControls - UI & Layout: HTML5, CSS Variables, CSS Flexbox & Grid
- Language: Vanilla JavaScript (ES6+ Modules)
Since the application is fully self-contained in a single file with CDN-based ES module imports, no package installation or build step is required.
- Clone the repository:
git clone [https://github.com/your-username/aero-engine-lab.git](https://github.com/your-username/aero-engine-lab.git) cd aero-engine-lab - Run the application:
- Open
index.htmldirectly in any WebGL-compliant web browser. - Alternatively, serve it via a local web server (e.g., VS Code Live Server,
npx serve, orpython -m http.server 8000).
The app organizes engine visual components using standard aerospace station numbering:
| Station | Designation | Description |
|---|---|---|
| Station 0 | Inlet | Free-stream air entry and supersonic shock wave management |
| Station 2 | Fan / LPC | Wide-chord front fan and Low-Pressure Booster Compressor |
| Station 3 | HPC | 8-stage High-Pressure Compressor driven by |
| Station 4 | Combustor | Annular reaction chamber with 16 dual-swirl fuel nozzles |
| Station 5 | HPT / LPT | Single-stage HP turbine ( |
| Station 7 | Nozzle | Exhaust bypass mixing duct and thrust nozzle expansion |
- Rotate: Left-click + drag
- Pan: Right-click + drag
- Zoom: Mouse wheel scroll
-
Throttle Slider: Scales engine spool speeds (
$N_1$ /$N_2$), combustor glow, particle velocity, and telemetry output. - Explode Slider: Physically separates internal rotor and stator stages along the longitudinal X-axis.
- Station Ribbon Buttons: Triggers smooth camera transitions directly to specific engine components.
- Hotspot Pins: Click or hover over interactive visual anchors for component descriptions.
The Aero Engine Lab successfully bridges real-time interactive 3D web graphics with aerodynamic engine modeling. By replacing basic placeholder shapes with NACA airfoil blade profiles, true dual-spool co-axial kinematics (
-
Real-Time Brayton Cycle Calculations: Calculate thermodynamic state variables (
$T_0$ ,$P_0$ , enthalpy) across stations 0 through 7 using the net thrust equation:
-
Dynamic Thermal Heatmaps: Implement custom GLSL shaders to dynamically shift casing and blade metal surfaces from cool metallic blues to incandescent thermal glows based on local
$T_4$ combustion temperatures. - Flight Envelope Model: Add interactive sliders for Altitude (0–40,000 ft) and Mach Number (0–2.2 M) to model air density drop-offs, choked nozzle flows, and compressor stall boundaries.
- WebGPU CFD Streamlines: Offload particle kinematics to WebGPU compute shaders, scaling flow particles from 1,200 to over 100,000 to visualize boundary layer flows, blade tip vortices, and shock diamonds.
- Volumetric Exhaust Shaders: Implement ray-marched volumetric fog and fire shaders inside the combustor liner and afterburner nozzle for realistic flame propagation.
- Blade Wear Textures: Apply PBR metalness/roughness maps simulating thermal barrier coatings (TBC), oxidation patterns, and mechanical wear on turbine stages.
-
Procedural Acoustic Engine: Synthesize dual-spool acoustics using the Web Audio API, generating dynamic high-frequency turbine whines and low-frequency jet rumble scaled directly to
$N_1$ and$N_2$ RPM values. -
WebXR Inspection Mode: Add VR/AR support (
three/addons/webxr/) allowing users to walk inside the engine bypass duct or inspect engine components at a 1:1 scale in virtual reality.
- glTF / STEP File Loader: Implement a file drop-zone allowing aerospace engineers to import custom CAD assemblies (
.gltf,.glb, or converted.stepfiles) into the viewer. - Interactive Component Assembly Tree: Provide a collapsible tree UI to isolate, measure, hide, or highlight specific components such as bearings, fuel nozzles, or individual stator vanes.
- Data Logging & CSV Export: Enable real-time telemetry logging to export thrust, fuel flow, and specific fuel consumption (SFC) performance curves for academic analysis.
Distributed under the MIT License. See LICENSE for more information.