[cig-commits] r20690 - in short/3D/PyLith/branches/v1.7-stable: . examples/meshing/surface_nurbs examples/meshing/surface_nurbs/merge_surfs

brad at geodynamics.org brad at geodynamics.org
Wed Sep 5 11:51:23 PDT 2012


Author: brad
Date: 2012-09-05 11:51:23 -0700 (Wed, 05 Sep 2012)
New Revision: 20690

Added:
   short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/
   short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/Makefile.am
   short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/README
   short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/geometry.jou
   short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/mesh.jou
Modified:
   short/3D/PyLith/branches/v1.7-stable/configure.ac
   short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/Makefile.am
Log:
Added CUBIT example of how to merge sheet bodies and use them in a webcut.

Modified: short/3D/PyLith/branches/v1.7-stable/configure.ac
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/configure.ac	2012-09-05 16:16:39 UTC (rev 20689)
+++ short/3D/PyLith/branches/v1.7-stable/configure.ac	2012-09-05 18:51:23 UTC (rev 20690)
@@ -381,6 +381,7 @@
 		examples/meshing/surface_nurbs/dem/ulines/Makefile
 		examples/meshing/surface_nurbs/dem/vlines/Makefile
 		examples/meshing/surface_nurbs/triangles/Makefile
+		examples/meshing/surface_nurbs/merge_surfs/Makefile
 		examples/meshing/cubit_cellsize/Makefile
 		templates/Makefile
 		share/Makefile

Modified: short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/Makefile.am
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/Makefile.am	2012-09-05 16:16:39 UTC (rev 20689)
+++ short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/Makefile.am	2012-09-05 18:51:23 UTC (rev 20690)
@@ -19,7 +19,8 @@
 SUBDIRS = \
 	contours \
 	dem \
-	triangles
+	triangles \
+	merge_surfs
 
 
 dist_noinst_DATA = \

Added: short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/Makefile.am
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/Makefile.am	                        (rev 0)
+++ short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/Makefile.am	2012-09-05 18:51:23 UTC (rev 20690)
@@ -0,0 +1,25 @@
+# -*- Makefile -*-
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard, U.S. Geological Survey
+# Charles A. Williams, GNS Science
+# Matthew G. Knepley, University of Chicago
+#
+# This code was developed as part of the Computational Infrastructure
+# for Geodynamics (http://geodynamics.org).
+#
+# Copyright (c) 2010-2012 University of California, Davis
+#
+# See COPYING for license information.
+#
+# ----------------------------------------------------------------------
+#
+
+dist_noinst_DATA = \
+	README \
+	geometry.jou \
+	mesh.jou
+
+
+# End of file 

Added: short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/README
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/README	                        (rev 0)
+++ short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/README	2012-09-05 18:51:23 UTC (rev 20690)
@@ -0,0 +1,6 @@
+CUBIT example demonstrating how to merge sheet bodies (surfaces) and
+use them in a webcut. This technique is useful for creating
+multisegment faults from primitive geometry.
+
+Geometry and meshing commands are in the CUBIT journal files
+'geometry.jou' and m'mesh.jou' respectively.

