Runtime error using finer mesh


I am getting the following error “RuntimeError: Determinant of Jacobian (7.5968e-07) for cell 28 is smaller than minimum permissible value (1e-06)!
The two most likely causes of this are highly distorted cells and nondimensionalization with a length scale that is much larger than the dimensions of the cells.”

I have run into this error in the past by not scaling my mesh from meters to kilometers but that is not the issue this time. The only change from my usual mesh is that I am using a much finer element size on the fault. I have a mesh that is 3x3 kilometers with a 1km long fault in the middle. I am using a tetrahedral element shape. For my code, I am using a very simple variant of step 4 in hex8 that only considers an elastic upper crust.

Are there alternative issues with the mesh or the code that may be causing this error? Thank you for your help.


The problem is the same. Your nondimensionalization scale is too large for your smallest element size. We do this so that we do not lose precision. Just adjust the scale to be smaller and it will run.



Adjust the length scale to be your nominal cell size (the default is 1.0 km).

Example of setting the length scale to 10 m:

length_scale = 10.0*m

To see the current values: