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.
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.
- Then the .geo file can be meshed by using:
$ gmsh tpv5.geo -3 -optimize -o tpv5.msh
- 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
- The 3D Gambit file can be converted to PUML format for LTS in latest version of SeisSol by:
$ pumgen tpv5.neu tpv5
We strongly recommend users to repeat the geometry and mesh generation processing. However, the generated mesh file (.h5) is also available through the link (https://syncandshare.lrz.de/dl/fiNdYwqvK8cdfM5h8uRZMv9e).
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/daisy20170101/SeisSol_Cookbook/.
&equations MaterialFileName = material.yaml / &IniCondition / &Boundaries BC_fs = 1 BC_dr = 1 ! Fault boundaries BC_of = 1 ! Absorbing boundaries / &DynamicRupture FL = 2 ! Friction law (0: none, 1:self-similar crack, 2:LSW, 3:RS (aging), 4:RS (slip)) ModelFileName = fault.yaml GPwise = 1 ! elementwise =0 ; GPwise =1 XRef = 0.0 ! Reference point YRef = -1.0e5 ZRef = 0 RF_output_on = 1 ! RF on OutputPointType = 5 ! Type (0: no output, 1: take GP's 2: 4 points per surface triangle, 3: output at certain pickpoints) / &Elementwise printIntervalCriterion = 2 ! 1=iteration, 2=time printtimeinterval_sec = 1. ! Time interval at which output will be written OutputMask = 1 1 1 1 1 1 1 1 1 1 ! output 1/ yes, 0/ no - position: 1/ slip rate 2/ stress 3/ normal velocity 4/ in case of rate and state output friction and state variable !OutputMask =1 2 3 4 5 6 7 8 9 10 11 ! output 1/ yes, 0/ no - position: 1/ slip rate 2/ stress 3/ normal velocity 4/ in case of rate and state output friction and state variable ! 5/ background values 6:/Slip refinement_strategy = 2 refinement = 1 / &Pickpoint printtimeinterval = 1 ! Index of printed info at timesteps OutputMask = 1 1 1 1 ! output 1/ yes, 0/ no - position: 1/ slip rate 2/ stress 3/ normal velocity 4/ in case of rate and state output friction and state variable ! 5/ background values nOutpoints = 9 PPFileName = 'FaultReceivers5.dat' / &SourceType / &SpongeLayer / &MeshNml meshgenerator = 'PUML' ! Name of meshgenerator (format) MeshFile = 'mesh/tpv5_200m' ! Name of mesh file / &Discretization Order = 4 ! Order of accuracy in space and time Material = 1 ! Material order CFL = 0.5 ! CFL number (<=1.0) FixTimeStep = 5 ! Manualy chosen minimum time DGMethod = 1 ! Local time stepping !IterationCriterion = 1 ! Local time stepping synchronisation criterion ClusteredLTS =2 / &Output OutputFile = 'output/tpv5' iOutputMask = 1 1 1 1 1 1 1 1 1 ! Variables ouptut iOutputMaskMaterial = 1 1 1 ! Material output Format = 10 ! Format (0=IDL, 1=TECPLOT, 2=IBM DX, 4=GiD)) !Interval = 100000 ! Index of printed info at timesteps TimeInterval = 0.25 ! Index of printed info at time printIntervalCriterion = 2 ! Criterion for index of printed info: 1=timesteps,2=time,3=timesteps+time pickdt = 0.005 ! Pickpoint Sampling pickDtType = 1 ! Pickpoint Type FaultOutputFlag = 1 ! DR output (add this line only if DR is active) nRecordPoints = 6 ! number of Record points which are read from file RFileName = 'Receivers5.dat' ! Record Points in extra file !checkPointInterval = 1.5 ! Set to 0 to disable checkpointing !checkPointBackend = 'posix' ! Either ’hdf5’, ’mpio’ or ’none’ / / &AbortCriteria EndTime = 10.0 / &Analysis / &Debugging
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].
|mu_s||static friction coefficient||0.677||dimensionless|
|mu_d||dynamic friction coefficient||0.525||dimensionless|
|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.
All examples here can be illustrated in Paraview (Detailed instruction can be found at ). The output folder contains a series of files for fault dynamic rupture (netcdf), wave filed (netcdf), receiver (.dat) and off-fault receivers (.dat). The fault dynamic rupture and wave filed files can be loaded in Paraview directly. 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]
|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]
|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|
|9||PSR||peak slip rate|
|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.