SimVascular / svZeroDSolver

A C++ lumped-parameter solver for blood flow and pressure in hemodynamic networks
https://simvascular.github.io/documentation/rom_simulation.html#0d-solver
Other
7 stars 20 forks source link

Compare test cases to full simulation results #95

Closed mrp089 closed 4 months ago

mrp089 commented 10 months ago

Problem

It's a bit tedious to add new test cases because reference solutions need to be defined manually, e.g.:

https://github.com/SimVascular/svZeroDSolver/blob/208c09426b115fd88b7cb5e496d72258707b7b58/tests/test_solver.py#L6-L19

Solution

Store a reference solution (computed with svZeroDSolver) with git lfs in a folder for each test case and automatically compare all flow and pressure results. This makes it easier to add new tests and also tests stricter since the whole solution is compared to a reference. We already do this in svFSI+.

Additional context

We still retain information from analytically computed reference solutions as these are stored in the test cases themselves.

Code of Conduct