[cig-commits] r15638 - in short/3D/PyLith/benchmarks/trunk/quasistatic: . solvertest solvertest/meshes solvertest/parameters strikeslipnog/parameters

brad at geodynamics.org brad at geodynamics.org
Mon Aug 31 16:34:27 PDT 2009


Author: brad
Date: 2009-08-31 16:34:26 -0700 (Mon, 31 Aug 2009)
New Revision: 15638

Added:
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/geometry.jou
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/hex8.exo
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/mesh_hex8.jou
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/setbc.jou
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/hex8.cfg
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_elastic.spatialdb
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_maxwell.spatialdb
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/pylithapp.cfg
   short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/results/
Modified:
   short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/pylithapp.cfg
   short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/strikeslip_hex8_1000m.cfg
Log:
Added mesh for testing solver issues.

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/geometry.jou
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/geometry.jou	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/geometry.jou	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,63 @@
+# ----------------------------------------------------------------------
+# Create block
+# ----------------------------------------------------------------------
+
+# Block is 72 km x 72 km x 36 km
+# -36 km <= x <= 36 km
+# -36 km <= y <= 36 km
+# -36 km <= z <= 0 km
+reset
+brick x 72000 y 72000 z 36000
+
+# Translate block so the top is at z=0
+volume 1 move x 0 y 0 z -18000
+
+# ----------------------------------------------------------------------
+# Create interface surfaces
+# ----------------------------------------------------------------------
+# Center fault
+create planar surface with plane xplane offset 0
+surface 7 name "fault_middle"
+rotate surface fault_middle about z angle -15
+
+# Fault on +x side of middle fault
+create planar surface with plane yplane offset 0
+surface 8 name "fault_xpos"
+rotate surface fault_xpos about z angle -45
+move surface fault_xpos x 12000 y 12000 z 0
+
+# Fault on -x side of middle fault
+create planar surface with plane yplane offset 0
+surface 9 name "fault_xneg"
+rotate surface fault_xneg about z angle -45
+move surface fault_xneg x -12000 y -12000 z 0
+
+# Moho
+create planar surface with plane zplane offset -12000
+surface 10 name "material_interface"
+
+# ----------------------------------------------------------------------
+# Divide volumes using interface surfaces
+# ----------------------------------------------------------------------
+webcut volume 1 with plane surface fault_middle
+webcut volume 1 with plane surface fault_xpos
+webcut volume 6 with plane surface fault_xneg
+webcut volume all with plane surface material_interface
+volume 1 name "elastic_xpos_ypos"
+volume 6 name "elastic_xneg_ypos"
+volume 7 name "elastic_xpos_yneg"
+volume 8 name "elastic_xneg_yneg"
+volume 9 name "visco_xpos_ypos"
+volume 13 name "visco_xneg_ypos"
+volume 14 name "visco_xpos_yneg"
+volume 15 name "visco_xneg_yneg"
+
+# ----------------------------------------------------------------------
+# Imprint all volumes, merging surfaces
+# ----------------------------------------------------------------------
+# Remove sheet bodies
+delete body 2 3 4 5 10 11 12
+
+imprint all with volume all
+merge all
+

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/hex8.exo
===================================================================
(Binary files differ)


