[cig-commits] [commit] knepley/fix-faults-parallel: Add fault edges to examples/2d/greensfns. (104ef11)

cig_noreply at geodynamics.org cig_noreply at geodynamics.org
Tue May 27 08:29:13 PDT 2014


Repository : https://github.com/geodynamics/pylith

On branch  : knepley/fix-faults-parallel
Link       : https://github.com/geodynamics/pylith/compare/bc4ad8c1e4f7cbe0286a7c030323fe6906bf7cbf...a6dcee9c56c2ed915b63f90186133bd8ce8789a9

>---------------------------------------------------------------

commit 104ef11da2c9518aea64ef8050a9685136705b2a
Author: Brad Aagaard <baagaard at usgs.gov>
Date:   Tue May 27 08:26:48 2014 -0700

    Add fault edges to examples/2d/greensfns.


>---------------------------------------------------------------

104ef11da2c9518aea64ef8050a9685136705b2a
 examples/2d/greensfns/reverse/createbc.jou     |  24 +++++++++++++++--------
 examples/2d/greensfns/reverse/mesh_tri3.exo    | Bin 127096 -> 150488 bytes
 examples/2d/greensfns/reverse/pylithapp.cfg    |   3 +++
 examples/2d/greensfns/strikeslip/createbc.jou  |  24 +++++++++++++++--------
 examples/2d/greensfns/strikeslip/mesh_tri3.exo | Bin 198276 -> 234976 bytes
 examples/2d/greensfns/strikeslip/pylithapp.cfg |  26 +++++++++++++++++++++++--
 6 files changed, 59 insertions(+), 18 deletions(-)

diff --git a/examples/2d/greensfns/reverse/createbc.jou b/examples/2d/greensfns/reverse/createbc.jou
index 72d71b6..d92b049 100644
--- a/examples/2d/greensfns/reverse/createbc.jou
+++ b/examples/2d/greensfns/reverse/createbc.jou
@@ -12,30 +12,38 @@ nodeset 10 group fault
 nodeset 10 name "fault"
 
 # ----------------------------------------------------------------------
+# Create nodeset for fault edge
+# ----------------------------------------------------------------------
+group "fault_edge" add node in vertex 15
+nodeset 11 group fault_edge
+nodeset 11 name "fault_edge"
+
+# ----------------------------------------------------------------------
 # Create nodeset for +x face
 # ----------------------------------------------------------------------
 group "face_xpos" add node in curve 14
-nodeset 11 group face_xpos
-nodeset 11 name "face_xpos"
+nodeset 20 group face_xpos
+nodeset 20 name "face_xpos"
 
 # ----------------------------------------------------------------------
 # Create nodeset for -x face
 # ----------------------------------------------------------------------
 group "face_xneg" add node in curve 16
-nodeset 12 group face_xneg
-nodeset 12 name "face_xneg"
+nodeset 21 group face_xneg
+nodeset 21 name "face_xneg"
 
 # ----------------------------------------------------------------------
 # Create nodeset for +y face
 # ----------------------------------------------------------------------
 group "face_ypos" add node in curve 19 20
-nodeset 13 group face_ypos
-nodeset 13 name "face_ypos"
+nodeset 22 group face_ypos
+nodeset 22 name "face_ypos"
 
 # ----------------------------------------------------------------------
 # Create nodeset for -y face
 # ----------------------------------------------------------------------
 group "face_yneg" add node in curve 18 21
-nodeset 14 group face_yneg
-nodeset 14 name "face_yneg"
+nodeset 23 group face_yneg
+nodeset 23 name "face_yneg"
+
 
diff --git a/examples/2d/greensfns/reverse/mesh_tri3.exo b/examples/2d/greensfns/reverse/mesh_tri3.exo
index 1cad2b0..993ea0d 100644
Binary files a/examples/2d/greensfns/reverse/mesh_tri3.exo and b/examples/2d/greensfns/reverse/mesh_tri3.exo differ
diff --git a/examples/2d/greensfns/reverse/pylithapp.cfg b/examples/2d/greensfns/reverse/pylithapp.cfg
index d615c2d..ce58d0b 100644
--- a/examples/2d/greensfns/reverse/pylithapp.cfg
+++ b/examples/2d/greensfns/reverse/pylithapp.cfg
@@ -107,6 +107,9 @@ interfaces = [fault]
 id = 100
 # The label corresponds to the name of the nodeset in CUBIT.
 label = fault
