AeroForge — Starship Aero & Aerothermal Toolkit

Run & Deploy

← Back to outcome

Run & Deploy Instructions

AeroForge is a pure-Python (standard library) toolkit, so "deployment" is simply making the package importable. No virtual environment or third-party packages are required.

Requirements

  • Python 3.9 or newer. (No numpy/scipy/matplotlib — standard library only.)
  • Optional: Node.js 18+ to use scripts/aeroforge.mjs.
  • Optional: MATLAB R2019b+ to use matlab/load_aerodb.m.

Local run (Windows)

cd delivery-package\starship-aero-toolkit
py verify.py                                 # validation: 59/59 checks
py scripts\run_workflow.py --vehicle ship    # full workflow + figures

$env:PYTHONPATH = "src"
py -m aeroforge flow --mach 2.0

Local run (Linux / Unix — the CFD environment)

cd delivery-package/starship-aero-toolkit
chmod +x scripts/aeroforge.sh
./scripts/aeroforge.sh ship          # verifies, then runs the workflow

# or directly:
export PYTHONPATH=src
python3 verify.py
python3 -m aeroforge trajectory --vehicle ship

Use as a library

import sys; sys.path.insert(0, "src")     # or set PYTHONPATH=src
from aeroforge import compressible, hypersonic, aerodb, trajectory, vehicles

Use from Node.js (shared JSON contract)

node scripts/aeroforge.mjs aerodb --vehicle ship

Use from MATLAB

db = load_aerodb('delivery-package/evidence/aerodb_ship.json');
plot(db.cd0_curve(:,1), db.cd0_curve(:,2)); xlabel('Mach'); ylabel('CD0');

Outputs

scripts/run_workflow.py writes to delivery-package/evidence/:

  • aerodb_<vehicle>.json, trajectory.json, postflight_reconciliation.json
  • workflow-summary.md
  • screenshots/*.svg (isentropic ratios, normal shock, drag rise, coefficient

sweep, trajectory environment, pre/post-flight comparison)

Continuous verification

verify.py exits non-zero if any check fails, so it drops into CI directly:

python3 verify.py && echo "validation passed"