From 8c4197699fc063ad8868d759d6642c155e029be8 Mon Sep 17 00:00:00 2001 From: Henrik Finsberg Date: Wed, 10 Dec 2025 18:25:06 +0100 Subject: [PATCH] Add myklebust2025 and modelgraph --- .cspell_dict.txt | 2 ++ docs/packages.md | 6 +++++- docs/references.bib | 13 +++++++++++++ docs/repositories.md | 1 + 4 files changed, 21 insertions(+), 1 deletion(-) diff --git a/.cspell_dict.txt b/.cspell_dict.txt index cb2746e..1690e54 100644 --- a/.cspell_dict.txt +++ b/.cspell_dict.txt @@ -49,9 +49,11 @@ LUNSONGA Meep microphysiological minrk +modelgraph monopoli multicompartmental Multiphysics +MYKLEBUST mypackage mypy Mypy diff --git a/docs/packages.md b/docs/packages.md index 898e014..76ae3c0 100644 --- a/docs/packages.md +++ b/docs/packages.md @@ -33,7 +33,9 @@ A list scientific software (and corresponding publication) developed by personne ## Brain - Intracranial Pulsation: [brainpulse](https://github.com/MariusCausemann/intracranialPulsation) {cite}`causemann2022` + ## Heart + - Simula Cardiac ElectroMechanics Solver [simcardems](https://github.com/ComputationalPhysiology/simcardems) {cite}`finsberg2023` - Tools for working with microphysiological data [mps](https://github.com/ComputationalPhysiology/mps) - Library for tracking motion in cardiac mps data [mps-motion](https://github.com/ComputationalPhysiology/mps_motion) @@ -43,8 +45,10 @@ A list scientific software (and corresponding publication) developed by personne - `beat` - Cardiac electrophysiology solver in [FEniCSx](https://github.com/finsberg/fenicsx-beat) and [FEnICS](https://github.com/finsberg/fenics-beat) - `ldrb` - Library for creating rule-based fiber orientations in [FEniCSx](https://github.com/finsberg/fenicsx-ldrb) and [FEniCS](https://github.com/finsberg/ldrb) + ## Other -- General ODE translator [gotranx](https://github.com/finsberg/gotranx) {cite}`finsberg2024` +- General ODE translator [`gotranx`](https://github.com/finsberg/gotranx) {cite}`finsberg2024` +- A tool for visualizing dependencies between different components of your ODE model [`modelgraph`](https://github.com/ComputationalPhysiology/modelgraph) ## Missing a package? diff --git a/docs/references.bib b/docs/references.bib index 0d52033..0f5fb56 100644 --- a/docs/references.bib +++ b/docs/references.bib @@ -172,6 +172,19 @@ @article{monopoli2025deepvalve year = {2025}, publisher = {Elsevier} } +@article{MYKLEBUST2025118270, + title = {Impact of segregation scheme on performance of a strongly coupled cardiac electromechanical solver}, + journal = {Computer Methods in Applied Mechanics and Engineering}, + volume = {446}, + pages = {118270}, + year = {2025}, + issn = {0045-7825}, + doi = {https://doi.org/10.1016/j.cma.2025.118270}, + url = {https://www.sciencedirect.com/science/article/pii/S0045782525005420}, + author = {Lena Myklebust and Hermenegild Arevalo and C\'{e}cile Daversin-Catty and Samuel T. Wall and Henrik N.T. Finsberg}, + keywords = {Electro-mechanics, Finite element method, Cardiac modeling, Numerical analysis}, + abstract = {Fully coupled cardiac electromechanics simulations have in the last few years become feasible on a tissue and organ scale. However, free and open-source tools for running these simulations are still limited. Furthermore, due to the high computational expense of coupling electrophysiology (EP) and mechanics, investigations into choice of coupling scheme is warranted. In this study, we investigate the effect of the selected coupling scheme on accuracy and run time, implemented in a freely accessible, open-source software, Simcardems. We used the monodomain model and the ToR-ORd-dynCI model to describe EP on a tissue and cellular scale, respectively. Mechanics was modeled using an active stress approach. To represent passive tissue we used a Holzapfel-Ogden model of a transversely isotropic material, whereas the Land model was used to represent active contraction. The EP and mechanics components were strongly coupled; each subsystem was solved separately and variables interpolated between them at each mechanics time step. This enabled the use of different temporal and spatial resolutions for EP and mechanics, reducing the computational cost considerably. Here, we implemented three different schemes of variable transfer between EP and mechanics, which we denoted Cai-, CaTRPN- and \ensuremath{\zeta}'s split. For each scheme, a different set of variables within the Land model were transferred between the EP and mechanics components of the model. We investigated how simulation time and error depended on the chosen scheme, as well as the selected temporal and spatial resolution of the mechanics mesh. The three segregation schemes required similar computation times, although the \ensuremath{\zeta}'s split resulted in the smallest computation errors. By increasing the time step and decreasing the mesh resolution for the mechanics system compared to EP, we achieved a major reduction in run time of our simulations: When increasing the mechanics time step from 0.05 to 0.5 ms with the \ensuremath{\zeta}'s split, we achieved an 80 \% reduction in run time and only 0.35 \% error in active tension with respect to the finest time step. On the spatial scale, a change of mechanics mesh resolution from dxmech = 0.25 mm to 0.5 mm resulted in a 90 \% reduction in run time and an error of 0.04 \% with respect to the finest mesh. We conclude that the \ensuremath{\zeta}'s split scheme - with the majority of active contraction parameters solved on the EP side - was the optimal of the investigated segregation schemes. Furthermore, through investigation of key variables and associated errors for various discretization approaches, our study provides a systematic comparison of internal variable partitioning schemes for a state-of-the-art cardiac electromechanical coupling model, offering a verified, open-source implementation that serves as a valuable benchmark for future numerical methods development in this field.} +} @article{odeigah2024computational, title = {A computational study of right ventricular mechanics in a rat model of pulmonary arterial hypertension}, author = {Odeigah, Oscar O and Kwan, Ethan D and Garcia, Kristen M and Finsberg, Henrik and Valdez-Jasso, Daniela and Sundnes, Joakim}, diff --git a/docs/repositories.md b/docs/repositories.md index 75bda48..abb72e5 100644 --- a/docs/repositories.md +++ b/docs/repositories.md @@ -2,6 +2,7 @@ A list of repositories used in research in the Scientific Computing Department follows. A link to relevant publications/preprints is referenced. ## 2025 +- [Impact of segregation scheme on performance of a strongly coupled cardiac electromechanical solver](https://github.com/ComputationalPhysiology/simcardems2) {cite}`MYKLEBUST2025118270` - [A software benchmark for cardiac elastodynamics](https://github.com/finsberg/cardiac_benchmark) {cite}`arostica2025117485` - [Arrhythmic Mitral Valve Syndrome: Insights from Left Ventricular End-Systolic Shape Analysis](https://github.com/ComputationalPhysiology/MAD-SSA) {cite}`monopoli2025arrhythmic` - [DeepValve: an automatic detection pipeline for the mitral valve in cardiac magnetic resonance imaging](https://github.com/giuliamonopoli/deepvalve-paper) {cite}`monopoli2025deepvalve`