This commit is contained in:
2026-10-23 03:00:20 +02:00
parent 589d22aa5e
commit 7a5c77c1c8
31 changed files with 1196 additions and 44 deletions

View File

@@ -0,0 +1,109 @@
# Solver optimization audit
Measured on an Intel Core i5-12600K, Linux, GCC 16.2.1, Release (`-O3`,
no fast-math). Reference is commit `589d22a`. Performance results are specific
to this machine; Windows/MSVC runtime measurements remain pending. The retained
changes use portable C++ and compiler vectorization, with no new CPU requirement.
## Retained changes
* Boundary solves start from the previous converged face pressure when it is
inside the new physical bracket. Otherwise they start at the bracket midpoint.
The safeguarded Newton solver, residual tolerance, iteration cap, choking,
reverse flow, donor budgets and inertance calculation remain unchanged.
* Pipe preparation computes primitive states and wave speeds in an independent
loop, then validates states and reduces the CFL timestep. GCC confirms 128-bit
vectorization of the arithmetic loop. Invalid states still throw before flux
updates. No approximate reciprocal/square root or relaxed arithmetic is used.
* Pipe fresh-air tracer fractions smaller than the smallest **normal** float
(approximately 1.175e-38) are rounded to zero. Previously, purged intake/exhaust
tracer tails persisted as subnormals, causing severe sustained-load slowdown.
This affects species attribution below that precision, not total density,
momentum or energy. The regression suite checks bulk conservation and retention
of normal tracer concentrations. Global flush-to-zero modes are not enabled.
Starting guesses change numerical trajectories within the existing convergence
tolerance; long engine/audio traces need not be bit-identical to the reference.
## Profiling and experiments
A `-pg` build running every scenario for two simulated seconds attributed about
39% of sampled executable time to pipe advancement, 38% to orifice boundary
solves, and 13% to Solver::step (including inlined preparation). Turbo mechanics
were under 1% and outdoor emitter rendering about 1%. These are sampled gprof
results, not precise attribution of time inside dynamically linked math functions.
`fluidsim_thread_benchmark` now uses each scenario's actual pipe geometry and
compares persistent 1/2/4-worker execution with barriers per substep. This isolates
the parallelizable pipe work; boundary/component work would remain serial. Every
current scenario loses with workers, so production remains serial. The synthetic
64-pipe, 256-cells-per-pipe case benefits from workers, confirming that this
strategy has a useful scale threshold. It does not justify adding its scheduling
and synchronization cost to the current small graphs.
SIMD-disabled and `-march=native` builds are comparison experiments. Native
compilation is not enabled in the project defaults, since the executable could
then require instructions missing on another machine.
## Results
Mean wall seconds per simulated second, six-second sustained-load runs:
| Scenario | Reference | Optimized | Time reduction | SIMD disabled |
|---|---:|---:|---:|---:|
| Twin | .528 | .405 | 23% | .423 |
| Turbo twin | 1.368 | .649 | 53% | .684 |
| B205 | .884 | .689 | 22% | .737 |
| Two-stroke racing | .561 | .470 | 16% | .535 |
| Two-stroke straight | .539 | .464 | 14% | .525 |
| Helmholtz | .167 | .141 | 16% | .160 |
| Pulse | .256 | .238 | 7% | .315 |
Idle/transient optimized means (seconds per simulated second): twin .394/.399,
turbo .627/.651, B205 .666/.683, racing two-stroke .450/.459, straight two-stroke
.452/.453, Helmholtz .141/.140, and pulse .238/.238.
The pulse scenario has no orifice, so its improvement isolates the SIMD-friendly
preparation change. Disabling SIMD increases time in every scenario. An optional
native-instruction build improves some timings further, but is not shipped as
the default: FMA also changes rounding and the binary is CPU-specific.
Initial isolated changes measured approximately .40 seconds for the twin after
boundary warm starts alone (previously .53). The sustained turbo still took
about 1.2 seconds after that change; eliminating subnormal tracer tails brought
it to about .65. The diagnostic found 22 subnormal pipe fields before truncation
and zero afterwards. This is distinct from reducing CFL substeps or geometry;
neither was changed. Six-second idle and throttle/release runs also complete
for every scenario. These are finite test windows, not a guarantee of real-time
performance for every user configuration or arbitrarily long simulation.
## Reproduction
Final validation: all nine CTest suites passed both with SIMD enabled (28.50 s)
and disabled (30.86 s). The fluid validation executable includes 30 checks,
including tracer underflow conservation. The Release SFML desktop target also
rebuilt successfully. This audit verifies desktop compilation and headless audio
rendering; interactive playback underrun testing remains a separate user check.
```sh
cmake -S . -B build-opt -DCMAKE_BUILD_TYPE=Release -DFLUIDSIM_BUILD_DESKTOP=OFF
cmake --build build-opt -j
ctest --test-dir build-opt --output-on-failure
./build-opt/fluidsim_scenario_benchmark 6 loaded
./build-opt/fluidsim_scenario_benchmark 6 idle
./build-opt/fluidsim_scenario_benchmark 6 transient
./build-opt/fluidsim_thread_benchmark
```
The scenario benchmark runs twin, turbo twin, B205, racing and straight-pipe
two-strokes, Helmholtz and pulse scenarios, including their normal audio path.
`loaded` holds four-strokes at 7,000 RPM and two-strokes at 10,000 RPM using an
ideal speed-holding dyno; engine throttle is 70%. `idle` releases the pedal;
`transient` starts released, applies 70%, then releases for the last two seconds.
The optional final argument selects one scenario, e.g. `6 loaded turbo`.
CSV timing/checksum goes to stdout; subnormal and iteration diagnostics go to
stderr. Inspection happens outside the timed sample-processing loop.
Use `-DFLUIDSIM_ENABLE_SIMD=OFF` in a separate build for scalar comparisons.
Run timed experiments sequentially, without concurrent builds or simulations.
The raw final measurements are retained in `verification/optimization/`.

46
verification/SAAB_GT17.md Normal file
View File

