SimVascular / SimVascular/svZeroDSolver

Extend cycle to cycle error check for closed-loop models

Open
#212 0 comments 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

Problem

In https://github.com/SimVascular/svZeroDSolver/pull/109, code was added to check for cycle-to-cycle convergence for an open-loop 0D model. To do so, it tracks cycle-to-cycle changes in mean pressure and flow at vessel caps, which seem to be limited to connections between vessels and boundary_conditions. For closed-loop model, there are no boundary_conditions, so the periodicity check does not work.

Solution

Modify the periodicity check to consider inlets and outlets of all vessels, regardless of if they are connected to boundary conditions.

Additional context

@mrp089 @menon-karthik was there a reason this periodicity check was originally limited to vessel-boundary_condition connections?

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 by locating the periodicity check introduced in PR #109 and trace how it finds vessel-cap connections. Verify the behavior with a closed-loop 0D model and confirm that cycle-to-cycle mean pressure and flow are checked at every vessel inlet and outlet, including cases without boundary_conditions.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.