/[escript]/trunk/pycad/examples/faults.py
ViewVC logotype

Annotation of /trunk/pycad/examples/faults.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 955 - (hide annotations)
Mon Feb 12 03:54:54 2007 UTC (16 years, 1 month ago) by gross
File MIME type: text/x-python
File size: 1655 byte(s)
some examples for pycad added
1 gross 899 """
2 gross 955 block with some fualts
3 gross 899
4     @var __author__: name of author
5     @var __licence__: licence agreement
6     @var __url__: url entry point on documentation
7     @var __version__: version
8     @var __date__: date of the version
9     """
10    
11    
12     __copyright__=""" Copyright (c) 2006 by ACcESS MNRF
13     http://www.access.edu.au
14     Primary Business: Queensland, Australia"""
15     __license__="""Licensed under the Open Software License version 3.0
16     http://www.opensource.org/licenses/osl-3.0.php"""
17     __author__="Lutz Gross, l.gross@uq.edu.au"
18     __url__="http://www.iservo.edu.au/esys/escript"
19     __version__="$Revision$"
20     __date__="$Date$"
21    
22     from esys.pycad import *
23 gross 932 from esys.pycad.gmsh import Design
24 gross 955 from esys.finley import MakeDomain
25 gross 899
26     l=100000. # width and length m (without obsorber)
27     h=30000. # width and length m (without obsorber)
28     d_absorber=l*0.10 # thickness of absorbing layer
29    
30     b=Brick(Point(0.,0.,-h),Point(l,l,0.))
31 gross 932 p1=Point(l/5,l/5,-2*h/3)
32 gross 899 p2=p1+[l/5,l/5,0.]
33     p3=p2+[0,0.,h/5]
34     p4=p3+[-l/5,-l/5,0.]
35     l1=Line(p1,p2)
36     l2=Line(p2,p3)
37     l3=Line(p3,p4)
38     l4=Line(p4,p1)
39     c1=CurveLoop(l1,l2,l3,l4)
40 gross 932 c1.setLocalScale(0.1)
41 gross 899 q1=Point(2*l/3,2*l/3,-2*h/3,local_scale=0.3)
42     q2=q1+[-l/4,l/4,0.]
43     q3=q2+[0,0.,h/3]
44     q4=q3+[l/4,-l/4,0.]
45     m1=Line(q1,q2)
46     m2=Line(q2,q3)
47     m3=Line(q3,q4)
48     m4=Line(q4,q1)
49     c2=CurveLoop(m1,m2,m3,m4)
50 gross 932 c2.setLocalScale(0.1)
51 gross 955 dsgn=Design(element_size=h/5)
52 gross 932 dsgn.addItems(Volume(SurfaceLoop(*tuple(b.getSurfaces()+[PlaneSurface(c1),PlaneSurface(c2)]))))
53 gross 955 dsgn.setScriptFileName("faults.geo")
54     dsgn.setMeshFileName("faults.msh")
55     dom=MakeDomain(dsgn,integrationOrder=-1, reducedIntegrationOrder=-1, optimizeLabeling=True)
56     dom.write("faults.fly")

  ViewVC Help
Powered by ViewVC 1.1.26