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: 2024-02-29 02:06:11.057195, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:00:45.074738
SIMULATION FAILED TO RUN
  DivertOutputError: Process exceeded max runtime of 45 seconds

Last passed: No passes found in history (earliest 2024-02-01 01:31:01.233703)

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: 2024-02-29 02:06:56.167175, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:04:37.880847
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: No passes found in history (earliest 2024-02-01 01:31:46.330871)

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: 2024-02-29 02:11:34.080019, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:00:29.602556
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: No passes found in history (earliest 2024-02-01 01:36:37.041151)

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: 2024-02-29 02:12:03.721141, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:01:24.246841
**** ALL FAILED ****
  ERROR max_error(cav.LV.csv):
ValueError: operands could not be broadcast together with shapes (33220,) (25410,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, 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,) (0,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2024-02-01 01:37:05.515207)

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: 2024-02-29 02:13:28.059104, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:07:07.737978
**** ALL FAILED ****
  ERROR max_error(cav.LV.csv):
ValueError: operands could not be broadcast together with shapes (33220,) (25410,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, 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,) (0,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2024-02-01 01:38:28.757999)

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: 2024-02-29 02:20:35.910087, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:00:03.269515
**** ALL FAILED ****
  FAIL max_error(cav.LV.csv): 6215.141
  ERROR max_error(x.dynpt.gz):
ValueError: operands could not be broadcast together with shapes (12600,) (42000,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2024-02-01 01:45:32.527200)

ring-active-fast

Tags: FAST MECHANICS PARALLEL

Checks:

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

Last run: 2024-02-29 02:20:39.224011, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:00:02.319419
**** ALL FAILED ****
  ERROR max_error(x.dynpt.gz):
ValueError: operands could not be broadcast together with shapes (12600,) (60600,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2024-02-01 01:45:35.868063)

ring-active-medium

Tags: MEDIUM MECHANICS PARALLEL

Checks:

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

Last run: 2024-02-29 02:20:41.582012, revision {‘base’: ‘cbf8efd0’}, dependency revisions {PT_C: 31642c1e,cvsys: 593686bc,eikonal: 5fbbfda3,elasticity: 4d92ddfc}

Runtime: 0:00:28.813488
**** ALL FAILED ****
  ERROR max_error(x.dynpt.gz):
ValueError: operands could not be broadcast together with shapes (206424,) (1018584,)
Backtrace:
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 175, in __call__
    return self.check(*args, **kwargs)
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/check.py", line 218, in check
    cost = self.cost(refdata.flatten(), testdata.flatten())
  File "/data/prassl_src/carpautotest/repos/carputils/carputils/testing/cost.py", line 36, in max_error
    return np.max(np.abs(array1 - array2))

Last passed: No passes found in history (earliest 2024-02-01 01:45:38.239852)