Property changes on: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/hex8.exo
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/mesh_hex8.jou
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/mesh_hex8.jou	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/mesh_hex8.jou	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,32 @@
+# ----------------------------------------------------------------------
+# Generate geometry
+# ----------------------------------------------------------------------
+playback 'geometry.jou'
+
+# ----------------------------------------------------------------------
+# Set scheme
+# ----------------------------------------------------------------------
+surface 23 25 41 scheme pave
+surface 33 35 57 scheme pave
+surface 27 29 67 scheme pave
+surface 39 37 77 scheme pave
+
+# ----------------------------------------------------------------------
+# Set discretization size
+# ----------------------------------------------------------------------
+volume all size 3000
+
+# ----------------------------------------------------------------------
+# Generate the mesh
+# ----------------------------------------------------------------------
+mesh volume all
+
+# ----------------------------------------------------------------------
+# Generate blocks and nodesets
+# ----------------------------------------------------------------------
+playback 'setbc.jou'
+
+# ----------------------------------------------------------------------
+# Export exodus file
+# ----------------------------------------------------------------------
+export mesh "hex8.exo" dimension 3 overwrite

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/setbc.jou
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/setbc.jou	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/meshes/setbc.jou	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,94 @@
+# ----------------------------------------------------------------------
+# Create blocks for materials
+# ----------------------------------------------------------------------
+block 1 volume elastic_xpos_yneg elastic_xpos_ypos elastic_xneg_yneg elastic_xneg_ypos
+block 1 name "elastic"
+block 2 volume visco_xpos_yneg visco_xpos_ypos visco_xneg_yneg visco_xneg_ypos
+block 2 name "viscoelastic"
+
+# ----------------------------------------------------------------------
+# Create nodeset for +x face
+# ----------------------------------------------------------------------
+group "face_xpos" add node in surface 45
+group "face_xpos" add node in surface 47
+group "face_xpos" add node in surface 69
+group "face_xpos" add node in surface 76
+nodeset 10 group face_xpos
+nodeset 10 name "face xpos"
+
+# ----------------------------------------------------------------------
+# Create nodeset for -x face
+# ----------------------------------------------------------------------
+group "face_xneg" add node in surface 59
+group "face_xneg" add node in surface 65
+group "face_xneg" add node in surface 81
+group "face_xneg" add node in surface 83
+nodeset 11 group face_xneg
+nodeset 11 name "face xneg"
+
+# ----------------------------------------------------------------------
+# Create nodeset for +y face
+# ----------------------------------------------------------------------
+group "face_ypos" add node in surface 42
+group "face_ypos" add node in surface 50
+group "face_ypos" add node in surface 58
+group "face_ypos" add node in surface 66
+nodeset 12 group face_ypos
+nodeset 12 name "face ypos"
+
+# ----------------------------------------------------------------------
+# Create nodeset for -y face
+# ----------------------------------------------------------------------
+group "face_yneg" add node in surface 68
+group "face_yneg" add node in surface 78
+group "face_yneg" add node in surface 75
+group "face_yneg" add node in surface 86
+nodeset 13 group face_yneg
+nodeset 13 name "face yneg"
+
+# ----------------------------------------------------------------------
+# Create nodeset for -z face
+# ----------------------------------------------------------------------
+group "face_zneg" add node in surface 23
+group "face_zneg" add node in surface 29
+group "face_zneg" add node in surface 35
+group "face_zneg" add node in surface 37
+nodeset 14 group face_zneg
+nodeset 14 name "face zneg"
+
+# ----------------------------------------------------------------------
+# Create nodeset for +z face
+# ----------------------------------------------------------------------
+group "face_zpos" add node in surface 25
+group "face_zpos" add node in surface 27
+group "face_zpos" add node in surface 33
+group "face_zpos" add node in surface 39
+nodeset 15 group face_zpos
+nodeset 15 name "face zpos"
+
+# ----------------------------------------------------------------------
+# Create nodeset for fault_middle
+# ----------------------------------------------------------------------
+group "fault_middle" add node in surface 88
+nodeset 100 group fault_middle
+nodeset 100 name "fault_middle"
+
+# ----------------------------------------------------------------------
+# Create nodeset for fault_xpos
+# ----------------------------------------------------------------------
+group "fault_xpos" add node in surface 44
+group "fault_xpos" remove node in fault_middle
+group "fault_xpos" remove node in face_xpos
+nodeset 101 group fault_xpos
+nodeset 101 name "fault_xpos"
+
+# ----------------------------------------------------------------------
+# Create nodeset for fault_xneg
+# ----------------------------------------------------------------------
+group "fault_xneg" add node in surface 60
+group "fault_xneg" remove node in fault_middle
+group "fault_xneg" remove node in face_xneg
+nodeset 102 group fault_xneg
+nodeset 102 name "fault_xneg"
+
+

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/hex8.cfg
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/hex8.cfg	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/hex8.cfg	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,50 @@
+# -*- Python -*-
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+[pylithapp.mesh_generator.reader]
+filename = ../meshes/hex8.exo
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces.fault_middle]
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 2
+
+[pylithapp.timedependent.interfaces.fault_xpos]
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 2
+
+[pylithapp.timedependent.interfaces.fault_xneg]
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 2
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.domain]
+writer.filename = ../results/hex8.vtk
+
+[pylithapp.problem.formulation.output.subdomain]
+writer.filename = ../results/hex8-groundsurf.vtk
+
+[pylithapp.timedependent.interfaces.fault_middle.output]
+writer.filename = ../results/hex8-fault-middle.vtk
+
+[pylithapp.timedependent.interfaces.fault_xpos.output]
+writer.filename = ../results/hex8-fault-xpos.vtk
+
+[pylithapp.timedependent.interfaces.fault_xneg.output]
+writer.filename = ../results/hex8-fault-xneg.vtk
+
+[pylithapp.timedependent.materials.elastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = ../results/hex8-elastic.vtk
+
+[pylithapp.timedependent.materials.viscoelastic.output]
+cell_filter = pylith.meshio.CellFilterAvgMesh
+writer.filename = ../results/hex8-viscoelastic.vtk
+

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_elastic.spatialdb
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_elastic.spatialdb	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_elastic.spatialdb	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+  num-values = 3
+  value-names =  density vs vp
+  value-units =  kg/m**3  m/s  m/s
+  num-locs = 1
+  data-dim = 0
+  space-dim = 3
+  cs-data = cartesian {
+    to-meters = 1.0
+    space-dim = 3
+  }
+}
+0.0  0.0  0.0   2700.0  3333.333333333333  5773.502691896258

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_maxwell.spatialdb
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_maxwell.spatialdb	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/mat_maxwell.spatialdb	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+  num-values = 4
+  value-names =  density vs vp viscosity
+  value-units =  kg/m**3  m/s  m/s Pa*s
+  num-locs = 1
+  data-dim = 0
+  space-dim = 3
+  cs-data = cartesian {
+    to-meters = 1.0
+    space-dim = 3
+  }
+}
+0.0  0.0  0.0   2700.0  3333.333333333333  5773.502691896258  1.0e18

