# SCEC TPV5¶

TPV5 is the first SCEC benchmark. It has spontaneous rupture on a vertical strike-slip fault in a homogeneous halfspace. There are slightly heterogeneous initial stress conditions. The earthquake rupture is artificially nucleated in a square zone at the center of the fault surface. The rupture then spontaneously propagates over the rest of the fault surface. As it propagates away from the nucleation zone, it encounters two square patches with initial stress conditions that are different from the rest of the fault surface.

## Geometry¶

The fault within the three-dimensional medium is a vertical right-lateral strike-slip planar fault that resides in a half-space. The fault reaches the Earth’s surface. The rupture is allowed within a rectangular area that is 30000 m long $$\times$$ 15000 m deep. The bottom boundary of and the right and left ends of the allowed 30000 m $$\times$$ 15000 m rupture area are defined by a strength barrier. The nucleation point is centered both along-dip and along-strike of the 30000m $$\times$$ 15000m rupture area, on the fault plane, at 15000m along-strike and 7500m depth.

The mesh is generated in GMSH. All the files that are needed for the simulation are provided.

1. The tpv5.geo file contains the geometry for the fault in a cubit region.

1. Then the .geo file can be meshed by using:

$gmsh tpv5.geo -3 -optimize -o tpv5.msh 1. Then convert the .msh file to 3D Gambit neutral file $ gmsh2gambit -i tpv5.msh -o tpv5.neu

The toolbox of gmsh2gambit is used for converting gmsh file to Gambit neutrual file. It can be found in SeisSol GitHub https://github.com/SeisSol/SeisSol/tree/master/preprocessing/meshing

1. The 3D Gambit file can be converted to PUML format for LTS in latest version of SeisSol by:

\$ pumgen tpv5.neu tpv5

The compilation and usage of PUMGen can be found in https://github.com/SeisSol/PUMGen/wiki and https://seissol.readthedocs.io/en/latest/ The geometry file (.geo) can be found at https://github.com/SeisSol/Examples/blob/master/tpv5/tpv5_f200m.geo. The mesh file can be generated using the bash file https://github.com/SeisSol/Examples/blob/master/tpv5/generating_the_mesh.sh.

## Parameters¶

### Nucleation¶

Nucleation occurs because of the initial shear stress in a 3000 m $$\times$$ 3000 m square nucleation patch is set to be higher than the initial static yield stress in that patch. Failure occurs everywhere on the fault plane, including in the nucleation patch, following a linear slip-weakening fracture criterion.

TPV5 uses a linear-slip weakening friction everywhere on the fault. There are ten parameters associated with the friction constitutive law and fault properties in the parameters.par. It can be found at https://github.com/SeisSol/Examples/blob/master/tpv5/parameters.par.

Four friction constitutive parameters are: mu_s, mu_d, d_c and cohesion. Six stress parameters are: s_xx, s_yy, s_zz, s_xy, s_xz, and s_yz. All the parameters are homogeneous on the fault except for the nucleation patch in the center of the fault, where s_xy is larger compared with that elsewhere. The parameters in TPV5 are listed in Table [table:tpv5].

Parameter Description Value Unit
mu_s static friction coefficient 0.677 dimensionless
mu_d dynamic friction coefficient 0.525 dimensionless
d_c critical distance 0.40 m
cohesion friction cohesion 0.0 MPa
s_yy stress 120 MPa
s_xx,s_zz,s_yz,s_xz stress 0 MPa
s_xy outside the nucleation zone 70 MPa
inside the nucleation zone 81.6 MPa

Table: Table of LSR parameters on the fault in tpv5.

Notice that there are two patches with different initial stress: the one centered at (+7.5, -7.5) has 62 MPa and (-7.5, -7.5) has 78 MPa. This initial stress is included in the fault.yaml file.

#### Results¶

All examples here generate surface and volume output files that can be visualized with ParaView. The output folder contains a series of files for fault dynamic rupture (hdf5 and .xdmf), wavefield (hdf5 and .xdmf), on-fault receiver (.dat) and off-fault receivers (.dat). The fault dynamic rupture and wavefield files can be loaded in Paraview. For example, open Paraview and then go through File $$>>$$ import $$>>$$prefix-fault.xdmf.

In the wave filed output file (prefix.xdmf, prefix_vertex.h5 and prefix_cell.hf), the variables are shown in Table [table:wavefield]

Index Parameter Description
1 U displacement in x-axis
2 V displacement in y-axis
3 W displacement in z-axis
4 u particular velocity in x-axis
5 v particular velocity in y-axis
6 w particular velocity in z-axis

Table: Table of wavefield output in SeisSol. Index denotes the position used in iOutputMask in SeisSol parameter file.

In the fault dynamics output file (prefix-fault.xdmf, prefix-fault_vertex,h5 and prefix-fault_cell,h5), the variables are shown in Table [table:faultout]

Index Parameter Description
1 SRs and SRd slip rates in strike and dip direction
2 T_s, T_d, P_n transient shear stress in strike and dip direction, transient normal stress
3 U_n normal velocity (note that there is no fault opening in SeisSol)
4 Mud, StV current friction and state variable in case of RS friction
5 Ts0,Td0,Pn0 total stress, including initial stress
6 Sls and Sld slip in strike and dip direction
7 Vr rupture velocity, computed from the spatial derivatives of the rupture time
8 ASl absolute slip
9 PSR peak slip rate
10 RT rupture time
11 DS only with LSW, time at which ASl $$>$$ d_c

Table: Table of fault dynamic output in SeisSol. Index denotes the position used in iOutputMask in SeisSol parameter file.