@@ -0,0 +1,46 @@
# Saab B205 with GT17 and ECU boost control
The desktop Saab menu entry and `--scenario b205` now select an estimated GT1752
turbo configuration. `--turbo gt17` makes that choice explicit; `--turbo none`
selects the previous naturally aspirated baseline. CLI and WAV capture follow
the same defaults. `SaabB205Scenario` preserves its baseline API;
`SaabTurboScenario` is the boosted convenience class.
The GT17 calibration uses a 26 mm compressor tip radius, 19 mm effective turbine
radius, 2e-5 kg m² rotor inertia, 420/350 mm² effective compressor/turbine areas,
70% efficiencies, 100 cc housing volumes and a 24 mm wastegate. These are model
estimates, not a measured Saab map or verified rotor inertia. The Garrett catalog
identifies the Saab GT1752 application:
https://www.turbomaster.info/eng/downloads/catalog_garrett.pdf
The ECU requests up to 45 kPa gauge boost, ramping with pedal and RPM. A PI
controller uses manifold pressure filtered over 50 ms, conditional integration,
and bounded pneumatic bleed duty (0–85%). Duty reduces the pressure signal to
the existing spring/diaphragm actuator. Actual valve travel remains damped and
boost emerges from the physical rotor, restrictions and conserved gas transfers.
Zero duty restores the mechanical pressure-can response; it does not forcibly
open the valve or impose a manifold pressure. Targets below spring boost cannot
be achieved by wastegate bleed alone.
Lift-off, fuel cut and invalid sensor data request zero duty and clear the PI
integral. Invalid boost sensors cut fuel. Manifold or charge pressure above
75 kPa gauge triggers fuel cut, recovering below 55 kPa gauge. This is a basic
estimated safety calibration, not a reproduction of Saab Trionic software.
No intercooler, compressor surge/BOV model or knock model has been added;
charge heating and exhaust backpressure remain present.
The regression holds the engine at 3,500 RPM, applies full pedal for six seconds,
then releases for three. It checks boost settling within 8 kPa of the 45 kPa
target, shaft spool-up/down, finite audio, no pipe positivity repairs, no housing
donor limiting, and gas/rotor energy residual below 0.1 J. Controller checks cover
overboost, recovery, pedal release and an invalid sensor. The HUD shows target
gauge boost, actuator bleed duty, turbo RPM and absolute gas pressures.
```sh
cmake --build build-desktop --target fluidsim_desktop -j4
./build-desktop/fluidsim_desktop --scenario b205 --turbo gt17
./build-audit/fluidsim_scenario_benchmark 6 loaded b205-gt17
```
All ten CTest suites pass, including the new ten-second Saab turbo regression.
The GT17 benchmark holds 5,500 RPM, below the Saab's 6,500 RPM limiter.

View File

@@ -88,11 +88,13 @@ shaft power. There is no forced power gain. Effective area/efficiency, gas
properties and the base engine's approximate combustion/overlap affect these
numbers strongly. They are prototype comparisons, not real engine predictions.
The benchmark used four solver substeps per output frame. The turbo cost .81
The original benchmark used four solver substeps per output frame. The turbo cost .81
CPU seconds per simulated second at 4000 RPM and 1.28 at 7000 RPM, versus .53
for the unboosted twin. Sustained high-load real-time playback is an open issue;
monitor underruns. The mixed transient cost .84 wall seconds per simulated
second. Tests run headlessly; latest Windows runtime is unverified.
second. The subsequent [optimization audit](OPTIMIZATION.md) resolves the
subnormal-tracer slowdown and measures about .65 seconds per simulated second
in its 7,000-RPM workload. Tests run headlessly; latest Windows runtime is unverified.
## Run

View File

@@ -0,0 +1,30 @@
twin second=1 subnormal_cell_fields=0
twin second=2 subnormal_cell_fields=0
twin second=3 subnormal_cell_fields=0
twin second=4 subnormal_cell_fields=0
twin second=5 subnormal_cell_fields=0
twin second=6 subnormal_cell_fields=0
turbo second=1 subnormal_cell_fields=22
turbo second=2 subnormal_cell_fields=22
turbo second=3 subnormal_cell_fields=22
turbo second=4 subnormal_cell_fields=22
turbo second=5 subnormal_cell_fields=22
turbo second=6 subnormal_cell_fields=22
b205 second=1 subnormal_cell_fields=0
b205 second=2 subnormal_cell_fields=0
b205 second=3 subnormal_cell_fields=0
b205 second=4 subnormal_cell_fields=0
b205 second=5 subnormal_cell_fields=0
b205 second=6 subnormal_cell_fields=0
two-stroke-racing second=1 subnormal_cell_fields=0
two-stroke-racing second=2 subnormal_cell_fields=0
two-stroke-racing second=3 subnormal_cell_fields=0
two-stroke-racing second=4 subnormal_cell_fields=0
two-stroke-racing second=5 subnormal_cell_fields=0
two-stroke-racing second=6 subnormal_cell_fields=0
two-stroke-straight second=1 subnormal_cell_fields=0
two-stroke-straight second=2 subnormal_cell_fields=0
two-stroke-straight second=3 subnormal_cell_fields=0
two-stroke-straight second=4 subnormal_cell_fields=0
two-stroke-straight second=5 subnormal_cell_fields=0
two-stroke-straight second=6 subnormal_cell_fields=0

View File

@@ -0,0 +1,43 @@
scenario,second,wall_seconds,checksum
twin,1,0.541263,-0.474995
twin,2,0.528657,0.56663
twin,3,0.5197,-0.445512
twin,4,0.524947,-0.457089
twin,5,0.525219,0.543696
twin,6,0.525349,-0.453353
turbo,1,1.15992,-0.310561
turbo,2,1.40615,0.239385
turbo,3,1.41159,0.0378158
turbo,4,1.40703,-0.317772
turbo,5,1.40288,0.217977
turbo,6,1.42287,0.0202671
b205,1,0.89491,0.37201
b205,2,0.892261,-0.672984
b205,3,0.879947,-0.0819311
b205,4,0.87503,0.383653
b205,5,0.879982,-0.660539
b205,6,0.880262,-0.105939
two-stroke-racing,1,0.559599,0.0799002
two-stroke-racing,2,0.557103,-0.446533
two-stroke-racing,3,0.562561,-0.0135526
two-stroke-racing,4,0.56292,0.0502098
two-stroke-racing,5,0.566538,-0.436311
two-stroke-racing,6,0.556811,0.0131825
two-stroke-straight,1,0.54203,0.451678
two-stroke-straight,2,0.53757,-0.576794
two-stroke-straight,3,0.539195,0.301482
two-stroke-straight,4,0.537166,0.436597
two-stroke-straight,5,0.538783,-0.56488
two-stroke-straight,6,0.539518,0.317271
helmholtz,1,0.16266,0.000610898
helmholtz,2,0.156802,0.000204372
helmholtz,3,0.161843,-9.63693e-05
helmholtz,4,0.175722,4.28612e-07
helmholtz,5,0.173455,4.28612e-07
helmholtz,6,0.17374,4.28612e-07
pulse,1,0.256065,0.155302
pulse,2,0.25603,-0.0240824
pulse,3,0.256108,-0.00420275
pulse,4,0.255712,0.00691116
pulse,5,0.255998,-0.00446426
pulse,6,0.256098,0.00211677
1 scenario second wall_seconds checksum
2 twin 1 0.541263 -0.474995
3 twin 2 0.528657 0.56663
4 twin 3 0.5197 -0.445512
5 twin 4 0.524947 -0.457089
6 twin 5 0.525219 0.543696
7 twin 6 0.525349 -0.453353
8 turbo 1 1.15992 -0.310561
9 turbo 2 1.40615 0.239385
10 turbo 3 1.41159 0.0378158
11 turbo 4 1.40703 -0.317772
12 turbo 5 1.40288 0.217977
13 turbo 6 1.42287 0.0202671
14 b205 1 0.89491 0.37201
15 b205 2 0.892261 -0.672984
16 b205 3 0.879947 -0.0819311
17 b205 4 0.87503 0.383653
18 b205 5 0.879982 -0.660539
19 b205 6 0.880262 -0.105939
20 two-stroke-racing 1 0.559599 0.0799002
21 two-stroke-racing 2 0.557103 -0.446533
22 two-stroke-racing 3 0.562561 -0.0135526
23 two-stroke-racing 4 0.56292 0.0502098
24 two-stroke-racing 5 0.566538 -0.436311
25 two-stroke-racing 6 0.556811 0.0131825
26 two-stroke-straight 1 0.54203 0.451678
27 two-stroke-straight 2 0.53757 -0.576794
28 two-stroke-straight 3 0.539195 0.301482
29 two-stroke-straight 4 0.537166 0.436597
30 two-stroke-straight 5 0.538783 -0.56488
31 two-stroke-straight 6 0.539518 0.317271
32 helmholtz 1 0.16266 0.000610898
33 helmholtz 2 0.156802 0.000204372
34 helmholtz 3 0.161843 -9.63693e-05
35 helmholtz 4 0.175722 4.28612e-07
36 helmholtz 5 0.173455 4.28612e-07
37 helmholtz 6 0.17374 4.28612e-07
38 pulse 1 0.256065 0.155302
39 pulse 2 0.25603 -0.0240824
40 pulse 3 0.256108 -0.00420275
41 pulse 4 0.255712 0.00691116
42 pulse 5 0.255998 -0.00446426
43 pulse 6 0.256098 0.00211677

View File

@@ -0,0 +1,43 @@
scenario,second,wall_seconds,checksum
twin,1,0.39941,-0.0283469
twin,2,0.39433,0.0344893
twin,3,0.392258,0.0739791
twin,4,0.39095,0.0786597
twin,5,0.392216,-0.0207043
twin,6,0.393483,-0.195189
turbo,1,0.660359,-0.0302299
turbo,2,0.618997,-0.0283187
turbo,3,0.616863,-0.0501136
turbo,4,0.622639,0.00249347
turbo,5,0.622078,-0.0029317
turbo,6,0.619506,0.0828663
b205,1,0.668236,0.274864
b205,2,0.663904,-1.06343
b205,3,0.675893,-0.186468
b205,4,0.664992,-0.896026
b205,5,0.675325,-1.3108
b205,6,0.650313,1.14027
two-stroke-racing,1,0.433659,-0.00810563
two-stroke-racing,2,0.458929,-0.0171482
two-stroke-racing,3,0.451155,-0.0116779
two-stroke-racing,4,0.451558,-0.00741182
two-stroke-racing,5,0.449763,-0.0575893
two-stroke-racing,6,0.455667,0.0116538
two-stroke-straight,1,0.455246,-0.00988272
two-stroke-straight,2,0.452271,-0.145458
two-stroke-straight,3,0.450603,-0.0420168
two-stroke-straight,4,0.451646,0.115697
two-stroke-straight,5,0.453984,0.104074
two-stroke-straight,6,0.45035,-0.169018
helmholtz,1,0.139612,0.000636785
helmholtz,2,0.150413,0.00020821
helmholtz,3,0.146235,2.83233e-05
helmholtz,4,0.15035,2.23088e-05
helmholtz,5,0.140412,-1.88624e-07
helmholtz,6,0.117403,-1.88624e-07
pulse,1,0.236966,0.155302
pulse,2,0.237632,-0.0240824
pulse,3,0.238374,-0.00420275
pulse,4,0.238214,0.00691116
pulse,5,0.236785,-0.00446426
pulse,6,0.238714,0.00211677
1 scenario second wall_seconds checksum
2 twin 1 0.39941 -0.0283469
3 twin 2 0.39433 0.0344893
4 twin 3 0.392258 0.0739791
5 twin 4 0.39095 0.0786597
6 twin 5 0.392216 -0.0207043
7 twin 6 0.393483 -0.195189
8 turbo 1 0.660359 -0.0302299
9 turbo 2 0.618997 -0.0283187
10 turbo 3 0.616863 -0.0501136
11 turbo 4 0.622639 0.00249347
12 turbo 5 0.622078 -0.0029317
13 turbo 6 0.619506 0.0828663
14 b205 1 0.668236 0.274864
15 b205 2 0.663904 -1.06343
16 b205 3 0.675893 -0.186468
17 b205 4 0.664992 -0.896026
18 b205 5 0.675325 -1.3108
19 b205 6 0.650313 1.14027
20 two-stroke-racing 1 0.433659 -0.00810563
21 two-stroke-racing 2 0.458929 -0.0171482
22 two-stroke-racing 3 0.451155 -0.0116779
23 two-stroke-racing 4 0.451558 -0.00741182
24 two-stroke-racing 5 0.449763 -0.0575893
25 two-stroke-racing 6 0.455667 0.0116538
26 two-stroke-straight 1 0.455246 -0.00988272
27 two-stroke-straight 2 0.452271 -0.145458
28 two-stroke-straight 3 0.450603 -0.0420168
29 two-stroke-straight 4 0.451646 0.115697
30 two-stroke-straight 5 0.453984 0.104074
31 two-stroke-straight 6 0.45035 -0.169018
32 helmholtz 1 0.139612 0.000636785
33 helmholtz 2 0.150413 0.00020821
34 helmholtz 3 0.146235 2.83233e-05
35 helmholtz 4 0.15035 2.23088e-05
36 helmholtz 5 0.140412 -1.88624e-07
37 helmholtz 6 0.117403 -1.88624e-07
38 pulse 1 0.236966 0.155302
39 pulse 2 0.237632 -0.0240824
40 pulse 3 0.238374 -0.00420275
41 pulse 4 0.238214 0.00691116
42 pulse 5 0.236785 -0.00446426
43 pulse 6 0.238714 0.00211677

View File

@@ -0,0 +1,30 @@
twin second=1 subnormal_cell_fields=0
twin second=2 subnormal_cell_fields=0
twin second=3 subnormal_cell_fields=0
twin second=4 subnormal_cell_fields=0
twin second=5 subnormal_cell_fields=0
twin second=6 subnormal_cell_fields=0
turbo second=1 subnormal_cell_fields=0
turbo second=2 subnormal_cell_fields=0
turbo second=3 subnormal_cell_fields=0
turbo second=4 subnormal_cell_fields=0
turbo second=5 subnormal_cell_fields=0
turbo second=6 subnormal_cell_fields=0
b205 second=1 subnormal_cell_fields=0
b205 second=2 subnormal_cell_fields=0
b205 second=3 subnormal_cell_fields=0
b205 second=4 subnormal_cell_fields=0
b205 second=5 subnormal_cell_fields=0
b205 second=6 subnormal_cell_fields=0
two-stroke-racing second=1 subnormal_cell_fields=0
two-stroke-racing second=2 subnormal_cell_fields=0
two-stroke-racing second=3 subnormal_cell_fields=0
two-stroke-racing second=4 subnormal_cell_fields=0
two-stroke-racing second=5 subnormal_cell_fields=0
two-stroke-racing second=6 subnormal_cell_fields=0
two-stroke-straight second=1 subnormal_cell_fields=0
two-stroke-straight second=2 subnormal_cell_fields=0
two-stroke-straight second=3 subnormal_cell_fields=0
two-stroke-straight second=4 subnormal_cell_fields=0
two-stroke-straight second=5 subnormal_cell_fields=0
two-stroke-straight second=6 subnormal_cell_fields=0

