ComputationalPhysiology / simcardems

Simula Cardiac ElectroMechanics Solver
http://computationalphysiology.github.io/simcardems
GNU Lesser General Public License v2.1
11 stars 11 forks source link

Cardiac-geometries benchmark lv-ellipsoid mesh gives error in simcardems #169

Closed ndermul closed 1 year ago

ndermul commented 1 year ago

Expected Behavior

Running the ventricular_geometry.py demo with a different mesh than the one included. The mesh is the benchmark mesh generated with the cardiac-geometries package.

Actual Behavior

There is no problem when the generated meshes are slabs or lv-ellipsoids as in the 'getting started' page. The benchmark mesh however gives the error:

Error: Unable to solve linear system using PETSc Krylov solver. Reason: Solution failed to converge in 0 iterations (PETSc reason DIVERGED_PC_FAILED, residual norm ||r|| = 0.000000e+00). *** Where: This error was encountered inside PETScKrylovSolver.cpp.

I noticed there is no error when the mu-apex-endo and mu-apex-epi are set to the default values instead of 0 as in the example benchmark command from the 'getting started' page. Could have something to do with dividing by zero.

Steps to Reproduce the Problem

  1. Generate mesh from cardiac-geometries inside the recommended docker with following benchmark command: cardiac-geometries create-lv-ellipsoid benchmark --create-fibers --r-short-endo=7 --r-short-epi=10 --r-long-endo=17 --r-long-epi=20 --mu-apex-endo=0 --mu-apex-epi=0 --mu-base-endo=1.869328527979773 --mu-base-epi=1.8234765819369754 --psize-ref=3

  2. Run the simcardems demos/ventricular_geometry.py file inside the recommended docker with the new mesh.

Specifications

finsberg commented 1 year ago

The default fiber space is "P_1" which doesn't work well with the mechanics solver. Try using "Quadrature_3" instead, i.e

cardiac-geometries create-lv-ellipsoid benchmark --create-fibers --r-short-endo=7 --r-short-epi=10 --r-long-endo=17 --r-long-epi=20 --mu-apex-endo=0 --mu-apex-epi=0 --mu-base-endo=1.869328527979773 --mu-base-epi=1.8234765819369754 --psize-ref=3 --fiber-space="Quadrature_3"
finsberg commented 1 year ago

@ndermul Is OK to close this?