[cig-commits] r19126 - short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205

brad at geodynamics.org brad at geodynamics.org
Fri Oct 28 16:49:25 PDT 2011


Author: brad
Date: 2011-10-28 16:49:25 -0700 (Fri, 28 Oct 2011)
New Revision: 19126

Modified:
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/createbc.jou
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/geometry.jou
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/gradient.jou
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/pylithapp.cfg
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_onfaultdata.py
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_ruptime.py
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tet4_200m.cfg
   short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tractions.spatialdb
Log:
Added marking asperity locations on fault surface to ensure mesh is aligned with asperity boundaries.

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/createbc.jou
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/createbc.jou	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/createbc.jou	2011-10-28 23:49:25 UTC (rev 19126)
@@ -8,6 +8,9 @@
 # Create nodeset for fault
 # ----------------------------------------------------------------------
 group "fault" add node in fault_surface
+group "fault" add node in fault_surface at A
+group "fault" add node in fault_surface at B
+group "fault" add node in fault_surface at C
 nodeset 20 group fault
 nodeset 20 name "fault"
 
@@ -68,3 +71,4 @@
 nodeset 17 group face_zpos_subset
 nodeset 17 name "face zpos_subset"
 
+

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/geometry.jou
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/geometry.jou	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/geometry.jou	2011-10-28 23:49:25 UTC (rev 19126)
@@ -51,14 +51,27 @@
 split surface 18 across location vertex {vAp} location vertex {vBp}
 split surface 21 across location vertex {vCn} location vertex {vCp}
 surface 22 name "fault_surface"
+delete vertex all
 
+# asperities (to ensure exact alignment with mesh)
+brick x {3.0*km} y {3.0*km} z {3.0*km}
+{idChopper=Id("volume")}
+volume {idChopper} move x 0 y 0 z {-7.5*km}
+chop volume 2 with volume {idChopper} keep
+volume {idChopper} move x 0 y {7.5*km} z 0
+chop volume 2 with volume {idChopper} keep
+volume {idChopper} move x 0 y {-15.0*km} z 0
+chop volume 2 with volume {idChopper} keep
+delete volume {idChopper}
+
 # ----------------------------------------------------------------------
 # Imprint all volumes, merging surfaces
 # ----------------------------------------------------------------------
 imprint all
 merge all
-delete body 2
+delete body 2 5 6 7 8 9 10
 
 
 
 
+

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/gradient.jou
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/gradient.jou	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/gradient.jou	2011-10-28 23:49:25 UTC (rev 19126)
@@ -12,7 +12,7 @@
 # dxA - size at vertex 9 12
 #{dxStart=dx}{curveL=Length(40)}{execute("dxA="//fun_dx)}
 
-# dxB - size at vertex 23 24
+# dxB - size at vertex 27 29
 #{dxStart=dx}{curveL=Length(46)}{execute("dxB="//fun_dx)}
 
 # dxC - size at vertex 10 11
@@ -29,15 +29,15 @@
 # ----------------------------------------------------------------------
 curve all scheme default
 surface all sizing function none
-surface fault_surface size {dx}
+surface fault_surface fault_surface at A fault_surface at B fault_surface at C size {dx}
 
 # Set bias on curves extending from faults
 
-curve 40 scheme bias fine size {dx} factor {bias_factor} start vertex 22
-curve 36 scheme bias fine size {dx} factor {bias_factor} start vertex 21
+curve 40 scheme bias fine size {dx} factor {bias_factor} start vertex 30
+curve 36 scheme bias fine size {dx} factor {bias_factor} start vertex 28
 
-curve 46 scheme bias fine size {dx} factor {bias_factor} start vertex 26
-curve 47 scheme bias fine size {dx} factor {bias_factor} start vertex 25
+curve 46 scheme bias fine size {dx} factor {bias_factor} start vertex 31
+curve 47 scheme bias fine size {dx} factor {bias_factor} start vertex 32
 
 # ----------------------------------------------------------------------
 # B to B
@@ -55,8 +55,8 @@
 curve 15 scheme bias fine size {dxA} coarse size {dxC} start vertex 12
 
 # bias starting at B