View File

@@ -0,0 +1,43 @@
scenario,second,wall_seconds,checksum
twin,1,0.406471,-0.474996
twin,2,0.399598,0.566629
twin,3,0.404976,-0.445512
twin,4,0.406038,-0.457089
twin,5,0.407558,0.543696
twin,6,0.406988,-0.453352
turbo,1,0.681746,-0.310561
turbo,2,0.643922,0.239385
turbo,3,0.646531,0.037816
turbo,4,0.639071,-0.317772
turbo,5,0.64264,0.217976
turbo,6,0.641204,0.0202668
b205,1,0.684996,0.372009
b205,2,0.687167,-0.672981
b205,3,0.686279,-0.0819324
b205,4,0.685947,0.383653
b205,5,0.703778,-0.660537
b205,6,0.684529,-0.105941
two-stroke-racing,1,0.471101,0.0798995
two-stroke-racing,2,0.4718,-0.446533
two-stroke-racing,3,0.469381,-0.0135509
two-stroke-racing,4,0.469582,0.0502136
two-stroke-racing,5,0.468865,-0.436305
two-stroke-racing,6,0.468437,0.0131878
two-stroke-straight,1,0.464019,0.45168
two-stroke-straight,2,0.460395,-0.576791
two-stroke-straight,3,0.463492,0.301486
two-stroke-straight,4,0.463567,0.436602
two-stroke-straight,5,0.465461,-0.564872
two-stroke-straight,6,0.464165,0.317279
helmholtz,1,0.140996,0.000636785
helmholtz,2,0.150978,0.00020821
helmholtz,3,0.146364,2.83233e-05
helmholtz,4,0.150862,2.23088e-05
helmholtz,5,0.139892,-1.88624e-07
helmholtz,6,0.116593,-1.88624e-07
pulse,1,0.237912,0.155302
pulse,2,0.23779,-0.0240824
pulse,3,0.236885,-0.00420275
pulse,4,0.238309,0.00691116
pulse,5,0.238156,-0.00446426
pulse,6,0.238296,0.00211677
1 scenario second wall_seconds checksum
2 twin 1 0.406471 -0.474996
3 twin 2 0.399598 0.566629
4 twin 3 0.404976 -0.445512
5 twin 4 0.406038 -0.457089
6 twin 5 0.407558 0.543696
7 twin 6 0.406988 -0.453352
8 turbo 1 0.681746 -0.310561
9 turbo 2 0.643922 0.239385
10 turbo 3 0.646531 0.037816
11 turbo 4 0.639071 -0.317772
12 turbo 5 0.64264 0.217976
13 turbo 6 0.641204 0.0202668
14 b205 1 0.684996 0.372009
15 b205 2 0.687167 -0.672981
16 b205 3 0.686279 -0.0819324
17 b205 4 0.685947 0.383653
18 b205 5 0.703778 -0.660537
19 b205 6 0.684529 -0.105941
20 two-stroke-racing 1 0.471101 0.0798995
21 two-stroke-racing 2 0.4718 -0.446533
22 two-stroke-racing 3 0.469381 -0.0135509
23 two-stroke-racing 4 0.469582 0.0502136
24 two-stroke-racing 5 0.468865 -0.436305
25 two-stroke-racing 6 0.468437 0.0131878
26 two-stroke-straight 1 0.464019 0.45168
27 two-stroke-straight 2 0.460395 -0.576791
28 two-stroke-straight 3 0.463492 0.301486
29 two-stroke-straight 4 0.463567 0.436602
30 two-stroke-straight 5 0.465461 -0.564872
31 two-stroke-straight 6 0.464165 0.317279
32 helmholtz 1 0.140996 0.000636785
33 helmholtz 2 0.150978 0.00020821
34 helmholtz 3 0.146364 2.83233e-05
35 helmholtz 4 0.150862 2.23088e-05
36 helmholtz 5 0.139892 -1.88624e-07
37 helmholtz 6 0.116593 -1.88624e-07
38 pulse 1 0.237912 0.155302
39 pulse 2 0.23779 -0.0240824
40 pulse 3 0.236885 -0.00420275
41 pulse 4 0.238309 0.00691116
42 pulse 5 0.238156 -0.00446426
43 pulse 6 0.238296 0.00211677

View File

