Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Recent additions to shell mechanics, bug fixes in material constitutive models #96

Merged
merged 35 commits into from
Apr 8, 2023

Conversation

vvedula22
Copy link
Contributor

Addressing issue #46, this pull request includes several additions and bug fixes in the nonlinear shell mechanics formulation, including hyperelastic material formulation for shells based on the work of Kiendl et al. with new constitutive models (Neo-Hookean, Mooney-Rivlin, modified Holzapfel-Ogden, and Lee-Sacks), for both compressible and incompressible materials, satisfying plane stress condition.

This pull request also has updated electromechanical coupling and bug fixes in Holzapfel-Ogden constitutive models for 3D tissues, developed for the cardiac mechanics benchmark exercise. Some of these are directly relevant to issues #72 and #95.

Some parts of svFSI_master.inp and README.md still need to be reviewed.

vvedula22 and others added 30 commits January 31, 2022 18:14
A few bugs were fixed for the nonlinear shell mechanics formulation
with 3-noded constant strain triangles. Tested on plate bending and
aortic-valve mechanics simulation.

Commit also includes few cosmetic changes.

TODO:
- Postprocessing element data for NURBS need to be updated
- Shells for higher order elements (tri6, quad8/quad9) need to be
verified
- Shell formulation should be upgraded for hyperelastic material models
- Accounts for hyperelastic constitutive models
- Implemented for incompressible materials only where plane stress is
satisfied analytically using static condensation
- Tested for both NURBS and triangular elements

TODO:

- Extend to compressible materials
- Add post-processing quantities for shell elements (stresses, strains, jacobian)
- Shells for 4-node or higher order elements (tri6, quad8, quad9)
- Compressible material is now implemented and working fine..

TODO:
- Post-processing quantities for shells
- Validate shell formulation using benchmark convergence tests
- Shells for higher order elements (quad8, quad9, tri6)
- Both active stress and active strain approaches are verified
to be consistent with single node tests
- Added non-CEP based uniform activation options
- Added references for ionic activation models and coupling
- Some minor bugs were fixed

TODO:

- Additional tests need to be done to verify excitation-contraction
coupling
- Couple struct/ustruct with LPN
- Allow Purkinje deformation
- Perform tests on univentricle and biventricle models for full cycle
electromechanics
The bug affects decoupled-HO and modified-HO models only

Changed transmural coordinate variable to Phi_EPI
- Bug fixed while reading a constant fiber direction
- Some changes to the data structures for excitation-contraction coupling
- Added an option to prescribe fiber shortening from a file (both
steady/unsteady)
- Tested active-strain on a idealized cube by prescribing shortening
data from Rossi 2014 paper.

TODO: need to test electrophysiology-coupled excitation-contraction
(Rossi 2014 - BO model coupled with orthotropic active strain over a
cubical domain)
- Coupling between cep and struct/ustruct for electromechanics
- Tested for both prescribed and coupled electromechanics
- Both active stress and active strain are working fine
- bug fixed while computing isotropic diffusion when coupled with mechancis
- added fiber shortening as an output parameter
- tested coupled electromechanics with active strain model on a simple cube

TODO: need to test coupled electromechanics on patient-specific LV with both
active stress and active strain models
The cross-fiber stress parameter adds stress along the sheet or
cross-fiber direction, relevant for cardiac mechanics.

Commit also include removing a few unused variables and declaring loop
variables as integers
Added parameter for cross-fiber stress contribution
Shell-based post-processing is added including stresses, strains,
Jacobian, and deformation gradient tensor. All these quantities
are integrated through the shell thickness and processed as shell
continuum (3D)
Dev: added shell post-processing
Extended clamped BC to shells, lelas, and struct
Merging recent upstream changes (JOSS paper)
- Consistent evaluation of tangent led to improved
convergence and better deformation
- tested on idealized LV benchmark
- USTRUCT uses deviatoric strain-based approach, while
  STRUCT  uses pseudo-strain energy potential based on
  rate of Green-Lagrange strain tensor
similar to USTRUCT.
Removed pseudopotential-based solid viscosity model from STRUCT
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.

None yet

2 participants