Skip to content

Add Land Niederer Active Stress Model for Electromechanics - #652

Draft
kko27 wants to merge 17 commits into
SimVascular:mainfrom
kko27:land_niederer_active_stress
Draft

kko27 wants to merge 17 commits into
SimVascular:mainfrom
kko27:land_niederer_active_stress

Conversation

@kko27

@kko27 kko27 commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Current situation

Implements #606, the Land Niederer active stress model for coupled electromechanics. The phenomenological model consists of 7 state variables that describe the unbound, pre-power and post-power stroke states, the Calcium-Troponin binding kinetics, and the cross-bridge distortions. Length-dependency is embedded in the equations as well as the final active tension computation which collects several state variables together.

Note: this PR is currently in a draft stage, waiting on the merging of PR #650.

Release Notes

  • Adds the Land-Niederer active-stress ODE model
  • Adds the model XML parameters and MPI parameter distribution
  • Includes coupled electromechanics slab regression test that uses the Land-Niederer contraction model
  • Includes unit test to test the implementation of the Land-Niederer ODE model

Documentation

The Land Niederer active stress class has been given detailed Doxygen documentation. At a certain point, we should definitely add a user-guide style documentation for electromechanics akin to how electrophysiology ionic models are described in our documentation page.

Testing

A unit test following the twitch protocol described in ./tests/unitTests/active_stress_tests was created. A CI test using the same slab mesh files has also been included.

Code of Conduct & Contributing Guidelines

@codecov

codecov Bot commented Sep 24, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 99.33775% with 1 line in your changes missing coverage. Please review.
✅ Project coverage is 73.53%. Comparing base (c9838bd) to head (5ecc006).

Files with missing lines Patch % Lines
Code/Source/solver/ActiveStressLandNiederer.h 96.15% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #652      +/-   ##
==========================================
+ Coverage   73.41%   73.53%   +0.12%     
==========================================
  Files         269      272       +3     
  Lines       40337    40489     +152     
  Branches     6755     6759       +4     
==========================================
+ Hits        29612    29775     +163     
+ Misses      10482    10470      -12     
- Partials      243      244       +1     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant