SimVascular / SimVascular/svMultiPhysics

The Fiber_direction solver output results are not compared

Open
#443 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C++
Stars
45
Forks
60
Avg merge
5d 23h
Merged PRs (30d)
11

Description

Problem

Fiber_direction results have recently been added to the Output of the struct/LV_HolzapfelOgden_active test.

The Fiber_direction results are not compared during CI because Fiber_direction is not in the fields list set in test_struct.py.

However, adding Fiber_direction to the fields list would require that all simulation results contain that data because the run_with_reference() function will throw an error if a field is not found in the results.

Solution

Some of the cases in struct don't have Fiber_direction so they will not have Fiber_direction results data.

Expecting all results for a given case to contain all of the hard-coding field names is a bit restrictive. The field names should be obtained from the results file.

It would also be good to obtain the relative tolerances used to compare fields from the results file stored for the test rather than from the list of hard-coded relative tolerances.

Additional context

No response

Code of Conduct
  • I agree to follow this project's Code of Conduct and Contributing Guidelines

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with tests/test_struct.py and tests/conftest.py, especially run_with_reference() and the hard-coded fields and relative tolerances. Review the stored results files for struct cases, including LV_HolzapfelOgden_active, and determine how comparisons should handle fields present only in some cases. Done means Fiber_direction is compared where available without requiring it in every result, with tolerances sourced as requested.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
testing
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.