Hi, everyone! I want to add a square obstacle in the channel. Now, the following code is obviously wrong,
from netgen.geom2d import SplineGeometry
geo = SplineGeometry()
geo.AddRectangle( (0, 0), (40, 10), bcs = (“wall”, “outlet”, “wall”, “inlet”))
geo.AddRectangle((5, 0), (6, 1))
mesh = Mesh( geo.GenerateMesh(maxh=0.6))
Many thanks!
Yongbin Han
Hi Yongbin,
you have to use the leftdomain, rightdomain flag to label your boundaries, e.g.
from ngsolve import *
from netgen.geom2d import SplineGeometry
geo = SplineGeometry()
geo.AddRectangle( (0, 0), (40, 10), bcs = ("wall", "outlet", "wall", "inlet"), leftdomain=1, rightdomain=0)
geo.AddRectangle((5, 0.2), (6, 1), leftdomain=0, rightdomain=1)
mesh = Mesh( geo.GenerateMesh(maxh=0.6))
Secondly, in your code the rectangles have a shared edge, which is not allowed. I refer to this post a solution by adding your geometry edge by edge.
Best
Michael
Hi,mneunteufel, I have now finished this code with your help.
Thank you very much!
Yongbin Han