Added: short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/pylithapp.cfg
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/pylithapp.cfg	                        (rev 0)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/solvertest/parameters/pylithapp.cfg	2009-08-31 23:34:26 UTC (rev 15638)
@@ -0,0 +1,220 @@
+# -*- Python -*-
+[pylithapp]
+
+# ----------------------------------------------------------------------
+# journal
+# ----------------------------------------------------------------------
+[pylithapp.journal.info]
+timedependent = 1
+implicit = 1
+petsc = 1
+solverlinear = 1
+meshimporter = 1
+meshiocubit = 1
+elasticityimplicit = 1
+faultcohesivekin = 1
+
+[pylithapp.journal.debug]
+pylithapp = 1
+problem = 1
+implicit = 1
+
+# ----------------------------------------------------------------------
+# mesh_generator
+# ----------------------------------------------------------------------
+[pylithapp.mesh_generator]
+#debug = 1
+reader = pylith.meshio.MeshIOCubit
+
+[pylithapp.mesh_generator.reader]
+coordsys.space_dim = 3
+
+# ----------------------------------------------------------------------
+# problem
+# ----------------------------------------------------------------------
+[pylithapp.timedependent]
+dimension = 3
+
+materials = [elastic,viscoelastic]
+bc = [x_neg,x_pos,y_neg,y_pos,z_neg]
+interfaces = [fault_middle,fault_xpos,fault_xneg]
+
+normalizer.length_scale = 1.0*m
+
+[pylithapp.timedependent.formulation]
+output = [domain,subdomain]
+output.subdomain = pylith.meshio.OutputSolnSubset
+
+[pylithapp.timedependent.formulation.time_step]
+total_time = 0.0*s
+dt = 1.0*s
+
+# ----------------------------------------------------------------------
+# materials
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.materials]
+viscoelastic = pylith.materials.MaxwellIsotropic3D
+
+[pylithapp.timedependent.materials.elastic]
+label = Elastic material
+id = 1
+db_properties.iohandler.filename = mat_elastic.spatialdb
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 3
+
+[pylithapp.timedependent.materials.viscoelastic]
+label = Viscoelastic material
+id = 2
+db_properties.iohandler.filename = mat_maxwell.spatialdb
+quadrature.cell = pylith.feassemble.FIATLagrange
+quadrature.cell.dimension = 3
+
+# ----------------------------------------------------------------------
+# boundary conditions
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.bc.y_neg]
+label = 13
+bc_dof = [0]
+db_initial = pylith.bc.ZeroDispDB
+db_initial.label = Dirichlet BC on -y
+
+[pylithapp.timedependent.bc.y_pos]
+label = 12
+bc_dof = [0]
+db_initial = pylith.bc.ZeroDispDB
+db_initial.label = Dirichlet BC on +y
+
+[pylithapp.timedependent.bc.x_pos]
+label = 10
+bc_dof = [1]
+db_initial = spatialdata.spatialdb.UniformDB
+db_initial.label = Dirichlet BC on +x face
+db_initial.values = [displacement-y]
+db_initial.data = [-2.0*m]
+
+[pylithapp.timedependent.bc.x_neg]
+label = 11
+bc_dof = [1]
+db_initial = spatialdata.spatialdb.UniformDB
+db_initial.label = Dirichlet BC on -x face
+db_initial.values = [displacement-y]
+db_initial.data = [+2.0*m]
+
+[pylithapp.timedependent.bc.z_neg]
+label = 14
+bc_dof = [2]
+db_initial = pylith.bc.ZeroDispDB
+db_initial.label = Dirichlet BC on -z face
+
+# ----------------------------------------------------------------------
+# faults
+# ----------------------------------------------------------------------
+[pylithapp.timedependent.interfaces.fault_middle]
+id = 100
+label = 100
+
+[pylithapp.timedependent.interfaces.fault_middle.eq_srcs.rupture.slip_function]
+slip.label = Final slip on middle fault
+slip = spatialdata.spatialdb.UniformDB
+slip.values = [left-lateral-slip,reverse-slip,fault-opening]
+slip.data = [-1.0*m,0.0*m,0.0*m]
+slip_time = spatialdata.spatialdb.UniformDB
+slip_time.values = [slip-time]
+slip_time.data = [0.0*year]
+
+[pylithapp.timedependent.interfaces.fault_xpos]
+id = 101
+label = 101
+
+[pylithapp.timedependent.interfaces.fault_xpos.eq_srcs.rupture.slip_function]
+slip.label = Final slip on +x fault
+slip = spatialdata.spatialdb.UniformDB
+slip.values = [left-lateral-slip,reverse-slip,fault-opening]
+slip.data = [-0.5*m,0.0*m,0.0*m]
+slip_time = spatialdata.spatialdb.UniformDB
+slip_time.values = [slip-time]
+slip_time.data = [0.0*year]
+
+
+[pylithapp.timedependent.interfaces.fault_xneg]
+id = 102
+label = 102
+
+[pylithapp.timedependent.interfaces.fault_xneg.eq_srcs.rupture.slip_function]
+slip.label = Final slip on -x fault
+slip = spatialdata.spatialdb.UniformDB
+slip.values = [left-lateral-slip,reverse-slip,fault-opening]
+slip.data = [-0.5*m,0.0*m,0.0*m]
+slip_time = spatialdata.spatialdb.UniformDB
+slip_time.values = [slip-time]
+slip_time.data = [0.0*year]
+
+# ----------------------------------------------------------------------
+# output
+# ----------------------------------------------------------------------
+[pylithapp.problem.formulation.output.domain]
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+[pylithapp.problem.formulation.output.subdomain]
+label = 15
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+[pylithapp.problem.interfaces.fault_middle.output]
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+[pylithapp.problem.interfaces.fault_xpos.output]
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+[pylithapp.problem.interfaces.fault_xneg.output]
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+[pylithapp.problem.materials.elastic.output]
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+[pylithapp.problem.materials.viscoelastic.output]
+output_freq = time_step
+time_step = 0.999*year
+writer.time_format = %04.0f
+writer.time_constant = 0.1*year
+
+# ----------------------------------------------------------------------
+# PETSc
+# ----------------------------------------------------------------------
+[pylithapp.petsc]
+
+pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
+ksp_rtol = 1.0e-8
+ksp_gmres_restart = 70
+ksp_gmres_preallocate = true
+
+#ksp_type = preonly
+#pc_type = lu
+#mat_type = aijmumps
+
+ksp_max_it = 500
+ksp_monitor = true
+ksp_view = true
+log_summary = true

