MCPcopy Create free account
hub / github.com/NGSolve/ngsolve / MakeMesh2D

Function MakeMesh2D

python/TensorProductTools.py:63–86  ·  view source on GitHub ↗
(mesh1,mesh2)

Source from the content-addressed store, hash-verified

61
62
63def MakeMesh2D(mesh1,mesh2):
64 tpmesh = ngmeshing.Mesh(dim = mesh1.dim + mesh2.dim)
65 ngm1 = mesh1.ngmesh
66 ngm2 = mesh2.ngmesh
67
68 els1 = ngm1.Elements1D()
69 els2 = ngm2.Elements1D()
70 vert1 = ngm1.Points()
71 vert2 = ngm2.Points()
72 pids = []
73 for i in range(len(vert1)):
74 for j in range(len(vert2)):
75 pids.append(tpmesh.Add(MeshPoint(Pnt(vert1[ngmeshing.PointId(i+1)].p[0],vert2[ngmeshing.PointId(j+1)].p[0],0 ))))
76 tpmesh.Add (FaceDescriptor(surfnr=1,domin=1,bc=1))
77 for elx in els1:
78 for ely in els2:
79 pnum = [(elx.vertices[1].nr-1) * len(vert2) + ely.vertices[1].nr-1,
80 (elx.vertices[0].nr-1) * len(vert2) + ely.vertices[1].nr-1,
81 (elx.vertices[0].nr-1) * len(vert2) + ely.vertices[0].nr-1,
82 (elx.vertices[1].nr-1) * len(vert2) + ely.vertices[0].nr-1]
83
84 elpids = [pids[p] for p in pnum]
85 tpmesh.Add(Element2D(1,elpids))
86 return tpmesh
87
88def MakeMesh3D(mesh1,mesh2):
89 tpmesh = ngmeshing.Mesh(dim = mesh1.dim + mesh2.dim)

Callers 1

MakeTensorProductMeshFunction · 0.85

Calls 3

MeshPointClass · 0.85
PointsMethod · 0.80
AddMethod · 0.80

Tested by

no test coverage detected