SimVascular / SimVascular/svZeroDSolver
Unify attribute names?
Nobody has claimed this yet.
- 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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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