cashocs.geometry.mesh_testing.APrioriMeshTester#

class cashocs.geometry.mesh_testing.APrioriMeshTester(mesh: fenics.Mesh)[source]#

Bases: object

A class for testing the mesh before it is modified.

Initializes the mesh tester.

Parameters:

mesh (fenics.Mesh) – The mesh that is to be tested.

Methods Summary

test(transformation, volume_change)

Check the quality of the transformation before the actual mesh is moved.

Methods Documentation

test(transformation: fenics.Function, volume_change: float) bool[source]#

Check the quality of the transformation before the actual mesh is moved.

Checks the quality of the transformation. The criterion is that

\[\det(I + D \texttt{transformation})\]

should neither be too large nor too small in order to achieve the best transformations.

Parameters:
  • transformation (fenics.Function) – The transformation for the mesh.

  • volume_change (float) – The allowed factor that each element is allowed to change in volume.

Returns:

A boolean that indicates whether the desired transformation is feasible.

Return type:

bool