coronary-flow

Porcine Coronary Flow Model

https://github.com/jay-mackenzie/coronary-flow

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (8.4%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Porcine Coronary Flow Model

Basic Info
  • Host: GitHub
  • Owner: jay-mackenzie
  • Language: C
  • Default Branch: main
  • Homepage:
  • Size: 21.6 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 3 years ago · Last pushed over 3 years ago
Metadata Files
Readme Changelog Citation

README.md

coronary-flow

J. A. Mackenzie. July 2022. jay.mackenzie@glasgow.ac.uk

This version of the coronary flow code is pressure driven, and includes external pressure imposed upon vascular beds.

Call like $ ./main <tree> <SVPA>

The trees are built from tab-seperated summary tables. These have columns - vessel index - length - proximal radius - distal radius - left daughter - middle daughter - right daughter - r_min - init

Daughters are specified with a positive, integer vessel index - For one-to-one branching, only the LD is given; RD and MD are 0 - for one-to-two, give LD and RD; MD is 0 - for one-to-three give LD, MD, RD - for a terminal artery, give RD; LD and MD are 0 - otherwise, set all to 0

The tree can be given via it's path as a command line argument or, if it lives in ./NewSumTab, just its name.

After the tree is built, a function called looper is called. It calls solver until the simulations have converged. Convergence is assesed by checking the percentage difference between the flow and pressure at the ends of all arteries between sucessive cycles. It is deemed to have converged if both fall below some given threshold or a maximum number of iterations (maxits) have been exceeded. These are set in main.C. The model is run once more and the output of this is saved. Threshold and maxits can be set as command line args, as can any other parameter, but remember to update the function that checks their count.

Outputs are saves in the directory Outputs. The format is [treeName]_[SVPA].2d

There is one output per run The matlab file plt.m loops

The columns of the output file are - vessel id - time (s) - space (cm) - fluid pressure (mmHg) - flow (ml/s) - transmural pressure (mmHg) The matlab file basically works by looping through the files you load, and for each one seperates out the flp, flow, and tmp for each spatial point in each vessel

All trees in NewSumTab can be run using ./runAll.sh If permission is denied try "chmod +x runAll.sh" and go again. runAll.sh looks in NewSumTab and runs all the trees with SVPA = 100. The outputs are saved as normal.

Citation (CITATION.cff)

cff-version: 1.2.0
authors:
  - family-names: Mackenzie
    given-names: Jay
    orcid: https://orcid.or g/0000-0002-0144-1479
    url: https://github.com/jay-mackenzie/coronary-flow
title: "1D Porcine Coronary Flow Model"
version: 1.0
date-released: 2022-06-08

GitHub Events

Total
Last Year