-curve 39 scheme bias fine size {dxB} factor {bias_factor} start vertex 24
-curve 37 scheme bias fine size {dxB} factor {bias_factor} start vertex 23
+curve 39 scheme bias fine size {dxB} factor {bias_factor} start vertex 29
+curve 37 scheme bias fine size {dxB} factor {bias_factor} start vertex 27
 
 # bias starting at C
 curve 24 scheme bias fine size {dxC} factor {bias_factor} start vertex 11
@@ -81,3 +81,4 @@
 
 # End of file
 
+

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/pylithapp.cfg
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/pylithapp.cfg	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/pylithapp.cfg	2011-10-28 23:49:25 UTC (rev 19126)
@@ -27,7 +27,7 @@
 # ----------------------------------------------------------------------
 [pylithapp.mesh_generator]
 reader = pylith.meshio.MeshIOCubit
-#reorder_mesh = True
+reorder_mesh = True
 
 distributor.partitioner = parmetis
 distributor.write_partition = True
@@ -43,7 +43,7 @@
 dimension = 3
 
 formulation = pylith.problems.ExplicitLumped
-formulation.norm_viscosity = 0.2
+formulation.norm_viscosity = 0.3
 normalizer = spatialdata.units.NondimElasticDynamic
  
 [pylithapp.timedependent.formulation.time_step]

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_onfaultdata.py
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_onfaultdata.py	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_onfaultdata.py	2011-10-28 23:49:25 UTC (rev 19126)
@@ -5,72 +5,60 @@
 #                           Brad T. Aagaard
 #                        U.S. Geological Survey
 #
-# <LicenseText>
-#
 # ----------------------------------------------------------------------
 #
 
 cell = "tet4"
 dx = 200
-dt = 0.05
 
-outputRoot = "output/%s_%3dm" % (cell,dx)
+inputRoot = "output/%s_%3dm-fault" % (cell,dx)
 outdir = "scecfiles/%s_%3dm/" % (cell,dx)
 
+# ----------------------------------------------------------------------
+import tables
 import numpy
 import time
 
-from pylith.utils.VTKDataReader import VTKDataReader
-
 # ----------------------------------------------------------------------
-timestamps = numpy.arange(50,12001,50)
-
 if dx == 200:
-    targets = numpy.array([[-12000.0, 0.0,      0.0],
-                           [ -7400.0, 0.0,      0.0],
-                           [ -4600.0, 0.0,      0.0],
-                           [     0.0, 0.0,      0.0],
-                           [  4600.0, 0.0,      0.0],
-                           [  7400.0, 0.0,      0.0],
-                           [ 12000.0, 0.0,      0.0],
-                           [     0.0, 0.0,  -3000.0],
-                           [-12000.0, 0.0,  -7600.0],
-                           [ -7400.0, 0.0,  -7600.0],
-                           [ -4600.0, 0.0,  -7600.0],
-                           [     0.0, 0.0,  -7600.0],
-                           [  4600.0, 0.0,  -7600.0],
-                           [  7400.0, 0.0,  -7600.0],
-                           [ 12000.0, 0.0,  -7600.0],
-                           [     0.0, 0.0, -12000.0]]) 
+    targets = numpy.array([[ 0.0,-12000.0,      0.0],
+                           [ 0.0, -7400.0,      0.0],
+                           [ 0.0, -4600.0,      0.0],
+                           [ 0.0,     0.0,      0.0],
+                           [ 0.0,  4600.0,      0.0],
+                           [ 0.0,  7400.0,      0.0],
+                           [ 0.0, 12000.0,      0.0],
+                           [ 0.0,     0.0,  -3000.0],
+                           [ 0.0,-12000.0,  -7600.0],
+                           [ 0.0, -7400.0,  -7600.0],
+                           [ 0.0, -4600.0,  -7600.0],
+                           [ 0.0,     0.0,  -7600.0],
+                           [ 0.0,  4600.0,  -7600.0],
+                           [ 0.0,  7400.0,  -7600.0],
+                           [ 0.0, 12000.0,  -7600.0],
+                           [ 0.0,     0.0, -12000.0]]) 
 elif dx == 100:
-    targets = numpy.array([[-12000.0, 0.0,      0.0],
-                           [ -7500.0, 0.0,      0.0],
-                           [ -4500.0, 0.0,      0.0],
-                           [     0.0, 0.0,      0.0],
-                           [  4500.0, 0.0,      0.0],
-                           [  7500.0, 0.0,      0.0],
-                           [ 12000.0, 0.0,      0.0],
-                           [     0.0, 0.0,  -3000.0],
-                           [-12000.0, 0.0,  -7500.0],
-                           [ -7500.0, 0.0,  -7500.0],
-                           [ -4500.0, 0.0,  -7500.0],
-                           [     0.0, 0.0,  -7500.0],
-                           [  4500.0, 0.0,  -7500.0],
-                           [  7500.0, 0.0,  -7500.0],
-                           [ 12000.0, 0.0,  -7500.0],
-                           [     0.0, 0.0, -12000.0]]) 
+    targets = numpy.array([[ 0.0,-12000.0,      0.0],
+                           [ 0.0, -7500.0,      0.0],
+                           [ 0.0, -4500.0,      0.0],
+                           [ 0.0,     0.0,      0.0],
+                           [ 0.0,  4500.0,      0.0],
+                           [ 0.0,  7500.0,      0.0],
+                           [ 0.0, 12000.0,      0.0],
+                           [ 0.0,     0.0,  -3000.0],
+                           [ 0.0,-12000.0,  -7500.0],
+                           [ 0.0, -7500.0,  -7500.0],
+                           [ 0.0, -4500.0,  -7500.0],
+                           [ 0.0,     0.0,  -7500.0],
+                           [ 0.0,  4500.0,  -7500.0],
+                           [ 0.0,  7500.0,  -7500.0],
+                           [ 0.0, 12000.0,  -7500.0],
+                           [ 0.0,     0.0, -12000.0]]) 
 
-                       
-    
-
-reader = VTKDataReader()
 tolerance = 1.0e-6
 
-# Get vertices and find indices of target locations
-filename = "%s-fault_t%05d.vtk" % (outputRoot,timestamps[0])
-data = reader.read(filename)
-
-vertices = numpy.array(data['vertices'])
+h5 = tables.openFile("%s.h5" % inputRoot, 'r')
+vertices = h5.root.geometry.vertices[:]
 ntargets = targets.shape[0]
 indices = []
 for target in targets:
@@ -80,32 +68,32 @@
     min = numpy.min(dist)
     indices.append(numpy.where(dist <= min+tolerance)[0][0])
 
-print "Indices", indices
-print "Coordinates of selected points:",vertices[indices,:]
+print "Indices: ", indices
+print "Coordinates of selected points:\n",vertices[indices,:]
 
-# Extract values
-nsteps = timestamps.shape[0]
-slip = numpy.zeros((nsteps,ntargets,3))  # 3-D array (time, targets, components)
-slip_rate = numpy.zeros((nsteps,ntargets,3))
-traction = numpy.zeros((nsteps,ntargets,3))
-itime = 0
-for timestamp in timestamps:
-    filename = "%s-fault_t%05d.vtk" % (outputRoot,timestamp)
-    data = reader.read(filename)
-    fields = data['vertex_fields']
-    slip[itime,0:ntargets,:] = fields['slip'][indices,:].squeeze()
-    slip_rate[itime,0:ntargets,:] = fields['slip_rate'][indices,:].squeeze()
-    traction[itime,0:ntargets,:] = fields['traction'][indices,:].squeeze()
-    itime += 1
 
+# Get datasets
+slip = h5.root.vertex_fields.slip[:]
+slip_rate = h5.root.vertex_fields.slip_rate[:]
+traction = h5.root.vertex_fields.traction[:]
+timeStamps =  h5.root.time[:].ravel()
+nsteps = timeStamps.shape[0]
+dt = timeStamps[1] - timeStamps[0]
 
