v2.0.0 - Vectorized (current release)
Vectorization release — flowsim-artur campaign 2026-07
Result of the 2026-07 vectorization campaign under owner grant + AXON code-dev (see CHANGELOG.md).
Highlights
- ✅ LPEW2 pipeline fully vectorized — bit-identical to legacy at 1e-15 rel
- ✅ MPFA-D assembly fully vectorized — bit-identical to golden baseline
- ✅ TPFA assembly vectorized (rename; legacy already was)
- 🔧 MPFA-H / NLFV-PP / MPFA-QL / DMP / NLFV-H — scaffolded, delegate to legacy (full vectorization is future work, see
docs/globals-audit.md) - ✅ OOP hierarchy unified under
MetodoBase— all 5 methods instantiate - ✅ Test harness — ~500 assertions, 0 regressions, golden oracle
- ✅ mrun — WSL headless MATLAB bridge
- ✅ 6 docs — README + CHANGELOG + code-map + how-to-use + vectorization-guide + globals-audit
Repo transformation (vs v1.0.0)
| Metric | v1.0.0 | v2.0.0 | Delta |
|---|---|---|---|
Root .m count |
285 | 4 | -281 (-98.6%) |
| Tracked repo size | 176 MB | ~10 MB | -166 MB |
| Test assertions | 0 | ~500 | +500 |
| Vectorized modules | 0 | ~30 in 12 packages | - |
Runtime compatibility
- 100% backward-compatible. Legacy code retained in
legacy/**, on path viaflowsim_initgenpath.main.mproduces identical numerical output.
Deferred to future PRs (fully documented)
- Full triplet-form rewrite of MPFA-H / NLFV-PP / MPFA-QL / DMP / NLFV-H (~30-45 hours per
docs/globals-audit.md) - Kill globals in reachable legacy set (requires tandem caller+callee migration)
- Additional rename of cross-cluster kernels beyond the
+fs.iter.*++fs.lpew.dmpWeightsshims
How to use
cd /path/to/FlowSim
flowsim_init % sets up all paths (+fs/ first, legacy/ last)
main % reads Start.dat, runs the configured caseOr headless from WSL:
tools/mrun -c $(pwd) main.mSee README.md for full quick start.