Skip to content

Releases: exapde/Exasim

Exasim v1.4 (2026-02-15)

15 Feb 13:03

Choose a tag to compare

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_WORLD in favor of EXASIM_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.sh workflows 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 .gitignore tightening 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/CSolver pathways currently used in master.
  • Re-run preprocessing for apps/examples where mesh or partition assumptions changed.
  • If release packaging consumes generated files, align with updated .gitignore behavior 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

  • upstream remote is not configured in this local clone (only origin is present).
  • Tag fetch reported a local/remote tag conflict for v1.2 when attempting fetch --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

  • a497f678 update gitignore
  • f6d3031d gitignore: ignore generated Poisson example artifacts
  • 73b85a52 examples/mhd: adjust MagneticVortex MPI and RB settings
  • a24aac51 examples: add quick PDE-family test runner
  • 8c2dedfd backend/discretization: remove commented legacy/debug blocks
  • 7f6eb58a backend: remove legacy nonlinear-solver wrappers and stale API
  • d9c3c906 gitignore: stop tracking backend model generated kernels
  • 99c0647d gitignore: stop tracking BuiltIn and Matlab Modeling directories
  • 00fd9a31 update git ignore
  • 9dbb4f67 repo: clean generated artifacts and tighten ignore rules
  • 818392c6 examples: add 3D isoq/flared-plate/sharpb2 cases
  • 9c45bd88 matlab/mesh: add extrusion/rotation/frustum utilities and connectivity diagnostics
  • 092aa97f matlab: add primitive boundary-expression library and plotting helpers
  • 0470211e backend/discretization: track interface-face offsets for external flux handling
  • a644374b backend/postprocessing: add configurable vis outputs and new solution readers
  • a236789a apps: refactor runapps with per-case logs and final status summary
  • c0886b90 update postprocessing
  • f71a557c Postprocessing capability

2026-01

  • d902ea77 Major update and improvement

2025-12

  • 1d618111 update examples
  • 4e85e6ae Add MPI capability for monolithic coupled solver
  • 024cf3d3 Add Fint and Fext functions to Text2Code and backend
  • e38de7d1 Replace MPI_COMM_WORLD with EXASIM_COMM_WORLD
  • 45f696d5 Merge branch 'master' of https://github.com/exapde/Exasim
  • 874efa03 Add interface functions for coupled solver
  • c1517621 Clarify Text2Code's function in README
  • 125c26d0 Update README.md
  • 045a8f11 Revise README with example running instructions
  • d53479d0 Update README.md
  • 2949cbbb Update README for installation and build instructions
  • b85f6ec9 Improve section headers in README.md
  • 240da389 Fix typo in Kokkos Libraries section
  • 86b9ba73 Fix typo in Kokkos Libraries section
  • 29c66c52 Update README with build instructions for libraries
  • 5de0c5ee update workflows
  • b81a2624 Major upgrades and improvements

