fillet tangency creates poorly conditioned mesh

Issue #94 new
Jonathan Fraser created an issue

Attempting to create a fillet with a circle subtraction can produce an nearly infinitely fine mesh at the tangency point.

Code to reproduce, issue is at location (14.5,30)

from dolfin import *
import mshr
import matplotlib.pyplot as plt


s = mshr.Rectangle(Point(0,100),Point(14.5,0))
fill = mshr.Rectangle(Point(0,120),Point(44.5,30))
fillet = mshr.Circle(Point(44.5,30),30,20)
plot(mshr.generate_mesh((s+fill)-fillet,30))
plt.show()

first zoom spanning 20 units

second zoom spanning 0.025 units

The mesh is almost infinitely self similar until it starts to approach 1e-13.

Changing the mesh resolution can cause crashing.

Attempts at reproduction with other similar geometries do not do this.

Comments (0)

  1. Log in to comment