@@ -0,0 +1,43 @@
scenario,second,wall_seconds,checksum
twin,1,0.404945,-0.474997
twin,2,0.394585,0.566634
twin,3,0.392608,-0.445506
twin,4,0.393395,-0.457098
twin,5,0.390801,0.543708
twin,6,0.391814,-0.453348
turbo,1,0.666509,-0.310561
turbo,2,0.614616,0.239377
turbo,3,0.623926,0.0378054
turbo,4,0.623417,-0.317773
turbo,5,0.624208,0.217954
turbo,6,0.623219,0.0202511
b205,1,0.669162,0.372021
b205,2,0.667619,-0.672981
b205,3,0.666157,-0.0819704
b205,4,0.663694,0.383699
b205,5,0.66461,-0.660516
b205,6,0.660155,-0.106025
two-stroke-racing,1,0.450183,0.079881
two-stroke-racing,2,0.43969,-0.446531
two-stroke-racing,3,0.43438,-0.0135516
two-stroke-racing,4,0.435173,0.0501685
two-stroke-racing,5,0.439108,-0.436284
two-stroke-racing,6,0.436695,0.0132443
two-stroke-straight,1,0.430592,0.451674
two-stroke-straight,2,0.431947,-0.576801
two-stroke-straight,3,0.435235,0.301495
two-stroke-straight,4,0.43456,0.436544
two-stroke-straight,5,0.434657,-0.564871
two-stroke-straight,6,0.434816,0.317316
helmholtz,1,0.132025,0.000620049
helmholtz,2,0.141761,0.000208197
helmholtz,3,0.137805,-0.00013923
helmholtz,4,0.136093,-7.93035e-05
helmholtz,5,0.123899,-9.85328e-07
helmholtz,6,0.107671,-9.85328e-07
pulse,1,0.205303,0.155306
pulse,2,0.206141,-0.0240772
pulse,3,0.204146,-0.00422162
pulse,4,0.204149,0.00692384
pulse,5,0.205064,-0.00446612
pulse,6,0.205247,0.0021024
1 scenario second wall_seconds checksum
2 twin 1 0.404945 -0.474997
3 twin 2 0.394585 0.566634
4 twin 3 0.392608 -0.445506
5 twin 4 0.393395 -0.457098
6 twin 5 0.390801 0.543708
7 twin 6 0.391814 -0.453348
8 turbo 1 0.666509 -0.310561
9 turbo 2 0.614616 0.239377
10 turbo 3 0.623926 0.0378054
11 turbo 4 0.623417 -0.317773
12 turbo 5 0.624208 0.217954
13 turbo 6 0.623219 0.0202511
14 b205 1 0.669162 0.372021
15 b205 2 0.667619 -0.672981
16 b205 3 0.666157 -0.0819704
17 b205 4 0.663694 0.383699
18 b205 5 0.66461 -0.660516
19 b205 6 0.660155 -0.106025
20 two-stroke-racing 1 0.450183 0.079881
21 two-stroke-racing 2 0.43969 -0.446531
22 two-stroke-racing 3 0.43438 -0.0135516
23 two-stroke-racing 4 0.435173 0.0501685
24 two-stroke-racing 5 0.439108 -0.436284
25 two-stroke-racing 6 0.436695 0.0132443
26 two-stroke-straight 1 0.430592 0.451674
27 two-stroke-straight 2 0.431947 -0.576801
28 two-stroke-straight 3 0.435235 0.301495
29 two-stroke-straight 4 0.43456 0.436544
30 two-stroke-straight 5 0.434657 -0.564871
31 two-stroke-straight 6 0.434816 0.317316
32 helmholtz 1 0.132025 0.000620049
33 helmholtz 2 0.141761 0.000208197
34 helmholtz 3 0.137805 -0.00013923
35 helmholtz 4 0.136093 -7.93035e-05
36 helmholtz 5 0.123899 -9.85328e-07
37 helmholtz 6 0.107671 -9.85328e-07
38 pulse 1 0.205303 0.155306
39 pulse 2 0.206141 -0.0240772
40 pulse 3 0.204146 -0.00422162
41 pulse 4 0.204149 0.00692384
42 pulse 5 0.205064 -0.00446612
43 pulse 6 0.205247 0.0021024

View File

@@ -0,0 +1,43 @@
scenario,second,wall_seconds,checksum
twin,1,0.429083,-0.474996
twin,2,0.425191,0.566629
twin,3,0.422704,-0.445512
twin,4,0.422067,-0.457089
twin,5,0.423142,0.543696
twin,6,0.417602,-0.453352
turbo,1,0.722612,-0.310561
turbo,2,0.678594,0.239385
turbo,3,0.676959,0.037816
turbo,4,0.675587,-0.317772
turbo,5,0.677697,0.217976
turbo,6,0.674842,0.0202668
b205,1,0.733499,0.372009
b205,2,0.738059,-0.672981
b205,3,0.739555,-0.0819324
b205,4,0.733441,0.383653
b205,5,0.737382,-0.660537
b205,6,0.740199,-0.105941
two-stroke-racing,1,0.532053,0.0798995
two-stroke-racing,2,0.530479,-0.446533
two-stroke-racing,3,0.535284,-0.0135509
two-stroke-racing,4,0.538289,0.0502136
two-stroke-racing,5,0.537818,-0.436305
two-stroke-racing,6,0.536216,0.0131878
two-stroke-straight,1,0.526753,0.45168
two-stroke-straight,2,0.530518,-0.576791
two-stroke-straight,3,0.515521,0.301486
two-stroke-straight,4,0.531466,0.436602
two-stroke-straight,5,0.523436,-0.564872
two-stroke-straight,6,0.522323,0.317279
helmholtz,1,0.160304,0.000636785
helmholtz,2,0.171026,0.00020821
helmholtz,3,0.166819,2.83233e-05
helmholtz,4,0.172109,2.23088e-05
helmholtz,5,0.159173,-1.88624e-07
helmholtz,6,0.130939,-1.88624e-07
pulse,1,0.30969,0.155302
pulse,2,0.314339,-0.0240824
pulse,3,0.318903,-0.00420275
pulse,4,0.317587,0.00691116
pulse,5,0.317432,-0.00446426
pulse,6,0.313647,0.00211677
1 scenario second wall_seconds checksum
2 twin 1 0.429083 -0.474996
3 twin 2 0.425191 0.566629
4 twin 3 0.422704 -0.445512
5 twin 4 0.422067 -0.457089
6 twin 5 0.423142 0.543696
7 twin 6 0.417602 -0.453352
8 turbo 1 0.722612 -0.310561
9 turbo 2 0.678594 0.239385
10 turbo 3 0.676959 0.037816
11 turbo 4 0.675587 -0.317772
12 turbo 5 0.677697 0.217976
13 turbo 6 0.674842 0.0202668
14 b205 1 0.733499 0.372009
15 b205 2 0.738059 -0.672981
16 b205 3 0.739555 -0.0819324
17 b205 4 0.733441 0.383653
18 b205 5 0.737382 -0.660537
19 b205 6 0.740199 -0.105941
20 two-stroke-racing 1 0.532053 0.0798995
21 two-stroke-racing 2 0.530479 -0.446533
22 two-stroke-racing 3 0.535284 -0.0135509
23 two-stroke-racing 4 0.538289 0.0502136
24 two-stroke-racing 5 0.537818 -0.436305
25 two-stroke-racing 6 0.536216 0.0131878
26 two-stroke-straight 1 0.526753 0.45168
27 two-stroke-straight 2 0.530518 -0.576791
28 two-stroke-straight 3 0.515521 0.301486
29 two-stroke-straight 4 0.531466 0.436602
30 two-stroke-straight 5 0.523436 -0.564872
31 two-stroke-straight 6 0.522323 0.317279
32 helmholtz 1 0.160304 0.000636785
33 helmholtz 2 0.171026 0.00020821
34 helmholtz 3 0.166819 2.83233e-05
35 helmholtz 4 0.172109 2.23088e-05
36 helmholtz 5 0.159173 -1.88624e-07
37 helmholtz 6 0.130939 -1.88624e-07
38 pulse 1 0.30969 0.155302
39 pulse 2 0.314339 -0.0240824
40 pulse 3 0.318903 -0.00420275
41 pulse 4 0.317587 0.00691116
42 pulse 5 0.317432 -0.00446426
43 pulse 6 0.313647 0.00211677

View File

@@ -0,0 +1,24 @@
scenario=twin pipes=6 workers=1 steps=4000 seconds=0.00275881 checksum=607950
scenario=twin pipes=6 workers=2 steps=4000 seconds=0.00970369 checksum=607950
scenario=twin pipes=6 workers=4 steps=4000 seconds=0.00580565 checksum=607950
scenario=turbo pipes=8 workers=1 steps=4000 seconds=0.00438693 checksum=810600
scenario=turbo pipes=8 workers=2 steps=4000 seconds=0.0124137 checksum=810600
scenario=turbo pipes=8 workers=4 steps=4000 seconds=0.00970905 checksum=810600
scenario=b205 pipes=10 workers=1 steps=4000 seconds=0.00516911 checksum=1.01325e+06
scenario=b205 pipes=10 workers=2 steps=4000 seconds=0.014045 checksum=1.01325e+06
scenario=b205 pipes=10 workers=4 steps=4000 seconds=0.0101158 checksum=1.01325e+06
scenario=two-stroke-racing pipes=4 workers=1 steps=4000 seconds=0.00631318 checksum=405300
scenario=two-stroke-racing pipes=4 workers=2 steps=4000 seconds=0.0129319 checksum=405300
scenario=two-stroke-racing pipes=4 workers=4 steps=4000 seconds=0.0219618 checksum=405300
scenario=two-stroke-straight pipes=4 workers=1 steps=4000 seconds=0.0120785 checksum=405300
scenario=two-stroke-straight pipes=4 workers=2 steps=4000 seconds=0.0213055 checksum=405300
scenario=two-stroke-straight pipes=4 workers=4 steps=4000 seconds=0.0239495 checksum=405300
scenario=helmholtz pipes=1 workers=1 steps=4000 seconds=0.000931972 checksum=101325
scenario=helmholtz pipes=1 workers=2 steps=4000 seconds=0.00404044 checksum=101325
scenario=helmholtz pipes=1 workers=4 steps=4000 seconds=0.00449503 checksum=101325
scenario=pulse pipes=1 workers=1 steps=4000 seconds=0.00689863 checksum=125674
scenario=pulse pipes=1 workers=2 steps=4000 seconds=0.0155282 checksum=125674
scenario=pulse pipes=1 workers=4 steps=4000 seconds=0.0233903 checksum=125674
scenario=large pipes=64 workers=1 steps=4000 seconds=0.577183 checksum=6.4848e+06
scenario=large pipes=64 workers=2 steps=4000 seconds=0.321996 checksum=6.4848e+06
scenario=large pipes=64 workers=4 steps=4000 seconds=0.186585 checksum=6.4848e+06

View File

@@ -0,0 +1,43 @@
scenario,second,wall_seconds,checksum
twin,1,0.409869,-0.0283469
twin,2,0.402371,0.80967
twin,3,0.403052,-0.911818
twin,4,0.402699,0.534151
twin,5,0.400457,0.207363
twin,6,0.373759,0.0279407
turbo,1,0.659625,-0.0302299
turbo,2,0.644645,-0.0319911
turbo,3,0.651985,0.186487
turbo,4,0.638045,-0.153387
turbo,5,0.681532,-0.0672159
turbo,6,0.632109,-0.00641479
b205,1,0.676147,0.274864
b205,2,0.689301,-0.142368
b205,3,0.683649,-1.24857
b205,4,0.684867,0.692396
b205,5,0.691513,-0.277036
b205,6,0.671074,3.18497
two-stroke-racing,1,0.439156,-0.00810563
two-stroke-racing,2,0.476664,-0.0454537
two-stroke-racing,3,0.491684,0.182272
two-stroke-racing,4,0.481265,0.0605218
two-stroke-racing,5,0.460421,-0.042154
two-stroke-racing,6,0.404627,-0.0445087
two-stroke-straight,1,0.462682,-0.00988272
two-stroke-straight,2,0.465014,0.834933
two-stroke-straight,3,0.463,-0.788353
two-stroke-straight,4,0.462517,-0.624996
two-stroke-straight,5,0.447777,-0.229619
two-stroke-straight,6,0.416485,0.0188991
helmholtz,1,0.141009,0.000636785
helmholtz,2,0.150956,0.00020821
helmholtz,3,0.146729,2.83233e-05
helmholtz,4,0.148541,2.23088e-05
helmholtz,5,0.138622,-1.88624e-07
helmholtz,6,0.116949,-1.88624e-07
pulse,1,0.238432,0.155302
pulse,2,0.238248,-0.0240824
pulse,3,0.236267,-0.00420275
pulse,4,0.236616,0.00691116
pulse,5,0.237568,-0.00446426
pulse,6,0.237908,0.00211677
1 scenario second wall_seconds checksum
2 twin 1 0.409869 -0.0283469
3 twin 2 0.402371 0.80967
4 twin 3 0.403052 -0.911818
5 twin 4 0.402699 0.534151
6 twin 5 0.400457 0.207363
7 twin 6 0.373759 0.0279407
8 turbo 1 0.659625 -0.0302299
9 turbo 2 0.644645 -0.0319911
10 turbo 3 0.651985 0.186487
11 turbo 4 0.638045 -0.153387
12 turbo 5 0.681532 -0.0672159
13 turbo 6 0.632109 -0.00641479
14 b205 1 0.676147 0.274864
15 b205 2 0.689301 -0.142368
16 b205 3 0.683649 -1.24857
17 b205 4 0.684867 0.692396
18 b205 5 0.691513 -0.277036
19 b205 6 0.671074 3.18497
20 two-stroke-racing 1 0.439156 -0.00810563
21 two-stroke-racing 2 0.476664 -0.0454537
22 two-stroke-racing 3 0.491684 0.182272
23 two-stroke-racing 4 0.481265 0.0605218
24 two-stroke-racing 5 0.460421 -0.042154
25 two-stroke-racing 6 0.404627 -0.0445087
26 two-stroke-straight 1 0.462682 -0.00988272
27 two-stroke-straight 2 0.465014 0.834933
28 two-stroke-straight 3 0.463 -0.788353
29 two-stroke-straight 4 0.462517 -0.624996
30 two-stroke-straight 5 0.447777 -0.229619
31 two-stroke-straight 6 0.416485 0.0188991
32 helmholtz 1 0.141009 0.000636785
33 helmholtz 2 0.150956 0.00020821
34 helmholtz 3 0.146729 2.83233e-05
35 helmholtz 4 0.148541 2.23088e-05
36 helmholtz 5 0.138622 -1.88624e-07
37 helmholtz 6 0.116949 -1.88624e-07
38 pulse 1 0.238432 0.155302
39 pulse 2 0.238248 -0.0240824
40 pulse 3 0.236267 -0.00420275
41 pulse 4 0.236616 0.00691116
42 pulse 5 0.237568 -0.00446426
43 pulse 6 0.237908 0.00211677

View File

