[cig-commits] r17110 - in short/3D/PyLith/trunk/tests/2d: . faultstrip

brad at geodynamics.org brad at geodynamics.org
Mon Aug 23 16:49:12 PDT 2010


Author: brad
Date: 2010-08-23 16:49:12 -0700 (Mon, 23 Aug 2010)
New Revision: 17110

Added:
   short/3D/PyLith/trunk/tests/2d/faultstrip/
   short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_slipweakening.cfg
   short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_timeweakening.cfg
   short/3D/PyLith/trunk/tests/2d/faultstrip/geometry.jou
   short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.exo
   short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.jou
   short/3D/PyLith/trunk/tests/2d/faultstrip/output/
   short/3D/PyLith/trunk/tests/2d/faultstrip/pylithapp.cfg
   short/3D/PyLith/trunk/tests/2d/faultstrip/tractions.spatialdb
Log:
Added simple test case for propagating friction simulations.

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_slipweakening.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_slipweakening.cfg	                        (rev 0)
+++ short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_slipweakening.cfg	2010-08-23 23:49:12 UTC (rev 17110)
@@ -0,0 +1,31 @@
+# -*- Python -*-
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces.fault]
+
+# Use slip-weakening friction
+friction = pylith.friction.SlipWeakening
+
+friction.db_properties = spatialdata.spatialdb.UniformDB
+friction.db_properties.label = Slip weakening
+friction.db_properties.values = [static-coefficient,dynamic-coefficient,slip-weakening-parameter,cohesion]
+friction.db_properties.data = [0.6,0.3,0.2*m,0.0*Pa]
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.output]
+writer.filename = output/slipweakening.vtk
+
+[pylithapp.timedependent.interfaces.fault.output]
+writer.filename = output/slipweakening-fault.vtk
+
+vertex_info_fields = [strike_dir,normal_dir,initial_traction,static_coefficient,dynamic_coefficient,slip_weakening_parameter,cohesion]
+
+vertex_data_fields = [slip,traction,cumulative_slip,previous_slip]
+
+[pylithapp.timedependent.materials.elastic.output]
+writer.filename = output/slipweakening-statevars.vtk

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_timeweakening.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_timeweakening.cfg	                        (rev 0)
+++ short/3D/PyLith/trunk/tests/2d/faultstrip/dynamic_timeweakening.cfg	2010-08-23 23:49:12 UTC (rev 17110)
@@ -0,0 +1,31 @@
+# -*- Python -*-
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces.fault]
+
+# Use slip-weakening friction
+friction = pylith.friction.TimeWeakening
+
+friction.db_properties = spatialdata.spatialdb.UniformDB
+friction.db_properties.label = Time weakening
+friction.db_properties.values = [static-coefficient,dynamic-coefficient,time-weakening-parameter,cohesion]
+friction.db_properties.data = [0.6,0.3,0.3*s,0.0*Pa]
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.output]
+writer.filename = output/timeweakening.vtk
+
+[pylithapp.timedependent.interfaces.fault.output]
+writer.filename = output/timeweakening-fault.vtk
+
+vertex_info_fields = [strike_dir,normal_dir,initial_traction,static_coefficient,dynamic_coefficient,time_weakening_parameter,cohesion]
+
+vertex_data_fields = [slip,traction,elapsed_time]
+
+[pylithapp.timedependent.materials.elastic.output]
+writer.filename = output/timeweakening-statevars.vtk

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/geometry.jou
===================================================================
--- short/3D/PyLith/trunk/tests/2d/faultstrip/geometry.jou	                        (rev 0)
+++ short/3D/PyLith/trunk/tests/2d/faultstrip/geometry.jou	2010-08-23 23:49:12 UTC (rev 17110)
@@ -0,0 +1,27 @@
+# ----------------------------------------------------------------------
+# Create block
+# ----------------------------------------------------------------------
+
+# Bar is 400m x 20000m
+# -10000 m <= x <= 10000 m
+# -200 m <= y <= 200 m
+#
+# We create the 2-D bar by extracting the mid-surface from a 3-D bar.
+reset
+brick x 20000 y 400 z 400
+create midsurface volume 1 surface 1 2
+delete volume 1
+
+# ----------------------------------------------------------------------
+# Create interface surfaces
+# ----------------------------------------------------------------------
+
+# Create fault (xz plane) at y = 0.0
+split surface 7 across location position -10000 0 0 location position 10000 0 0
+curve 17 name "fault_surface"
+
+# ----------------------------------------------------------------------
+# Imprint all volumes, merging surfaces
+# ----------------------------------------------------------------------
+imprint all
+merge all

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.exo
===================================================================
(Binary files differ)


