Package esys :: Package pycad :: Module extras
[hide private]
[frames] | no frames]

Module extras


Author: Antony Hallam antony.hallam@uqconnect.edu.au

Copyright: Copyright (c) 2003-2010 by University of Queensland Earth Systems Science Computational Center (ESSCC) http://www.uq.edu.au/esscc Primary Business: Queensland, Australia

License: Licensed under the Open Software License version 3.0 http://www.opensource.org/licenses/osl-3.0.php

Functions [hide private]
 
buildFreeSurface(xwidth, ywidth)
This surface is planar.
 
buildLayer(xwidth, ywidth, depth, lay_surf, hor_lines, corner_points)
Builds a boxlike volume and returns primatives for layered model construction.
 
layer_cake(domain, xwidth, ywidth, depths)
Builds a horizontally layered box like model.
Variables [hide private]
  DEG = 0.0174532925199
  RAD = 1.0
  __package__ = 'esys.pycad'
  __url__ = 'https://launchpad.net/escript-finley'
  global_primitive_id_counter = 1
  global_tolerance_for_colocation = 1e-11
  numpyImported = True
Function Details [hide private]

buildFreeSurface(xwidth, ywidth)

 
Build a free surface to start the layer cake model.
This surface is planar.
Parameters:
xwidth :: width in x direction in meters. ywidth :: width in y direction in meters.

buildLayer(xwidth, ywidth, depth, lay_surf, hor_lines, corner_points)

 

Builds a boxlike volume and returns primatives for layered model construction.

Parameters:
xwidth :: width in x direction in meters. ywidth :: width in y direction in meters. depth :: depth to bottom of layer in meters. lay_surf :: surface at top of layer (see buildFreeSurf) hor_lines :: lines of lay_surf corner_points :: points of hor_lines

layer_cake(domain, xwidth, ywidth, depths)

 

Builds a horizontally layered box like model. All layers are tagged as 'intface_i' where i is the python style integer denoting that layer. For example, the free surface is tagged 'interface_0'. Volumes are similarly tagged as 'volume_i'.

Parameters:
domain :: output of Pycad.Design - It needs to be dim 3. xwidth :: width in x direction in meters. ywidth :: width in y direction in meters. depth :: depth to bottom of layer in meters.
One may save the domain using:
# Output settings.domain.setScriptFileName(os.path.join(save_path,fname+".geo")) domain.setMeshFileName(os.path.join(save_path,fname+".msh")) findomain=fin.MakeDomain(domain) # make the finley domain: Create a file that can be read back in to python with ReadMesh. findomain.write(os.path.join(save_path,fname+".fly"))