@@ -0,0 +1,186 @@
Start testing: Oct 23 02:38 CEST
----------------------------------------------------------
1/9 Testing: fluidsim_physics_tests
1/9 Test: fluidsim_physics_tests
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_physics_tests"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_physics_tests" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
FluidSim C++ physics tests passed
<end of output>
Test time = 2.67 sec
----------------------------------------------------------
Test Passed.
"fluidsim_physics_tests" end time: Oct 23 02:38 CEST
"fluidsim_physics_tests" time elapsed: 00:00:02
----------------------------------------------------------
2/9 Testing: fluidsim_fluid_validation
2/9 Test: fluidsim_fluid_validation
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_fluid_validation"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_fluid_validation" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
PASS tracer underflow preserves bulk gas and normal concentrations
PASS invalid uniform geometry
PASS closed pipe conservation
PASS profiled pipe conservation
PASS volume pipe sealed conservation
PASS equal pressure hot contact
PASS NASA choked nozzle mass flow
PASS inertance units
PASS moving volume adiabatic law
PASS profile at rest is well balanced
PASS pipe connection all four orientations
PASS split pipe matches unsplit pipe
PASS three volumes shared donor conservation
PASS open boundary reports actual conserved flux both ends
PASS duplicate and invalid boundary rejection
PASS supersonic outlet extrapolates
PASS underdefined supersonic inlet rejected
PASS closed and open acoustic reflection signs
Sod n=100 density L1=0.0233209
Sod n=200 density L1=0.0159539
Sod n=400 density L1=0.0105216
PASS Sod shock tube convergence
PASS strong pulse and near-vacuum rarefaction
Helmholtz frequency=135.6 analytic lumped=138.508
PASS small-signal Helmholtz resonance
PASS invalid volume and timestep rejection
PASS fresh-air species conservation across connection
PASS unsupported unequal junction rejected
PASS unconnected endpoint rejected by solver
closed mode n=50 f=171.897 analytic=171.91
closed mode n=100 f=171.914 analytic=171.91
closed mode n=200 f=171.911 analytic=171.91
PASS closed duct acoustic eigenfrequency
PASS inertance impulse and dissipative resistance
PASS incompatible gas coupling rejected
PASS thermal relaxation matches analytic energy decay
PASS sealed crankcase compression conserves mass above five bar
30/30 passed
<end of output>
Test time = 0.12 sec
----------------------------------------------------------
Test Passed.
"fluidsim_fluid_validation" end time: Oct 23 02:38 CEST
"fluidsim_fluid_validation" time elapsed: 00:00:00
----------------------------------------------------------
3/9 Testing: fluidsim_intake_regression
3/9 Test: fluidsim_intake_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_intake_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_intake_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Intake regression passed: idle_MAP=35.764 kPa, open_MAP=85.4564 kPa, open_T=298.957 K, inlet_T=296.92 K, recovered_MAP=34.502 kPa, recovered_RPM=1820.05
<end of output>
Test time = 6.61 sec
----------------------------------------------------------
Test Passed.
"fluidsim_intake_regression" end time: Oct 23 02:38 CEST
"fluidsim_intake_regression" time elapsed: 00:00:06
----------------------------------------------------------
4/9 Testing: fluidsim_outdoor_audio_tests
4/9 Test: fluidsim_outdoor_audio_tests
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_outdoor_audio_tests"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_outdoor_audio_tests" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Outdoor audio tests passed: direct=385 samples, ground=463 samples, filtered step ratio=0.155034, stereo lead=7 samples
<end of output>
Test time = 0.02 sec
----------------------------------------------------------
Test Passed.
"fluidsim_outdoor_audio_tests" end time: Oct 23 02:38 CEST
"fluidsim_outdoor_audio_tests" time elapsed: 00:00:00
----------------------------------------------------------
5/9 Testing: fluidsim_two_stroke_regression
5/9 Test: fluidsim_two_stroke_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_two_stroke_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_two_stroke_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Two-stroke regression passed: peak=0.2566, maximum RPM=16127.3, recovered RPM=3158.32, bike speed=61.2948 km/h
<end of output>
Test time = 10.39 sec
----------------------------------------------------------
Test Passed.
"fluidsim_two_stroke_regression" end time: Oct 23 02:38 CEST
"fluidsim_two_stroke_regression" time elapsed: 00:00:10
----------------------------------------------------------
6/9 Testing: fluidsim_two_stroke_physics
6/9 Test: fluidsim_two_stroke_physics
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_two_stroke_physics"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_two_stroke_physics" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Two-stroke physics passed: diffuser reflection=-34.3281 Pa, baffle reflection=27.5234 Pa, first reduction=30.2759
<end of output>
Test time = 0.01 sec
----------------------------------------------------------
Test Passed.
"fluidsim_two_stroke_physics" end time: Oct 23 02:38 CEST
"fluidsim_two_stroke_physics" time elapsed: 00:00:00
----------------------------------------------------------
7/9 Testing: fluidsim_b205_regression
7/9 Test: fluidsim_b205_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_b205_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_b205_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
B205 passed: firing events=33, wagon speed=56.5685 km/h, recovered RPM=1311.5, audio peak=0.186449, wall seconds=5.89428 for 8 simulated seconds
<end of output>
Test time = 5.90 sec
----------------------------------------------------------
Test Passed.
"fluidsim_b205_regression" end time: Oct 23 02:38 CEST
"fluidsim_b205_regression" time elapsed: 00:00:05
----------------------------------------------------------
8/9 Testing: fluidsim_turbo_physics
8/9 Test: fluidsim_turbo_physics
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_turbo_physics"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_turbo_physics" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Closed balance initial_rpm=0 mass_error=0 energy_error=-1.59125e-07 J
Closed balance initial_rpm=120000 mass_error=0 energy_error=-7.09297e-07 J
Turbo pipe bench passed: rpm=189122 compressor flow=0.0306693 kg/s, charge T=375.978 K, turbine power range=1189.38..4022.29 W, residual=-5.44049e-06 J
<end of output>
Test time = 0.32 sec
----------------------------------------------------------
Test Passed.
"fluidsim_turbo_physics" end time: Oct 23 02:38 CEST
"fluidsim_turbo_physics" time elapsed: 00:00:00
----------------------------------------------------------
9/9 Testing: fluidsim_turbo_twin_regression
9/9 Test: fluidsim_turbo_twin_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-simd-off/fluidsim_turbo_twin_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-simd-off
"fluidsim_turbo_twin_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Turbo twin passed: max_rpm=236218, max_charge=181.458 kPa, max_turbine_pressure=674.103 kPa, gate=2.7762 mm, final_rpm=151754, peak_audio=0.0293228, energy_residual=2.16491e-06 J
<end of output>
Test time = 4.83 sec
----------------------------------------------------------
Test Passed.
"fluidsim_turbo_twin_regression" end time: Oct 23 02:38 CEST
"fluidsim_turbo_twin_regression" time elapsed: 00:00:04
----------------------------------------------------------
End testing: Oct 23 02:38 CEST

View File

@@ -0,0 +1,186 @@
Start testing: Oct 23 02:37 CEST
----------------------------------------------------------
1/9 Testing: fluidsim_physics_tests
1/9 Test: fluidsim_physics_tests
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_physics_tests"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_physics_tests" start time: Oct 23 02:37 CEST
Output:
----------------------------------------------------------
FluidSim C++ physics tests passed
<end of output>
Test time = 2.51 sec
----------------------------------------------------------
Test Passed.
"fluidsim_physics_tests" end time: Oct 23 02:37 CEST
"fluidsim_physics_tests" time elapsed: 00:00:02
----------------------------------------------------------
2/9 Testing: fluidsim_fluid_validation
2/9 Test: fluidsim_fluid_validation
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_fluid_validation"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_fluid_validation" start time: Oct 23 02:37 CEST
Output:
----------------------------------------------------------
PASS tracer underflow preserves bulk gas and normal concentrations
PASS invalid uniform geometry
PASS closed pipe conservation
PASS profiled pipe conservation
PASS volume pipe sealed conservation
PASS equal pressure hot contact
PASS NASA choked nozzle mass flow
PASS inertance units
PASS moving volume adiabatic law
PASS profile at rest is well balanced
PASS pipe connection all four orientations
PASS split pipe matches unsplit pipe
PASS three volumes shared donor conservation
PASS open boundary reports actual conserved flux both ends
PASS duplicate and invalid boundary rejection
PASS supersonic outlet extrapolates
PASS underdefined supersonic inlet rejected
PASS closed and open acoustic reflection signs
Sod n=100 density L1=0.0233209
Sod n=200 density L1=0.0159539
Sod n=400 density L1=0.0105216
PASS Sod shock tube convergence
PASS strong pulse and near-vacuum rarefaction
Helmholtz frequency=135.6 analytic lumped=138.508
PASS small-signal Helmholtz resonance
PASS invalid volume and timestep rejection
PASS fresh-air species conservation across connection
PASS unsupported unequal junction rejected
PASS unconnected endpoint rejected by solver
closed mode n=50 f=171.897 analytic=171.91
closed mode n=100 f=171.914 analytic=171.91
closed mode n=200 f=171.911 analytic=171.91
PASS closed duct acoustic eigenfrequency
PASS inertance impulse and dissipative resistance
PASS incompatible gas coupling rejected
PASS thermal relaxation matches analytic energy decay
PASS sealed crankcase compression conserves mass above five bar
30/30 passed
<end of output>
Test time = 0.10 sec
----------------------------------------------------------
Test Passed.
"fluidsim_fluid_validation" end time: Oct 23 02:37 CEST
"fluidsim_fluid_validation" time elapsed: 00:00:00
----------------------------------------------------------
3/9 Testing: fluidsim_intake_regression
3/9 Test: fluidsim_intake_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_intake_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_intake_regression" start time: Oct 23 02:37 CEST
Output:
----------------------------------------------------------
Intake regression passed: idle_MAP=35.764 kPa, open_MAP=85.4564 kPa, open_T=298.957 K, inlet_T=296.92 K, recovered_MAP=34.502 kPa, recovered_RPM=1820.05
<end of output>
Test time = 6.26 sec
----------------------------------------------------------
Test Passed.
"fluidsim_intake_regression" end time: Oct 23 02:38 CEST
"fluidsim_intake_regression" time elapsed: 00:00:06
----------------------------------------------------------
4/9 Testing: fluidsim_outdoor_audio_tests
4/9 Test: fluidsim_outdoor_audio_tests
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_outdoor_audio_tests"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_outdoor_audio_tests" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Outdoor audio tests passed: direct=385 samples, ground=463 samples, filtered step ratio=0.155034, stereo lead=7 samples
<end of output>
Test time = 0.02 sec
----------------------------------------------------------
Test Passed.
"fluidsim_outdoor_audio_tests" end time: Oct 23 02:38 CEST
"fluidsim_outdoor_audio_tests" time elapsed: 00:00:00
----------------------------------------------------------
5/9 Testing: fluidsim_two_stroke_regression
5/9 Test: fluidsim_two_stroke_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_two_stroke_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_two_stroke_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Two-stroke regression passed: peak=0.2566, maximum RPM=16127.3, recovered RPM=3158.32, bike speed=61.2948 km/h
<end of output>
Test time = 9.18 sec
----------------------------------------------------------
Test Passed.
"fluidsim_two_stroke_regression" end time: Oct 23 02:38 CEST
"fluidsim_two_stroke_regression" time elapsed: 00:00:09
----------------------------------------------------------
6/9 Testing: fluidsim_two_stroke_physics
6/9 Test: fluidsim_two_stroke_physics
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_two_stroke_physics"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_two_stroke_physics" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Two-stroke physics passed: diffuser reflection=-34.3281 Pa, baffle reflection=27.5234 Pa, first reduction=30.2759
<end of output>
Test time = 0.00 sec
----------------------------------------------------------
Test Passed.
"fluidsim_two_stroke_physics" end time: Oct 23 02:38 CEST
"fluidsim_two_stroke_physics" time elapsed: 00:00:00
----------------------------------------------------------
7/9 Testing: fluidsim_b205_regression
7/9 Test: fluidsim_b205_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_b205_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_b205_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
B205 passed: firing events=33, wagon speed=56.5685 km/h, recovered RPM=1311.5, audio peak=0.186449, wall seconds=5.48769 for 8 simulated seconds
<end of output>
Test time = 5.49 sec
----------------------------------------------------------
Test Passed.
"fluidsim_b205_regression" end time: Oct 23 02:38 CEST
"fluidsim_b205_regression" time elapsed: 00:00:05
----------------------------------------------------------
8/9 Testing: fluidsim_turbo_physics
8/9 Test: fluidsim_turbo_physics
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_turbo_physics"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_turbo_physics" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Closed balance initial_rpm=0 mass_error=0 energy_error=-1.59125e-07 J
Closed balance initial_rpm=120000 mass_error=0 energy_error=-7.09297e-07 J
Turbo pipe bench passed: rpm=189122 compressor flow=0.0306693 kg/s, charge T=375.978 K, turbine power range=1189.38..4022.29 W, residual=-5.44049e-06 J
<end of output>
Test time = 0.31 sec
----------------------------------------------------------
Test Passed.
"fluidsim_turbo_physics" end time: Oct 23 02:38 CEST
"fluidsim_turbo_physics" time elapsed: 00:00:00
----------------------------------------------------------
9/9 Testing: fluidsim_turbo_twin_regression
9/9 Test: fluidsim_turbo_twin_regression
Command: "/home/grillkol/repos/FluidSimCpp/build-audit/fluidsim_turbo_twin_regression"
Directory: /home/grillkol/repos/FluidSimCpp/build-audit
"fluidsim_turbo_twin_regression" start time: Oct 23 02:38 CEST
Output:
----------------------------------------------------------
Turbo twin passed: max_rpm=236218, max_charge=181.458 kPa, max_turbine_pressure=674.103 kPa, gate=2.7762 mm, final_rpm=151754, peak_audio=0.0293228, energy_residual=2.16491e-06 J
<end of output>
Test time = 4.61 sec
----------------------------------------------------------
Test Passed.
"fluidsim_turbo_twin_regression" end time: Oct 23 02:38 CEST
"fluidsim_turbo_twin_regression" time elapsed: 00:00:04
----------------------------------------------------------
End testing: Oct 23 02:38 CEST