+# The edge corresponds to the name of the nodeset of the buried fault
+# edge in CUBIT.
+edge = fault_edge
 
 # We must define the quadrature information for fault cells.
 # The fault cells are 1D (line).
diff --git a/examples/2d/greensfns/strikeslip/createbc.jou b/examples/2d/greensfns/strikeslip/createbc.jou
index 88f5038..b35998a 100644
--- a/examples/2d/greensfns/strikeslip/createbc.jou
+++ b/examples/2d/greensfns/strikeslip/createbc.jou
@@ -26,31 +26,39 @@ nodeset 10 group fault
 nodeset 10 name "fault"
 
 # ----------------------------------------------------------------------
+# Create nodeset for fault edge
+# ----------------------------------------------------------------------
+group "fault_edge" add node in vertex 15 16
+nodeset 11 group fault_edge
+nodeset 11 name "fault_edge"
+
+# ----------------------------------------------------------------------
 # Create nodeset for +x face
 # ----------------------------------------------------------------------
 group "face_xpos" add node in curve 14
-nodeset 11 group face_xpos
-nodeset 11 name "face_xpos"
+nodeset 21 group face_xpos
+nodeset 21 name "face_xpos"
 
 # ----------------------------------------------------------------------
 # Create nodeset for -x face
 # ----------------------------------------------------------------------
 group "face_xneg" add node in curve 16
-nodeset 12 group face_xneg
-nodeset 12 name "face_xneg"
+nodeset 22 group face_xneg
+nodeset 22 name "face_xneg"
 
 # ----------------------------------------------------------------------
 # Create nodeset for +y face
 # ----------------------------------------------------------------------
 group "face_ypos" add node in curve 18
 group "face_ypos" add node in curve 21
-nodeset 13 group face_ypos
-nodeset 13 name "face_ypos"
+nodeset 23 group face_ypos
+nodeset 23 name "face_ypos"
 
 # ----------------------------------------------------------------------
 # Create nodeset for -y face
 # ----------------------------------------------------------------------
 group "face_yneg" add node in curve 19
 group "face_yneg" add node in curve 20
-nodeset 14 group face_yneg
-nodeset 14 name "face_yneg"
+nodeset 24 group face_yneg
+nodeset 24 name "face_yneg"
+
diff --git a/examples/2d/greensfns/strikeslip/mesh_tri3.exo b/examples/2d/greensfns/strikeslip/mesh_tri3.exo
index d1d22db..7819f22 100644
Binary files a/examples/2d/greensfns/strikeslip/mesh_tri3.exo and b/examples/2d/greensfns/strikeslip/mesh_tri3.exo differ
diff --git a/examples/2d/greensfns/strikeslip/pylithapp.cfg b/examples/2d/greensfns/strikeslip/pylithapp.cfg
index 377d293..e6892f3 100644
--- a/examples/2d/greensfns/strikeslip/pylithapp.cfg
+++ b/examples/2d/greensfns/strikeslip/pylithapp.cfg
@@ -113,6 +113,9 @@ interfaces = [fault]
 id = 100
 # The label corresponds to the name of the nodeset in CUBIT.
 label = fault
+# The edge corresponds to the name of the nodeset of the fault edge
+# in CUBIT.
+edge = fault_edge
 
 # We must define the quadrature information for fault cells.
 # The fault cells are 1D (line).
@@ -151,8 +154,27 @@ writer = pylith.meshio.DataWriterHDF5
 
 ksp_type = gmres
 ksp_gmres_restart = 100
-pc_type = asm
-sub_pc_factor_shift_type = nonzero
+
+# Field split preconditioning. We use an algebraic multigrid
+# preconditioner from Trilinos/ML built via PETSc on the displacement
+# field. We also apply a custom preconditioner for the Lagrange
+# multiplier vertices. In this way, we split the fields.
+[pylithapp.timedependent.formulation]
+split_fields = True
+# Use custom preconditioning for the Lagrange multiplier vertices
+use_custom_constraint_pc = True
+matrix_type = aij
+
+[pylithapp.petsc]
+fs_pc_type = fieldsplit
+fs_pc_use_amat = true
+fs_pc_fieldsplit_type = multiplicative
+fs_fieldsplit_displacement_pc_type = ml
+fs_fieldsplit_lagrange_multiplier_pc_type = jacobi
+fs_fieldsplit_displacement_ksp_type = preonly
+fs_fieldsplit_lagrange_multiplier_ksp_type = preonly
+
+
 
 ksp_rtol = 1.0e-8
 ksp_atol = 1.0e-20



More information about the CIG-COMMITS mailing list