Added: short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/geometry.jou
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/geometry.jou	                        (rev 0)
+++ short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/geometry.jou	2012-09-05 18:51:23 UTC (rev 20690)
@@ -0,0 +1,103 @@
+# -*- Python -*- (syntax highlighting)
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard, U.S. Geological Survey
+# Charles A. Williams, GNS Science
+# Matthew G. Knepley, University of Chicago
+#
+# This code was developed as part of the Computational Infrastructure
+# for Geodynamics (http://geodynamics.org).
+#
+# Copyright (c) 2010-2012 University of California, Davis
+#
+# See COPYING for license information.
+#
+# ----------------------------------------------------------------------
+#
+# CUBIT journal file with geometry for example showing how to merge
+# planar surfaces.
+#
+# We also use the CUBIT support for APREPRO (the expressions in
+# braces), which includes units and mathematical functions. See the
+# APREPRO section in the appendix of the CUBIT documentation for more
+# information.
+#
+# ----------------------------------------------------------------------
+# Set units to SI.
+# ----------------------------------------------------------------------
+# {Units('si')}
+#
+# ----------------------------------------------------------------------
+# Reset geometry.
+# ----------------------------------------------------------------------
+reset
+
+# Make sure undo is off to prevent errors in stitching volumes.
+undo off
+
+# ----------------------------------------------------------------------
+# Create block
+# ----------------------------------------------------------------------
+# Block is 100 km x 100 km x 50 km
+#{blockLength=100.0*km}
+#{blockWidth=100.0*km}
+#{blockHeight=50.0*km}
+
+brick x {blockLength} y {blockWidth} z {blockHeight}
+#{idVol=Id("volume")}
+
+# Translate block so the top is at z=0
+volume {idVol} move x {domain_x} y {domain_y} z {-0.5*blockHeight}
+
+# ----------------------------------------------------------------------
+# Create fault comprised of multiple planar segments 
+# ----------------------------------------------------------------------
+#{offset=10.0*km}
+
+create vertex x {-blockLength/2} y {-offset} z 0.0
+#{idL1=Id("vertex")}
+create vertex x {-blockLength/2} y {-offset} z {-blockHeight}
+#{idL2=Id("vertex")}
+
+create vertex x 0.0 y {-offset} z 0.0
+#{idMb1=Id("vertex")}
+create vertex x 0.0 y {-0.5*offset} z {-blockHeight}
+#{idMb2=Id("vertex")}
+
+create vertex x 0.0 y {+offset} z 0.0
+#{idMa1=Id("vertex")}
+create vertex x 0.0 y {+0.5*offset} z {-blockHeight}
+#{idMa2=Id("vertex")}
+
+create vertex x {+blockLength/2} y {+offset} z 0.0
+#{idR1=Id("vertex")}
+create vertex x {+blockLength/2} y {+offset} z {-blockHeight}
+#{idR2=Id("vertex")}
+
+# Create planar surfaces
+create surface vertex {idL1} {idMb1} {idMb2} {idL2}
+create surface vertex {idMb1} {idMa1} {idMa2} {idMb2}
+create surface vertex {idMa1} {idR1} {idR2} {idMa2}
+
+# Merge surfaces
+unite volume 2 3 4
+
+# ----------------------------------------------------------------------
+# Divide volumes using interface surfaces
+# ----------------------------------------------------------------------
+webcut volume 1 tool volume 2
+
+# ----------------------------------------------------------------------
+# Imprint all volumes, merging surfaces
+# ----------------------------------------------------------------------
+delete body 2
+imprint all with volume all
+merge all
+
+# End of file
+
+
+
+
+
+

Added: short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/mesh.jou
===================================================================
--- short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/mesh.jou	                        (rev 0)
+++ short/3D/PyLith/branches/v1.7-stable/examples/meshing/surface_nurbs/merge_surfs/mesh.jou	2012-09-05 18:51:23 UTC (rev 20690)
@@ -0,0 +1,46 @@
+# -*- Python -*- (syntax highlighting)
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard, U.S. Geological Survey
+# Charles A. Williams, GNS Science
+# Matthew G. Knepley, University of Chicago
+#
+# This code was developed as part of the Computational Infrastructure
+# for Geodynamics (http://geodynamics.org).
+#
+# Copyright (c) 2010-2012 University of California, Davis
+#
+# See COPYING for license information.
+#
+# ----------------------------------------------------------------------
+#
+# CUBIT journal file to create a mesh for example with merged sheet
+# surfaces.
+#
+# ----------------------------------------------------------------------
+# Generate geometry
+# ----------------------------------------------------------------------
+playback 'geometry.jou'
+
+# ----------------------------------------------------------------------
+# Create tet4 mesh at 5.0 km resolution.
+# ----------------------------------------------------------------------
+
+#{dx=5.0*km}
+volume all size {dx}
+volume all scheme tetmesh
+
+# ----------------------------------------------------------------------
+# Generate the mesh
+# ----------------------------------------------------------------------
+mesh surface all
+mesh volume all
+
+# ----------------------------------------------------------------------
+# Export exodus file
+# ----------------------------------------------------------------------
+set large exodus off
+export mesh "mesh.exo" dimension 3 overwrite
+
+
+# End of file



More information about the CIG-COMMITS mailing list