2025-11

  • 4af8514a remove redundant files
  • 54f10fc3 update solution.cpp
  • 34ee79ff Update restart feature
  • 6e434343 Merge branch 'master' of https://github.com/exapde/Exasim
  • 38f16909 update restarting feature
  • c924b35e Merge branch 'master' into master
  • a9f81575 update parmetis
  • 6b55556b update backend/preprocessing
  • 3413a8d1 update saveparaview
  • c01ef61e Merge branch 'master' of https://github.com/exapde/Exasim
  • 591063d2 Update parmetis.cpp
  • 9ee65f41 Merge pull request #70 from exapde/paraview_vis_fix
  • c7aa2b7d Write ParaView file on crash if PV visualization is enabled
  • a62a15bc Merge pull request #4 from MIT-PSAAP-IV/teoc/template-exasim
  • 5257751e typo
  • 7ec9bd8d forgot blas; should have made a spack package
  • d942153e text2 code too expensive; skipping
  • a300d89f git actions are so much fun
  • 28f62587 action build deps
  • 13422560 try again
  • 10ba0471 merge
  • a4953a8a umm
  • 49e50ac0 ops
  • ba5ecc85 option
  • 660844c7 Edit discretization.cpp and CMakeLists.txt
  • 687144f1 delete redundant files
  • d740cb7b Merge pull request #69 from MIT-PSAAP-IV/master
  • 275a1e54 Merge pull request #3 from exapde/master
  • 1fa61786 Merge branch 'master' of https://github.com/exapde/Exasim
  • 452ce4a2 update parmetis
  • 39f52dc3 ops
  • 628314e8 workflow
  • cb02b031 libmode
  • 78953699 update pdeapp.txt
  • bb1b8889 Update /Exasim/backend/Discretization/KokkosDrivers.cpp
  • d1291f45 Merge pull request #2 from exapde/master
  • 8d8bbe7a Merge pull request #68 from MIT-PSAAP-IV/master
  • 412c56f9 Merge pull request #66 from exapde/visualization_fix
  • cab28b7a Merge branch 'master' into visualization_fix
  • a104c27c for the future
  • 07642f72 history
  • caee94ae builds again; mpi/cpu should probably work; need to test
  • af308351 implaced template params
  • a927b468 okay all funcs now
  • fd4076ff i will take revenge
  • 971b74b2 Updated visualization fix
  • 6a4eb1e4 starting to propogate
  • b220a3fe silly
  • c6fd3f81 prog
  • 5cf1dd1f ...
  • ca7f974a ugg
  • 3ad330eb Merge branch 'master' of https://github.com/exapde/Exasim
  • 6e12849a Include ParMetis
  • d77834cc Fixed ParaView visualization bug when executing the simulation on the GPU
  • 7923b231 Merge pull request #65 from exapde/text2code_symbolic_fix
  • 09f48169 Fixed return type of SymEngine math functions in text2code code generator.
  • 2c06cfa1 Merge pull request #1 from exapde/master
  • 2602c0af update text2code
  • bba2b124 update solution class
  • 178c68bf update rans/naca0012
  • f26bbdb7 update readbinaryfiles
  • e53f653a update dynamic AV
  • 371e0c0f update solution.cpp
  • `0b8...
Read more

Exasim 1.2

23 Sep 18:19

Choose a tag to compare

This release contains the following new features:

  • Text2Code as a C++ code generator and preprocessors
  • ILU preconditioners
  • C++ visualization capabilities
  • Quantity of interest calculation such as volume and face integrals of solution field or surface fluxes
  • Several new examples such as linear elasticity, nonlinear elasticity, Monge-Ampere, and Stokes flows
  • New shock-capturing examples for hypersonic flows

Exasim 1.1

02 Feb 13:33
84c3293

Choose a tag to compare

This release contains the following new features:

  • Parallel monolithic multi-physics solver
  • HIP support for AMD GPUs
  • Chemistry models for chemically-reacting flows
  • Shock-capturing examples for hypersonic flows
  • Heat transfer examples for hypersonic flows

Exasim 1.0

12 Jul 02:58

Choose a tag to compare

This release contains the following capabilities of Exasim:

  • Solve a wide range of partial differential equations
  • Generate stand-alone C++ production code via the mathematical expressions of the PDEs
  • Implement high-order DG methods including local DG and hybridized DG methods
  • Implement diagonally implicit Runge-Kutta methods
  • Implement parallel Newton-GMRES solvers and scalable preconditioners
  • Employ Kokkos to provide full GPU functionality for all code components from discretization schemes to iterative solvers
  • Provide interfaces to Julia, Python, and Matlab.

Exasim 0.5

11 Jul 20:26

Choose a tag to compare

This release does not employ Kokkos and does not implement hybridized DG methods.

Exasim Version 0.4

13 Jan 04:09

Choose a tag to compare

This is a major release that includes the following changes:

  • Restructure Exasim folders
  • Automatic differentiation using Enzyme for matrix-vector products in GMRES
  • Implementation of artificial viscosity in the residual evaluation
  • Space weather applications
  • Create unit tests

Exasim Version 0.3

13 Jan 16:26
0c3013a

Choose a tag to compare

Exasim Version 0.3