20 |
__date__="$Date$" |
__date__="$Date$" |
21 |
|
|
22 |
from esys.pycad import * |
from esys.pycad import * |
23 |
from esys.pycad.shapes import Brick |
from esys.pycad.gmsh import Design |
24 |
|
|
25 |
l=100000. # width and length m (without obsorber) |
l=100000. # width and length m (without obsorber) |
26 |
h=30000. # width and length m (without obsorber) |
h=30000. # width and length m (without obsorber) |
27 |
d_absorber=l*0.10 # thickness of absorbing layer |
d_absorber=l*0.10 # thickness of absorbing layer |
28 |
|
|
29 |
b=Brick(Point(0.,0.,-h),Point(l,l,0.)) |
b=Brick(Point(0.,0.,-h),Point(l,l,0.)) |
30 |
p1=Point(l/5,l/5,-2*h/3,local_scale=0.3) |
p1=Point(l/5,l/5,-2*h/3) |
31 |
p2=p1+[l/5,l/5,0.] |
p2=p1+[l/5,l/5,0.] |
32 |
p3=p2+[0,0.,h/5] |
p3=p2+[0,0.,h/5] |
33 |
p4=p3+[-l/5,-l/5,0.] |
p4=p3+[-l/5,-l/5,0.] |
36 |
l3=Line(p3,p4) |
l3=Line(p3,p4) |
37 |
l4=Line(p4,p1) |
l4=Line(p4,p1) |
38 |
c1=CurveLoop(l1,l2,l3,l4) |
c1=CurveLoop(l1,l2,l3,l4) |
39 |
|
c1.setLocalScale(0.1) |
40 |
q1=Point(2*l/3,2*l/3,-2*h/3,local_scale=0.3) |
q1=Point(2*l/3,2*l/3,-2*h/3,local_scale=0.3) |
41 |
q2=q1+[-l/4,l/4,0.] |
q2=q1+[-l/4,l/4,0.] |
42 |
q3=q2+[0,0.,h/3] |
q3=q2+[0,0.,h/3] |
46 |
m3=Line(q3,q4) |
m3=Line(q3,q4) |
47 |
m4=Line(q4,q1) |
m4=Line(q4,q1) |
48 |
c2=CurveLoop(m1,m2,m3,m4) |
c2=CurveLoop(m1,m2,m3,m4) |
49 |
b.addSurface(Surface(c1),Surface(c2)) |
c2.setLocalScale(0.1) |
50 |
dsgn=Design(scale=10000.) |
dsgn=Design(element_size=h/3) |
51 |
dsgn.addPrimitives(Volume(b)) |
dsgn.addItems(Volume(SurfaceLoop(*tuple(b.getSurfaces()+[PlaneSurface(c1),PlaneSurface(c2)])))) |
52 |
f=dsgn.writeFinleyMesh("l.fly") |
dsgn.setScriptFileName("test.geo") |
53 |
print f |
dsgn.setMeshFileName("test.msh") |
54 |
|
print dsgn.getMeshHandler() |