Skip to content

AortaCFD

From a patient CT scan to wall shear stress, pressure gradients, and flow metrics — in a single command.

New: AI-Driven CFD Pipeline

Turn free-text clinical referrals into literature-grounded CFD simulations automatically. Try the interactive demo →

The Problem

Every year, clinicians assess aortic coarctation severity using invasive catheterisation — a procedure that carries risk, particularly in paediatric patients. Patient-specific computational fluid dynamics (CFD) offers a non-invasive alternative: simulate blood flow from a routine CT scan and compute the same pressure gradients, wall shear stress maps, and flow metrics that catheterisation measures Taylor & Figueroa 2009; Nørgaard 2014.

The physics solvers exist. What holds back adoption is the expertise barrier. Setting up a single patient-specific simulation requires: segmenting the vessel geometry, generating a quality hex-dominant mesh with boundary layers, selecting appropriate numerical schemes, parameterising physiological boundary conditions, running and monitoring the solver, and post-processing hemodynamic quantities. Each step involves dozens of parameters that are rarely documented and difficult to reproduce Du 2025; Morris 2016.

The 2012 ASME CFD Challenge demonstrated this concretely: expert groups given identical aortic geometry produced consistent pressure drops but widely varying secondary flow features — differences traced entirely to undocumented modelling choices Steinman 2013.


What AortaCFD Does

AortaCFD replaces that manual workflow with a single reproducible pipeline. You provide STL geometry and a JSON configuration file; the software handles everything else — case setup, meshing, boundary condition generation, transient CFD solving, and hemodynamic post-processing — in one command.


The Pipeline

Step through every stage, or press Auto-play to watch the full pipeline run. Each stage is a concrete CLI invocation with its own inputs, outputs, and side-effects.

Built on OpenFOAM 12. Open source at github.com/JieWangnk/AortaCFD-app.


What It Controls

The three-tier configuration system means you change one parameter and the pipeline adapts everything downstream.

Layer What it sets Example
Base defaults Sensible values for every parameter Blood density 1060 kg/m³, viscosity 0.004 Pa·s
Numerics profile Scheme selection and solver tolerances robust (1st order, stable), standard (2nd order), precise (LES-ready)
Case overrides Patient-specific settings Geometry paths, inlet waveform, heart rate, Windkessel pressures

The resolved configuration is recorded in merged_config.json — sufficient to reproduce any simulation exactly.


Start Here


Research Directions

AortaCFD provides the reproducible infrastructure for a broader research programme in cardiovascular scientific computing:

  • Surrogate modelling. Neural operator and GNN surrogates trained on AortaCFD data for real-time haemodynamic prediction.
  • ML-accelerated segmentation. Automated CTA-to-geometry pipelines to reduce the manual segmentation bottleneck.
  • Coronary extension. Adaptation for coronary arteries with physiological flow models and 0D-3D multiscale coupling.
  • Multifidelity methods. Coarse-mesh CFD combined with learned corrections to scale to large cohorts.

The long-term goal is a platform where image-based cardiovascular modelling is reproducible by default, fast enough for clinical timescales, and transparent enough for regulatory use.


Documentation

TutorialsFirst Mesh & Run | Inlet & Outlet Conditions | Synthetic Aorta | Hemodynamics | Real Patient | Advanced (GCI & LES)

TheoryMesh Generation | Boundary Conditions | Windkessel | Solver & Numerics | Hemodynamics

ReferenceConfiguration | CLI | Troubleshooting | Boundary Layer Toolkit


Linux (Ubuntu 20.04+) · Python 3.12 · OpenFOAM 12 (Foundation) · ParaView (optional)

Citation

@software{aortacfd2025,
  title   = {AortaCFD: Patient-Specific Aortic Blood Flow Simulation},
  author  = {Wang, Jie},
  year    = {2025},
  url     = {https://github.com/JieWangnk/AortaCFD-app}
}

Related repositories: AortaCFD-app · snappy-layer-toolkit · OpenFOAM-WK


References

Full bibliography on the References page.

Found an issue or have a suggestion for this page?

Open a GitHub issue