SimVascular / SimVascular/svZeroDSolver

Unify attribute names?

Open
#85 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
C++
Stars
22
Forks
44
PR merge metrics
No merged PRs in 30d

Description

While working on #83, I noticed that we have different names for the same attributes in different 0D blocks:

  • Name: vessel_name, bc_name, junction_name, name, no name
  • Type: zero_d_element_type, bc_type, junction_type, closed_loop_type, type, no type
  • Values: zero_d_element_values, bc_values, junction_values, values

We could unify this by requiring every block to have name, type, values, simplifying reading the input file. An exception is ClosedLoopHeartAndPulmonary, which doesn't have a name or type (but could have in the future?).

The changes to the SimVascular 0D model generation would be very simple and limited to this file. However, it would also mean that all current users need to change their input files. We could provide a Python script for the migration.

@menon-karthik, any thoughts on if this is worth doing (and if yes, how to do it)? Any other changes we should make in addition?

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 Python/site-packages/sv_rom_simulation/io_0d.py and trace how each 0D block reads its name, type, and values attributes. Review the affected block definitions and existing input expectations before deciding whether a migration script is needed. Done means the naming approach and compatibility or migration path are defined and the model generator handles the agreed format.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.