- Thank you received: 0
Mesh
4 years 10 months ago - 4 years 10 months ago #2563
by Yongbin
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
######
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
Last edit: 4 years 10 months ago by Yongbin.
- mneunteufel
-
- Offline
- Premium Member
-
Less
More
- Thank you received: 59
4 years 10 months ago #2564
by mneunteufel
Replied by mneunteufel on topic Mesh
Hi Yongbin,
you have to use the leftdomain, rightdomain flag to label your boundaries, e.g.
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
you have to use the leftdomain, rightdomain flag to label your boundaries, e.g.
Code:
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
The following user(s) said Thank You: Yongbin
Time to create page: 0.119 seconds