Exasim v1.4 Release Notes
Release date: 2026-02-15
Target branch: master
Comparison: v1.2...master
Executive summary
Exasim v1.4 consolidates backend solver and postprocessing upgrades, expands MATLAB/frontend mesh and boundary-expression tooling, broadens example coverage (including quick regression runs), improves multi-app execution/logging workflows, and advances Text2Code and coupled-solver functionality. This release also includes substantial repository hygiene improvements for generated artifacts and ignore rules.
Release scope from v1.2 to master:
- 188 commits
- 7640 files changed
- 410,681 insertions, 4,365 deletions
- Commit date range: 2025-05-08 to 2026-02-15
Changed files by domain
| Domain | Files touched |
|---|---|
backend |
222 |
frontends |
878 |
examples |
649 |
apps |
59 |
text2code |
4122 |
install |
17 |
Highlights by domain
backend
- Added/expanded postprocessing capabilities including configurable visualization outputs and new solution readers.
- Added support paths and interface helpers for coupled solver workflows.
- Extended MPI support for monolithic coupled solver pathways.
- Included incremental HDG and memory-usage improvements, plus backend cleanup of legacy/commented code paths.
- Standardized communicator usage updates (migration away from raw
MPI_COMM_WORLDin favor ofEXASIM_COMM_WORLD).
frontends (MATLAB/Python/Julia tooling)
- Added primitive boundary-expression library in MATLAB and boundary plotting helpers.
- Added mesh utilities (extrusion, rotation, spherical frustum, connectivity diagnostics).
- Added or refined preprocessing and visualization-related utility paths.
examples
- Expanded quick-run and example coverage, including new/updated 2D/3D cases.
- Added quick PDE-family runner script to accelerate smoke/regression checks.
- Updated specific application configurations (for example MHD Magnetic Vortex settings).
apps
- Refactored
apps/runapps.shworkflows to support per-case logs and final pass/fail summaries.
text2code
- Added Fint/Fext function support and symbolic-generation fixes.
- Integrated large generated-model surface updates from text2code/backends.
install/build/docs
- Multiple installation/build instruction updates in README and workflow files.
- Dependency/build path refinements and CI/workflow adjustments.
New features
- Coupled-solver interface function support in backend/model paths.
- MPI capability for monolithic coupled solver workflows.
- Postprocessing enhancements for reading/visualization outputs.
- MATLAB boundary-expression primitives and visualization helpers.
- Expanded quick example test orchestration (
examples/runquickexamples.m). - Per-app logging and summary behavior for application batch execution.
Improvements and refactors
- Cleanup of redundant/legacy solver/discretization code paths.
- Improved mesh/preprocessing utilities and data handling in frontends.
- Better repository hygiene via
.gitignoretightening for generated artifacts. - Broader and more structured example coverage across PDE families.
Bug fixes
- ParaView/GPU visualization fixes and crash-time output behavior improvements.
- Symbolic function return-type correction in text2code generation path.
- Assorted HDG/preconditioner/restart/read-solution stability fixes across backend cycles.
Breaking changes
Potentially breaking for downstream/custom integrations:
- Legacy nonlinear wrapper APIs and some stale declarations were removed from backend solver/solution headers and implementations.
- Projects relying on previously exposed but obsolete interfaces may need to migrate to current solver entry points.
Migration and upgrade notes
- Rebuild backend binaries and generated model code after upgrade.
- If custom code referenced removed solver APIs, migrate to active
CSolution/CSolverpathways currently used inmaster. - Re-run preprocessing for apps/examples where mesh or partition assumptions changed.
- If release packaging consumes generated files, align with updated
.gitignorebehavior and artifact locations.
Validation/testing done for this release-note draft
- Performed read-only Git analysis for
v1.2..master. - Refreshed remote branches with
fetch --all --prune. - Computed commit/file deltas and domain breakdown.
- No full build/test matrix was executed as part of this release-note drafting step.
Known issues / follow-ups
upstreamremote is not configured in this local clone (onlyoriginis present).- Tag fetch reported a local/remote tag conflict for
v1.2when attemptingfetch --tags; validate tag consistency before publishing the final release tag. - This range contains many merge and maintenance commits with terse messages; consider a final editorial pass before publishing public release notes.
Full commit list (grouped by month)
2026-02
a497f678update gitignoref6d3031dgitignore: ignore generated Poisson example artifacts73b85a52examples/mhd: adjust MagneticVortex MPI and RB settingsa24aac51examples: add quick PDE-family test runner8c2dedfdbackend/discretization: remove commented legacy/debug blocks7f6eb58abackend: remove legacy nonlinear-solver wrappers and stale APId9c3c906gitignore: stop tracking backend model generated kernels99c0647dgitignore: stop tracking BuiltIn and Matlab Modeling directories00fd9a31update git ignore9dbb4f67repo: clean generated artifacts and tighten ignore rules818392c6examples: add 3D isoq/flared-plate/sharpb2 cases9c45bd88matlab/mesh: add extrusion/rotation/frustum utilities and connectivity diagnostics092aa97fmatlab: add primitive boundary-expression library and plotting helpers0470211ebackend/discretization: track interface-face offsets for external flux handlinga644374bbackend/postprocessing: add configurable vis outputs and new solution readersa236789aapps: refactor runapps with per-case logs and final status summaryc0886b90update postprocessingf71a557cPostprocessing capability
2026-01
d902ea77Major update and improvement
2025-12
1d618111update examples4e85e6aeAdd MPI capability for monolithic coupled solver024cf3d3Add Fint and Fext functions to Text2Code and backende38de7d1Replace MPI_COMM_WORLD with EXASIM_COMM_WORLD45f696d5Merge branch 'master' of https://github.com/exapde/Exasim874efa03Add interface functions for coupled solverc1517621Clarify Text2Code's function in README125c26d0Update README.md045a8f11Revise README with example running instructionsd53479d0Update README.md2949cbbbUpdate README for installation and build instructionsb85f6ec9Improve section headers in README.md240da389Fix typo in Kokkos Libraries section86b9ba73Fix typo in Kokkos Libraries section29c66c52Update README with build instructions for libraries5de0c5eeupdate workflowsb81a2624Major upgrades and improvements
2025-11
4af8514aremove redundant files54f10fc3update solution.cpp34ee79ffUpdate restart feature6e434343Merge branch 'master' of https://github.com/exapde/Exasim38f16909update restarting featurec924b35eMerge branch 'master' into mastera9f81575update parmetis6b55556bupdate backend/preprocessing3413a8d1update saveparaviewc01ef61eMerge branch 'master' of https://github.com/exapde/Exasim591063d2Update parmetis.cpp9ee65f41Merge pull request #70 from exapde/paraview_vis_fixc7aa2b7dWrite ParaView file on crash if PV visualization is enableda62a15bcMerge pull request #4 from MIT-PSAAP-IV/teoc/template-exasim5257751etypo7ec9bd8dforgot blas; should have made a spack packaged942153etext2 code too expensive; skippinga300d89fgit actions are so much fun28f62587action build deps13422560try again10ba0471mergea4953a8aumm49e50ac0opsba5ecc85option660844c7Edit discretization.cpp and CMakeLists.txt687144f1delete redundant filesd740cb7bMerge pull request #69 from MIT-PSAAP-IV/master275a1e54Merge pull request #3 from exapde/master1fa61786Merge branch 'master' of https://github.com/exapde/Exasim452ce4a2update parmetis39f52dc3ops628314e8workflowcb02b031libmode78953699update pdeapp.txtbb1b8889Update /Exasim/backend/Discretization/KokkosDrivers.cppd1291f45Merge pull request #2 from exapde/master8d8bbe7aMerge pull request #68 from MIT-PSAAP-IV/master412c56f9Merge pull request #66 from exapde/visualization_fixcab28b7aMerge branch 'master' into visualization_fixa104c27cfor the future07642f72historycaee94aebuilds again; mpi/cpu should probably work; need to testaf308351implaced template paramsa927b468okay all funcs nowfd4076ffi will take revenge971b74b2Updated visualization fix6a4eb1e4starting to propogateb220a3fesillyc6fd3f81prog5cf1dd1f...ca7f974augg3ad330ebMerge branch 'master' of https://github.com/exapde/Exasim6e12849aInclude ParMetisd77834ccFixed ParaView visualization bug when executing the simulation on the GPU7923b231Merge pull request #65 from exapde/text2code_symbolic_fix09f48169Fixed return type of SymEngine math functions in text2code code generator.2c06cfa1Merge pull request #1 from exapde/master2602c0afupdate text2codebba2b124update solution class178c68bfupdate rans/naca0012f26bbdb7update readbinaryfilese53f653aupdate dynamic AV371e0c0fupdate solution.cpp0b8bb792update setstructs
2025-10
3cd89c92update ptcsolver112dacceupdate cmake options3e3579cfupdate HDG8ee5c812fix a bug in setprecondstruct.cpp43c74bcfupdate visualization1a5acc84update common46c5f116update HDG44533f6bfix rvec353004d4update memory fixesb468aa98Roll back backend04f1330cupdate HDG4c182700update HDG6fa2aafbupdate HDGc7e9e9a5update HDG9b5cd6a2update HDGd7a4da82update HDG22f295d8update HDG89b65a5eupdate HDG61a5b288update HDGdf27f442update HDG4678c598update HDGf15f8f1aupdate solution.h871acb3eOptimize HDG memory usage1550f62cadd nonlinear elasticity cube block examplead25321eMagnetic Vortex Example3371a114update pdeapp.m9254388aupdate pdeapp.m9976c61bUpdate preprocessing.m483743ffupdate readxdga0aff903update readxdgmpi6632f346update postprocessingd08ef345update preprocessing86fa9e69Merge pull request #64 from jvilaperez/master22ec775fmodifying compiler path to make it general in 2 basic examplesa1645664changing path for PRc799fb7dunifying some files for PRf94bb69dMerging 'upstream/master'0b86784fupdate pdeappadf829abUpdate CMakeLists.txt4864acc5Update getuhat.cpp10ff4f3fUpdate stg31a558c7problem with folder name
2025-09
71e22293update preprocessing79e02ddcMerge remote-tracking branch 'upstream/master' into jvp_merging6fe7a16apreprocessing update to input external fields26e495aeincorporating Coriolis and external field (preprocessing changes needed)507d6b1cupdate main.cpp69cb3372update visualization.cpp7f2f3c14Merge remote-tracking branch 'upstream/master' into jvp_merging2548fdd5setup ionosphere testb81e1d49RANS examplesb18abcb7update mkpng7dd0027cupdate readsoldmd8e67aef3add readsoldmd7b81569fupdate readsolefbe09d8Merge branch 'master' of https://github.com/exapde/Exasim4af12e7cupdate readsol78c6da02Create readsol.md10891dbzero commitab36717bupdate readsol8f3fd2b4add readsol2d2e76feUpdate a flat plate example for RANS7b7ad794update NS examplec59dd99eImplement synthetic turbulence generation and inflow boundary condition9a216c7dMerge branch 'jvp_iontest' into jvp_mergingbc8d758fMerge branch 'master' into jvp_merging7b647bb1Merge remote-tracking branch 'upstream/master'd0a1a46frun on Derechoae853dabupdate gitignore5967e8d4update gitignore57b4c3beMerge remote-tracking branch 'upstream/master'
2025-08
0fa7ad11Merge remote-tracking branch 'upstream/master'f723a0a0partial progress
2025-05
f88e4810Preliminary test for the ionosphere model32bc6cecMerge branch 'master' into jvp_iontest9e0c5ce9cubesphere matlabe65114a4Merge branch 'master' into jvp_iontestcde04c28correct indentationc63bf096ionosphere testd7b26285mesh fix and python cubespherec2035424Merge remote-tracking branch 'upstream/master'e8f5ba2fMerge remote-tracking branch 'upstream/master'a4580188Merge remote-tracking branch 'upstream/master'5c41a5f5updates before mergee77b24bagitignore update5a329804gitignore updateb6b0fb77gitignore changes77805a7fupdating install