Ring

Module: devtests.mechanics.ring.run

Section author: Gernot Plank <gernot.plank@medunigraz.at>,Christoph Augustin <christoph.augustin@medunigraz.at> andMatthias Gsell <matthias.gsell@medunigraz.at>

This example provides pure mechanics and electromechanics examples on a simple ring geometry.

Problem Setup

This problem generates a simple ring mesh using the carputils.mesh.Ring class. The ring is tesselated into tetrahedra as shown below:

../../_images/ring_mesh.png

In all experiment types in this example, the top and bottom surfaces of the ring are constrained to lie in the same plane with Dirichlet boundary conditions, and an additional three nodes on the bottom (z=0) surface are constrained such that free body rotation and translation is prevented. Two nodes on the x axis are prevented from moving in the y direction, and one node on the y axis is prevented from moving in the x direction:

../../_images/ring_rigid_bc.png

Experiments

Several experiments are defined:

  • active-free - Run an active contraction simulation without constraints on cavity size or pressure
  • active-iso - Run an active contraction simulation with an isovolumetric cavity constraint
  • active-pv-loop - Run an active contraction stimulation with pressure/flux constraints imposed by Windkessel or circulatory models coupled to both RV and LV cavity. In this case both left and right ventricular cavities are coupled to a 3-element Windkessel model

Tests

ring-pv-loop-wk-fast

Tags: FAST MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(cav.LV.csv)
  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:38:56.099915, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:00:06.361020
**** ALL FAILED ****
  FAIL max_error(cav.LV.csv): 186.365
  FAIL max_error(x.dynpt.gz): 6652.646484375

Last passed: 2022-10-11 01:36:36.286142, revision {‘base’: ‘7d075071’}, dependency revisions {PT_C: 31642c1e,cvsys: 87732e68,eikonal: b58be0de,elasticity: a7b262af}

ring-pv-loop-wk-medium

Tags: MEDIUM MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(cav.LV.csv)
  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:39:02.500996, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:01:49.366518
**** ALL FAILED ****
  FAIL max_error(cav.LV.csv): 628.719
  FAIL max_error(x.dynpt.gz): 9940.96875

Last passed: 2022-10-11 01:37:01.632927, revision {‘base’: ‘7d075071’}, dependency revisions {PT_C: 31642c1e,cvsys: 87732e68,eikonal: b58be0de,elasticity: a7b262af}

ring-pv-loop-CA-fast

Tags: FAST MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(cav.LV.csv)
  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:40:51.924168, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:00:16.577933
**** ALL FAILED ****
  FAIL max_error(cav.LV.csv): 374.47200000000004
  FAIL max_error(x.dynpt.gz): 13985.75

Last passed: 2022-11-08 01:44:54.473461, revision {‘base’: ‘dc61a219’}, dependency revisions {PT_C: 31642c1e,cvsys: 2856896c,eikonal: b58be0de,elasticity: ebfd6af4}

ring-pv-loop-CA-coarse-mesh

Tags: MEDIUM MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(cav.LV.csv)
  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:41:08.543611, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:01:26.333157
**** ALL FAILED ****
  ERROR max_error(cav.LV.csv):
ValueError: operands could not be broadcast together with shapes (33220,) (33920,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 171, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 215, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 35, in max_error
    return np.max(np.abs(array1 - array2))
  ERROR max_error(x.dynpt.gz):
ValueError: operands could not be broadcast together with shapes (102000,) (405000,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 171, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 215, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 35, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2022-09-01 01:09:06.023831)

ring-pv-loop-CA-medium-mesh

Tags: MEDIUM MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(cav.LV.csv)
  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:42:34.982390, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:06:41.394526
**** ALL FAILED ****
  ERROR max_error(cav.LV.csv):
ValueError: operands could not be broadcast together with shapes (33220,) (33920,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 171, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 215, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 35, in max_error
    return np.max(np.abs(array1 - array2))
  ERROR max_error(x.dynpt.gz):
ValueError: operands could not be broadcast together with shapes (575280,) (2284200,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 171, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 215, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 35, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2022-09-01 01:10:33.517804)

ring-active-inflate

Tags: FAST MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(cav.LV.csv)
  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:49:16.496702, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:00:04.296972
SIMULATION FAILED TO RUN
  CalledProcessError: Command '/home/prassl/install/petsc-3.17.1/linux-gnu-fluid-opt/bin/mpiexec' returned non-zero exit status 1. (Operation not permitted)

Last passed: 2023-02-02 01:48:00.819937, revision {‘base’: ‘0232f046’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: ea6799f2}

ring-active-fast

Tags: FAST MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:49:20.831451, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:00:07.320790
**** ALL FAILED ****
  FAIL max_error(x.dynpt.gz): 808.8671875

Last passed: 2023-02-02 01:48:06.889605, revision {‘base’: ‘0232f046’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: ea6799f2}

ring-active-medium

Tags: MEDIUM MECHANICS PARALLEL

Checks:

  • Compare against stored reference: max_error(x.dynpt.gz)

Last run: 2023-03-30 01:49:28.185601, revision {‘base’: ‘6b57420d’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: fadd9ded}

Runtime: 0:00:08.331989
**** ALL FAILED ****
  FAIL max_error(x.dynpt.gz): 19325.927734375

Last passed: 2023-02-02 01:48:14.202344, revision {‘base’: ‘0232f046’}, dependency revisions {PT_C: 31642c1e,cvsys: b052f3a9,eikonal: b58be0de,elasticity: ea6799f2}