+h5.close()
+
+# Extract locations
+slip = slip[:,indices,:]
+slip_rate = slip_rate[:,indices,:]
+traction = traction[:,indices,:]
+
 # Write data
 headerA = \
     "# problem = TPV205\n" + \
-    "# author = Surendra N. Somala\n" + \
+    "# author = Brad Aagaard\n" + \
     "# date = %s\n" % (time.asctime()) + \
     "# code = PyLith\n" + \
-    "# code_version = 1.5.0a\n" + \
+    "# code_version = 1.6.2\n" + \
     "# element_size = %s\n" % dx
 headerB = \
     "# Time series in 7 columns of E14.6:\n" + \
@@ -124,12 +112,9 @@
 locHeader = "# location = on fault, %3.1f km along strike and %3.1f km depth\n"
 locName = "st%+04ddp%03d"
 
-lengthScale = 1000.0
-timeScale = 1000.0
+lengthScale = 1.0e+3
+strike = targets[:,1] / lengthScale
 dip = -targets[:,2] / lengthScale
-strike = targets[:,0] / lengthScale
-time =  timestamps / timeScale
-print "time", time
 
 for iloc in xrange(ntargets):
     pt = locName % (round(10*strike[iloc]), 
@@ -141,12 +126,12 @@
     fout.write("# num_timesteps = %8d\n" % nsteps)
     fout.write(locHeader % (strike[iloc], dip[iloc]))
     fout.write(headerB)
-    data = numpy.transpose((time, 
+    data = numpy.transpose((timeStamps, 
                             -slip[:,iloc,0],
-                            -slip_rate[:,iloc,0],
+                            +slip_rate[:,iloc,0],
                             -traction[:,iloc,0]/1e+6,
                             +slip[:,iloc,1],
-                            +slip_rate[:,iloc,1],
+                            -slip_rate[:,iloc,1],
                             +traction[:,iloc,1]/1e+6))
     numpy.savetxt(fout, data, fmt='%14.6e')
     fout.close()

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_ruptime.py
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_ruptime.py	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tabulate_ruptime.py	2011-10-28 23:49:25 UTC (rev 19126)
@@ -5,92 +5,65 @@
 #                           Brad T. Aagaard
 #                        U.S. Geological Survey
 #
-# <LicenseText>
-#
 # ----------------------------------------------------------------------
 #
 
 cell = "tet4"
 dx = 200
-dt = 0.05
 
-outputRoot = "output/%s_%3dm" % (cell,dx)
+inputRoot = "output/%s_%3dm-fault" % (cell,dx)
 outdir = "scecfiles/%s_%3dm/" % (cell,dx)
 
+# ----------------------------------------------------------------------
+import tables
 import numpy
 import time
 
-from pylith.utils.VTKDataReader import VTKDataReader
-
 # ----------------------------------------------------------------------
-timestamps = numpy.arange(50,12001,50)
-    
-
-reader = VTKDataReader()
 threshold = 0.001 # threshold for detecting slip has started
+maxTime = 1.0e+10 # Large value for default rupture time
 
-filename = "%s-fault_t%05d.vtk" % (outputRoot,timestamps[0])
-data = reader.read(filename)
-vertices = numpy.array(data['vertices'])
-npts = vertices.shape[0]
+h5 = tables.openFile("%s.h5" % inputRoot, 'r')
+vertices = h5.root.geometry.vertices[:]
+slip = h5.root.vertex_fields.slip[:]
+slipRate = h5.root.vertex_fields.slip_rate[:]
+timeStamps =  h5.root.time[:].ravel()
+dt = timeStamps[1] - timeStamps[0]
 
-# Extract values
-nsteps = timestamps.shape[0]
+h5.close()
 
-# Set default rupture time to a large value (1.0e+9)
-rupTime = 1.0e+9 * numpy.ones( (npts,), dtype=numpy.float64)
-#rupTime = numpy.zeros( (npts,), dtype=numpy.float64)
+nsteps = timeStamps.shape[0]
+npts = vertices.shape[0]
 
+rupTime = maxTime * numpy.ones( (npts,), dtype=numpy.float64)
+
 # Create buffer for current rupture time
 tmpTime = numpy.zeros( (npts,), dtype=numpy.float64)
 
 itime = 0
-for timestamp in timestamps:
-    t = (itime+1)*dt # itime=0, t=dt
+for timestamp in timeStamps:
+    t = timeStamps[itime]
 
-    # Get slip rate field
-    filename = "%s-fault_t%05d.vtk" % (outputRoot,timestamp)
-    data = reader.read(filename)
-    fields = data['vertex_fields']
-    slipRate = fields['slip'][:,:].squeeze()
-
     # Compute magnitude of slip rate
-    slipRateMag = (slipRate[:,0]**2 + slipRate[:,1]**2)**0.5
+    slipRateMag = (slipRate[itime,:,0]**2 + slipRate[itime,:,1]**2)**0.5
 
     # Set rupture time at locations where threshold is exceeded
-    tmpTime[slipRateMag > threshold] = t
+    mask = slipRateMag > threshold
+    tmpTime[:] = maxTime
+    tmpTime[mask] = t
 
-    #print "slipRateMag \n", slipRateMag
-    #print "slipRateMag > threshold \n ", slipRateMag > threshold
-
-    #print "tmpTime \n", tmpTime[1:50]
-    #print "time", t
-
-    # Get indicates where current time is less than current rupture
-    # time (this is only the locations that just started slipping)
-    #indices = numpy.where((tmpTime < rupTime) and (rupTime < 0.00001))[0]
-    #indices = ((tmpTime < rupTime) & (rupTime < testarr))
-    indices = numpy.where((tmpTime < rupTime) & (tmpTime > 0.00001))[0]
-
-    #print "indices \n", indices[1:200]
-
-
+    indices = numpy.where(tmpTime < rupTime)[0]
     rupTime[indices] = t
 
-    #print "rupTime \n", rupTime[1:200]
-
     itime += 1
 
-# print "rupTime \n", rupTime
-# rupTime[rupTime < 0.00001] = 1.0e+9
-
 # Write data
 headerA = \
     "# problem = TPV205\n" + \
-    "# author = Surendra N. Somala\n" + \
+    "# author = Brad Aagaard\n" + \
     "# date = %s\n" % (time.asctime()) + \
     "# code = PyLith\n" + \
-    "# code_version = 1.5.0a\n" + \
+    "# code_version = 1.6.2\n" + \
     "# element_size = %s\n" % dx + \
     "# Contour data in 3 columns of E14.6:\n" + \
     "# Column #1 = Distance along strike from hypocenter (m)\n" + \
@@ -102,12 +75,8 @@
     "#\n"
 
 
-lengthScale = 1000.0
-timeScale = 1000.0
 distDip = -vertices[:,2]
-distStrike = vertices[:,0]
-time =  timestamps / timeScale
-print "time", time
+distStrike = vertices[:,1]
 
 filename = "%sruptime.dat" % (outdir)
 fout = open(filename, "w")

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tet4_200m.cfg
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tet4_200m.cfg	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tet4_200m.cfg	2011-10-28 23:49:25 UTC (rev 19126)
@@ -11,7 +11,7 @@
 # problem
 # ----------------------------------------------------------------------
 [pylithapp.timedependent.formulation.time_step]
-dt = 0.01666666666666666666666667*s
+dt = 0.0125*s
 
 # ----------------------------------------------------------------------
 # output

Modified: short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tractions.spatialdb
===================================================================
--- short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tractions.spatialdb	2011-10-28 23:48:01 UTC (rev 19125)
+++ short/3D/PyLith/benchmarks/trunk/dynamic/scecdynrup/tpv205/tractions.spatialdb	2011-10-28 23:49:25 UTC (rev 19126)
@@ -3,7 +3,7 @@
   num-values = 3
   value-names =  traction-shear-leftlateral traction-shear-updip traction-normal
   value-units =  MPa   MPa  MPa
-  num-locs = 48
+  num-locs = 108
   data-dim = 2
   space-dim = 3
   cs-data = cartesian {
@@ -11,54 +11,116 @@
     space-dim = 3
   }
 }
-0.0  -9.0001  -5.9999    -70.0    0.0   -120.0
-0.0  -9.0     -5.9999	 -70.0	  0.0   -120.0
-0.0  -6.0     -5.9999	 -70.0	  0.0   -120.0
-0.0  -5.9999  -5.9999	 -70.0	  0.0   -120.0
-0.0  -1.5001  -5.9999	 -70.0	  0.0   -120.0
-0.0  -1.5     -5.9999	 -70.0	  0.0   -120.0
-0.0  +1.5     -5.9999	 -70.0	  0.0   -120.0
-0.0  +1.5001  -5.9999	 -70.0	  0.0   -120.0
-0.0  +5.9999  -5.9999	 -70.0	  0.0   -120.0
-0.0  +6.0     -5.9999	 -70.0	  0.0   -120.0
-0.0  +9.0     -5.9999	 -70.0	  0.0   -120.0
-0.0  +9.0001  -5.9999	 -70.0	  0.0   -120.0
+0.0  -9.001   -5.999     -70.0    0.0   -120.0
+0.0  -9.0     -5.999     -70.0	  0.0   -120.0
+0.0  -8.999   -5.999     -70.0	  0.0   -120.0
+0.0  -6.001   -5.999     -70.0	  0.0   -120.0
+0.0  -6.0     -5.999     -70.0	  0.0   -120.0
+0.0  -5.999   -5.999     -70.0	  0.0   -120.0
+0.0  -1.501   -5.999     -70.0	  0.0   -120.0
+0.0  -1.5     -5.999     -70.0	  0.0   -120.0
+0.0  -1.499   -5.999     -70.0	  0.0   -120.0
+0.0  +1.499   -5.999     -70.0	  0.0   -120.0
+0.0  +1.5     -5.999     -70.0	  0.0   -120.0
+0.0  +1.501   -5.999     -70.0	  0.0   -120.0
+0.0  +5.999   -5.999     -70.0	  0.0   -120.0
+0.0  +6.0     -5.999     -70.0	  0.0   -120.0
+0.0  +6.001   -5.999     -70.0	  0.0   -120.0
+0.0  +8.999   -5.999     -70.0	  0.0   -120.0
+0.0  +9.0     -5.999     -70.0	  0.0   -120.0
+0.0  +9.001   -5.999     -70.0	  0.0   -120.0
 
-0.0  -9.0001  -6.0	 -70.0	  0.0   -120.0
-0.0  -9.0     -6.0	 -78.0	  0.0   -120.0
-0.0  -6.0     -6.0	 -78.0	  0.0   -120.0
-0.0  -5.9999  -6.0	 -70.0	  0.0   -120.0
-0.0  -1.5001  -6.0	 -70.0	  0.0   -120.0
-0.0  -1.5     -6.0	 -81.6	  0.0   -120.0
-0.0  +1.5     -6.0	 -81.6	  0.0   -120.0
-0.0  +1.5001  -6.0	 -70.0	  0.0   -120.0
-0.0  +5.9999  -6.0	 -70.0	  0.0   -120.0
-0.0  +6.0     -6.0	 -62.0	  0.0   -120.0
-0.0  +9.0     -6.0	 -62.0	  0.0   -120.0
-0.0  +9.0001  -6.0	 -70.0	  0.0   -120.0
+0.0  -9.001   -6.0       -70.0	  0.0   -120.0
+0.0  -9.0     -6.0       -72.0	  0.0   -120.0
+0.0  -8.999   -6.0       -74.0	  0.0   -120.0
+0.0  -6.001   -6.0       -74.0	  0.0   -120.0
+0.0  -6.0     -6.0       -72.0	  0.0   -120.0
+0.0  -5.999   -6.0       -70.0	  0.0   -120.0
+0.0  -1.501   -6.0       -70.0	  0.0   -120.0
+0.0  -1.5     -6.0       -72.9	  0.0   -120.0
+0.0  -1.499   -6.0       -75.8	  0.0   -120.0
+0.0  +1.499   -6.0       -75.8	  0.0   -120.0
+0.0  +1.5     -6.0       -72.9	  0.0   -120.0
+0.0  +1.501   -6.0       -70.0	  0.0   -120.0
+0.0  +5.999   -6.0       -70.0	  0.0   -120.0
+0.0  +6.0     -6.0       -68.0	  0.0   -120.0
+0.0  +6.001   -6.0       -66.0	  0.0   -120.0
+0.0  +8.999   -6.0       -66.0	  0.0   -120.0
+0.0  +9.0     -6.0       -68.0	  0.0   -120.0
+0.0  +9.001   -6.0       -70.0	  0.0   -120.0
 
-0.0  -9.0001  -9.0	 -70.0	  0.0   -120.0
-0.0  -9.0     -9.0	 -78.0	  0.0   -120.0
-0.0  -6.0     -9.0	 -78.0	  0.0   -120.0
-0.0  -5.9999  -9.0	 -70.0	  0.0   -120.0
-0.0  -1.5001  -9.0	 -70.0	  0.0   -120.0
-0.0  -1.5     -9.0	 -81.6	  0.0   -120.0
-0.0  +1.5     -9.0	 -81.6	  0.0   -120.0
-0.0  +1.5001  -9.0	 -70.0	  0.0   -120.0
-0.0  +5.9999  -9.0	 -70.0	  0.0   -120.0
-0.0  +6.0     -9.0	 -62.0	  0.0   -120.0
-0.0  +9.0     -9.0	 -62.0	  0.0   -120.0
-0.0  +9.0001  -9.0	 -70.0	  0.0   -120.0
+0.0  -9.001   -6.001     -70.0	  0.0   -120.0
+0.0  -9.0     -6.001     -74.0	  0.0   -120.0
+0.0  -8.999   -6.001     -78.0	  0.0   -120.0
+0.0  -6.001   -6.001     -78.0	  0.0   -120.0
+0.0  -6.0     -6.001     -74.0	  0.0   -120.0
+0.0  -5.999   -6.001     -70.0	  0.0   -120.0
+0.0  -1.501   -6.001     -70.0	  0.0   -120.0
+0.0  -1.5     -6.001     -75.8	  0.0   -120.0
+0.0  -1.499   -6.001     -81.6	  0.0   -120.0
+0.0  +1.499   -6.001     -81.6	  0.0   -120.0
+0.0  +1.5     -6.001     -75.8	  0.0   -120.0
+0.0  +1.501   -6.001     -70.0	  0.0   -120.0
+0.0  +5.999   -6.001     -70.0	  0.0   -120.0
+0.0  +6.0     -6.001     -66.0	  0.0   -120.0
+0.0  +6.001   -6.001     -62.0	  0.0   -120.0
+0.0  +8.999   -6.001     -62.0	  0.0   -120.0
+0.0  +9.0     -6.001     -66.0	  0.0   -120.0
+0.0  +9.001   -6.001     -70.0	  0.0   -120.0
 
-0.0  -9.0001  -9.0001	 -70.0	  0.0   -120.0
-0.0  -9.0     -9.0001	 -70.0	  0.0   -120.0
-0.0  -6.0     -9.0001	 -70.0	  0.0   -120.0
-0.0  -5.9999  -9.0001	 -70.0	  0.0   -120.0
-0.0  -1.5001  -9.0001	 -70.0	  0.0   -120.0
-0.0  -1.5     -9.0001	 -70.0	  0.0   -120.0
-0.0  +1.5     -9.0001	 -70.0	  0.0   -120.0
-0.0  +1.5001  -9.0001	 -70.0	  0.0   -120.0
-0.0  +5.9999  -9.0001	 -70.0	  0.0   -120.0
-0.0  +6.0     -9.0001	 -70.0	  0.0   -120.0
-0.0  +9.0     -9.0001	 -70.0	  0.0   -120.0
-0.0  +9.0001  -9.0001	 -70.0	  0.0   -120.0
+0.0  -9.001   -8.999     -70.0	  0.0   -120.0
+0.0  -9.0     -8.999     -74.0	  0.0   -120.0
+0.0  -8.999   -8.999     -78.0	  0.0   -120.0
+0.0  -6.001   -8.999     -78.0	  0.0   -120.0
+0.0  -6.0     -8.999     -74.0	  0.0   -120.0
+0.0  -5.999   -8.999     -70.0	  0.0   -120.0
+0.0  -1.501   -8.999     -70.0	  0.0   -120.0
+0.0  -1.5     -8.999     -75.8	  0.0   -120.0
+0.0  -1.499   -8.999     -81.6	  0.0   -120.0
+0.0  +1.499   -8.999     -81.6	  0.0   -120.0
+0.0  +1.5     -8.999     -75.8	  0.0   -120.0
+0.0  +1.501   -8.999     -70.0	  0.0   -120.0
+0.0  +5.999   -8.999     -70.0	  0.0   -120.0
+0.0  +6.0     -8.999     -66.0	  0.0   -120.0
+0.0  +6.001   -8.999     -62.0	  0.0   -120.0
+0.0  +8.999   -8.999     -62.0	  0.0   -120.0
+0.0  +9.0     -8.999     -66.0	  0.0   -120.0
+0.0  +9.001   -8.999     -70.0	  0.0   -120.0
+
+0.0  -9.001   -9.0       -70.0	  0.0   -120.0
+0.0  -9.0     -9.0       -72.0	  0.0   -120.0
+0.0  -8.999   -9.0       -74.0	  0.0   -120.0
+0.0  -6.001   -9.0       -74.0	  0.0   -120.0
+0.0  -6.0     -9.0       -72.0	  0.0   -120.0
+0.0  -5.999   -9.0       -70.0	  0.0   -120.0
+0.0  -1.501   -9.0       -70.0	  0.0   -120.0
+0.0  -1.5     -9.0       -72.9	  0.0   -120.0
+0.0  -1.499   -9.0       -75.8	  0.0   -120.0
+0.0  +1.499   -9.0       -75.8	  0.0   -120.0
+0.0  +1.5     -9.0       -72.9	  0.0   -120.0
+0.0  +1.501   -9.0       -70.0	  0.0   -120.0
+0.0  +5.999   -9.0       -70.0	  0.0   -120.0
+0.0  +6.0     -9.0       -68.0	  0.0   -120.0
+0.0  +6.001   -9.0       -66.0	  0.0   -120.0
+0.0  +8.999   -9.0       -66.0	  0.0   -120.0
+0.0  +9.0     -9.0       -68.0	  0.0   -120.0
+0.0  +9.001   -9.0       -70.0	  0.0   -120.0
+
+0.0  -9.001   -9.001     -70.0    0.0   -120.0
+0.0  -9.0     -9.001     -70.0	  0.0   -120.0
+0.0  -8.999   -9.001     -70.0	  0.0   -120.0
+0.0  -6.001   -9.001     -70.0	  0.0   -120.0
+0.0  -6.0     -9.001     -70.0	  0.0   -120.0
+0.0  -5.999   -9.001     -70.0	  0.0   -120.0
+0.0  -1.501   -9.001     -70.0	  0.0   -120.0
+0.0  -1.5     -9.001     -70.0	  0.0   -120.0
+0.0  -1.499   -9.001     -70.0	  0.0   -120.0
+0.0  +1.499   -9.001     -70.0	  0.0   -120.0
+0.0  +1.5     -9.001     -70.0	  0.0   -120.0
+0.0  +1.501   -9.001     -70.0	  0.0   -120.0
+0.0  +5.999   -9.001     -70.0	  0.0   -120.0
+0.0  +6.0     -9.001     -70.0	  0.0   -120.0
+0.0  +6.001   -9.001     -70.0	  0.0   -120.0
+0.0  +8.999   -9.001     -70.0	  0.0   -120.0
+0.0  +9.0     -9.001     -70.0	  0.0   -120.0
+0.0  +9.001   -9.001     -70.0	  0.0   -120.0



More information about the CIG-COMMITS mailing list