Add turbocharged twin scenario and cross-platform test harness

This commit is contained in:
2026-10-23 02:27:03 +02:00
parent a859740a95
commit 589d22aa5e
63 changed files with 4903 additions and 771 deletions

View File

@@ -0,0 +1,56 @@
# Saab B205 / 9-5 wagon baseline
Linux Release, 2026-10-23. This quick preset reuses the four-stroke scenario,
ECU, compressible pipes/volumes, vehicle coupling, spatial audio and dyno.
The original twin remains available through its backward-compatible type alias.
There are four actual cylinders and ten pipes, not copies of an audio waveform.
## References and assumptions
[Saab WIS B205 general data](https://saabwisonline.com/9-3-9400/2001/2-engine/basic-engine-4-cylinder-petrol/technical-data/general-data)
supplies 90 mm bore, 78 mm stroke, approximately 1985 cc, 8.8:1 compression,
four valves per cylinder and 1-3-4-2 firing order. Cylinder phases in physical
1/2/3/4 order are 0/180/540/360 degrees; pistons 1/4 move together and 2/3 move
together. Phased cylinders initialize at their actual piston positions.
[Saab WIS 9-5 gearbox data](https://saabwisonline.com/9-5-9600/2005/4-transmission/manual-gearbox/technical-data/gear-ratio)
supplies FM55 B05 overall reductions 13.70, 7.12, 4.77, 3.62 and 2.67 with
4.05 final reduction. The vehicle configuration factors out final reduction
and has five selectable forward gears, no motorcycle primary reduction.
Other settings are estimates: 1600 kg wagon + 75 kg driver, .317 m loaded tire
radius, Cd .32, frontal area 2.2 square metres, wheel-equivalent rotational
inertia 3.6 kg m^2, 300 Nm clutch capacity, crank inertia .18 kg m^2, and
12 Nm constant + .012 Nm/(rad/s) viscous friction. Road rolling resistance
retains the shared .015 coefficient. No attempt is made to identify a particular
year/trim with these estimates.
The intake uses a 3 litre plenum, estimated 52 mm throttle, four 32 mm x 250 mm
runners, 34 mm x 280 mm headers, .6 litre collector, and a 60 mm x 1.4 m open
tailpipe. Estimated valves are 32/28 mm intake/exhaust, 8.5/8 mm lift, two each.
Cams/combustion retain the shared four-stroke model. The ideal ECU targets
850 RPM idle, with estimated 6500/6250 RPM cut/resume and 2000/1300 overrun
thresholds. These are scenario calibrations, not a factory Trionic map.
There is no compressor, turbine, intercooler, wastegate, catalyst or muffler in
this first version. Intake boundary pressure is ambient. Consequently factory
turbo torque/power and factory exhaust sound are not reproduced. Thermal,
combustion and single-zone mixing limitations from the fluid audit still apply.
## Verification
The six existing suites passed after the shared four-stroke/vehicle changes.
The added B205 regression passed independently: it checks engine displacement,
valve count, cylinder positivity, ten-pipe topology, firing order/cadence, wagon
launch, five-gear selection, final ratio, idle recovery, finite audio and zero
pipe positivity repairs. A prescribed 2000 RPM dyno counted 33 firings in half a
second, consistent with two firing events per revolution. The eight-second
sequence reached 56.57 km/h in first under load, recovered to 1311 RPM after
three seconds of unloaded release, and peaked at .18645 audio full scale.
It cost 7.26 wall seconds while another headless run was also active. Idle
convergence and engine calibration still need refinement; these checks establish
basic operation, not measured Saab performance. Windows runtime remains untested.
Run `fluidsim_desktop --scenario b205` or select the third startup card.
Headless CLI and WAV capture also accept `--scenario b205`. The graph reports
crankshaft power, not power measured at the wheels.