/[escript]/trunk/finley/py_src/readers.py
ViewVC logotype

Contents of /trunk/finley/py_src/readers.py

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3432 - (show annotations)
Fri Jan 7 01:32:07 2011 UTC (9 years, 9 months ago) by jfenwick
File MIME type: text/x-python
File size: 2639 byte(s)
Made import statements a bit more specific to clean up the epydoc
1
2 ########################################################
3 #
4 # Copyright (c) 2003-2010 by University of Queensland
5 # Earth Systems Science Computational Center (ESSCC)
6 # http://www.uq.edu.au/esscc
7 #
8 # Primary Business: Queensland, Australia
9 # Licensed under the Open Software License version 3.0
10 # http://www.opensource.org/licenses/osl-3.0.php
11 #
12 ########################################################
13
14 __copyright__="""Copyright (c) 2003-2010 by University of Queensland
15 Earth Systems Science Computational Center (ESSCC)
16 http://www.uq.edu.au/esscc
17 Primary Business: Queensland, Australia"""
18 __license__="""Licensed under the Open Software License version 3.0
19 http://www.opensource.org/licenses/osl-3.0.php"""
20 __url__="https://launchpad.net/escript-finley"
21
22 """
23 some mesh handling
24
25 :var __author__: name of author
26 :var __licence__: licence agreement
27 :var __url__: url entry point on documentation
28 :var __version__: version
29 :var __date__: date of the version
30 """
31
32 __author__="Lutz Gross, l.gross@uq.edu.au"
33
34 from esys.pycad.gmsh import Design as GMSHDesign
35 from finleycpp import ReadGmsh
36
37 def MakeDomain(design,integrationOrder=-1, reducedIntegrationOrder=-1, optimizeLabeling=True, useMacroElements=False):
38 """
39 Creates a Finley `Domain` from a `esys.pycad.design.Design` object.
40 Currently only gmsh is supported.
41
42 :param design: the geometry
43 :type design: `esys.pycad.design.Design`
44 :param integrationOrder: integration order. If -1 the default is used.
45 :type integrationOrder: ``int``
46 :param reducedIntegrationOrder: reduced integration order. If -1 the
47 default is used.
48 :type reducedIntegrationOrder: ``int``
49 :param optimizeLabeling: if set the labeling of the mesh nodes is optimized
50 :type optimizeLabeling: ``bool``
51 :param useMacroElements: uses macro elements.
52 :type useMacroElements: ``bool``
53 :return: the Finley domain defined by the design
54 :rtype: `Domain`
55 """
56 if isinstance(design, GMSHDesign):
57 if useMacroElements: design.setElementOrder(2)
58 ff=design.getFileFormat()
59 design.setFileFormat(design.GMSH)
60 mshname=design.getMeshHandler()
61 dom = ReadGmsh(mshname,
62 design.getDim(),
63 integrationOrder,
64 reducedIntegrationOrder,
65 optimizeLabeling,
66 useMacroElements)
67 design.setFileFormat(ff)
68 else:
69 raise TypeError("Finley does not support %s designs."%design.__class__.__name__)
70 # fill in the tag map
71 design.getTagMap().passToDomain(dom)
72 return dom
73

  ViewVC Help
Powered by ViewVC 1.1.26