Property changes on: short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.exo
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.jou
===================================================================
--- short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.jou	                        (rev 0)
+++ short/3D/PyLith/trunk/tests/2d/faultstrip/mesh.jou	2010-08-23 23:49:12 UTC (rev 17110)
@@ -0,0 +1,47 @@
+# ----------------------------------------------------------------------
+# Generate geometry
+# ----------------------------------------------------------------------
+playback 'geometry.jou'
+
+# ----------------------------------------------------------------------
+# Set discretization size
+# ----------------------------------------------------------------------
+surface all size 200
+
+# ----------------------------------------------------------------------
+# Generate the mesh
+# ----------------------------------------------------------------------
+mesh surface all
+
+# ----------------------------------------------------------------------
+# Create blocks for materials
+# ----------------------------------------------------------------------
+block 1 surface 8 9
+block 1 name "elastic"
+
+# ----------------------------------------------------------------------
+# Create nodeset for fault
+# ----------------------------------------------------------------------
+group "fault" add node in fault_surface
+nodeset 10 group fault
+nodeset 10 name "fault"
+
+# ----------------------------------------------------------------------
+# Create nodeset for +y face
+# ----------------------------------------------------------------------
+group "face_ypos" add node in curve 15
+nodeset 20 group face_ypos
+nodeset 20 name "face_ypos"
+
+# ----------------------------------------------------------------------
+# Create nodeset for -y face
+# ----------------------------------------------------------------------
+group "face_yneg" add node in curve 13
+nodeset 21 group face_yneg
+nodeset 21 name "face_yneg"
+
+# ----------------------------------------------------------------------
+# Export exodus file
+# ----------------------------------------------------------------------
+export mesh "mesh.exo" dimension 2 overwrite
+

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/2d/faultstrip/pylithapp.cfg	                        (rev 0)
+++ short/3D/PyLith/trunk/tests/2d/faultstrip/pylithapp.cfg	2010-08-23 23:49:12 UTC (rev 17110)
@@ -0,0 +1,122 @@
+# -*- Python -*-
+[pylithapp]
+
+# This is not a self-contained simulation configuration file. This
+# file only specifies the general parameters common to the simulations
+# in this directory.
+
+# ----------------------------------------------------------------------
+# journal
+# ----------------------------------------------------------------------
+# Turn on some journals to show progress.
+[pylithapp.journal.info]
+timedependent = 1
+explicit = 1
+petsc = 1
+meshiocubit = 1
+explicitelasticity = 1
+quadrature2d = 1
+fiatlagrange = 1
+faultcohesivedyn = 1
+
+[pylithapp.journal.debug]
+pylithapp = 1
+problem = 1
+explicit = 1
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+[pylithapp.mesh_generator]
+
+reader = pylith.meshio.MeshIOCubit
+
+[pylithapp.mesh_generator.reader]
+filename = mesh.exo
+coordsys.space_dim = 2
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+dimension = 2
+
+formulation = pylith.problems.ExplicitLumped
+
+normalizer = spatialdata.units.NondimElasticDynamic
+normalizer.shear_wave_speed = 1.0*km/s
+
+bc = [y_pos,y_neg]
+interfaces = [fault]
+materials = [elastic]
+
+[pylithapp.timedependent.formulation.time_step]
+total_time = 10.0*s
+dt = 0.05*s
+
+# ----------------------------------------------------------------------
+# materials
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.materials]
+elastic = pylith.materials.ElasticPlaneStrain
+
+[pylithapp.timedependent.materials.elastic]
+label = Elastic material
+id = 1
+db_properties = spatialdata.spatialdb.UniformDB
+db_properties.values = [density,vp,vs]
+db_properties.data = [2500*kg/m**3,1732.0*m/s,1000.0*m/s]
+
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 2
+quadrature.cell.quad_order = 2
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.bc.y_pos]
+label = face_ypos
+bc_dof = [0, 1]
+
+[pylithapp.timedependent.bc.y_neg]
+label = face_yneg
+bc_dof = [0, 1]
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces]
+fault = pylith.faults.FaultCohesiveDyn
+
+[pylithapp.timedependent.interfaces.fault]
+id = 100
+label = fault
+
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 1
+quadrature.cell.quad_order = 2
+
+db_initial_tractions = spatialdata.spatialdb.SimpleDB
+db_initial_tractions.label = Initial fault tractions
+db_initial_tractions.iohandler.filename = tractions.spatialdb
+db_initial_tractions.query_type = linear
+
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+[pylithapp.petsc]
+
+log_summary = true
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.output]
+vertex_data_fields = [displacement,velocity]
+skip = 1
+writer.time_format = %05.2f
+
+[pylithapp.timedependent.materials.elastic.output]
+cell_data_fields = []
+cell_filter = pylith.meshio.CellFilterAvgMesh

Added: short/3D/PyLith/trunk/tests/2d/faultstrip/tractions.spatialdb
===================================================================
--- short/3D/PyLith/trunk/tests/2d/faultstrip/tractions.spatialdb	                        (rev 0)
+++ short/3D/PyLith/trunk/tests/2d/faultstrip/tractions.spatialdb	2010-08-23 23:49:12 UTC (rev 17110)
@@ -0,0 +1,21 @@
+// -*- C++ -*-
+//
+#SPATIAL.ascii 1
+SimpleDB {
+  num-values = 2
+  value-names =  traction-shear  traction-normal
+  value-units =  MPa MPa
+  num-locs = 6
+  data-dim = 1
+  space-dim = 2
+  cs-data = cartesian {
+    to-meters = 1.0e+3 // specify coordinates in km
+    space-dim = 2
+  }
+}
+-20.0   0.0    -5.0  -10.0
+-3.001  0.0    -5.0  -10.0
+-3.000  0.0    -6.1  -10.0
++3.000  0.0    -6.1  -10.0
++3.001  0.0    -5.0  -10.0
++20.0   0.0    -5.0  -10.0



More information about the CIG-COMMITS mailing list