Modified: short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/pylithapp.cfg
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/pylithapp.cfg	2009-08-31 18:05:28 UTC (rev 15637)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/pylithapp.cfg	2009-08-31 23:34:26 UTC (rev 15638)
@@ -114,6 +114,7 @@
 
 ksp_rtol = 1.0e-8
 ksp_gmres_restart = 70
+ksp_gmres_preallocate = true
 
 #ksp_type = preonly
 #pc_type = lu

Modified: short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/strikeslip_hex8_1000m.cfg
===================================================================
--- short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/strikeslip_hex8_1000m.cfg	2009-08-31 18:05:28 UTC (rev 15637)
+++ short/3D/PyLith/benchmarks/trunk/quasistatic/strikeslipnog/parameters/strikeslip_hex8_1000m.cfg	2009-08-31 23:34:26 UTC (rev 15638)
@@ -10,16 +10,20 @@
 # ----------------------------------------------------------------------
 # output
 # ----------------------------------------------------------------------
-[pylithapp.problem.formulation.output.output.writer]
-filename = ../results/strikeslip_hex8_1000m.vtk
+[pylithapp.problem.formulation.output.output]
+writer.filename = ../results/strikeslip_hex8_1000m.vtk
+vertex_data_fields = []
 
-[pylithapp.timedependent.interfaces.fault.output.writer]
-filename = ../results/strikeslip_hex8_1000m-fault.vtk
+[pylithapp.timedependent.interfaces.fault.output]
+writer.filename = ../results/strikeslip_hex8_1000m-fault.vtk
+vertex_data_fields = []
 
 [pylithapp.timedependent.materials.elastic.output]
 cell_filter = pylith.meshio.CellFilterAvgMesh
 writer.filename = ../results/strikeslip_hex8_1000m-elastic.vtk
+cell_data_fields = []
 
 [pylithapp.timedependent.materials.viscoelastic.output]
 cell_filter = pylith.meshio.CellFilterAvgMesh
 writer.filename = ../results/strikeslip_hex8_1000m-viscoelastic.vtk
+cell_data_fields = []



More information about the CIG-COMMITS mailing list