Trigger slip on neighboring fault in static model


I am interested in imposing slip on two faults to trigger a third (the Cajon Pass example I was building at the CDM workshop, except with a much better mesh). I would like the model to be fully static, so I have tried imposing slip on the two faults using finalslip spatialbd to see what happens to the third. Unfortunately, the third requires a finalslip file itself, so I cannot let it slip as a response to slip on the other two faults. As far as I am aware, there are no examples in the pylith manual that display a similar case. Is it possible to model this statically on pylith? (and how should I go about it?)

Thank you,


If you want to trigger slip on a fault, then that fault needs to be a fault with friction (FaultCohesiveDyn), which is currently available in PyLith v2.2.1 (but not v3.0 beta).

Keep the two faults where you know the slip as they are, but change the type of fault for the third one to FaultCohesiveDyn. You will need to choose a fault friction model, e.g., StaticFriction and initial conditions for the fault, e.g., initial shear and normal tractions. We don’t have any examples that do this, but examples/2d/subdiction/step04 is somewhat similar (it uses output from a coseismic simulation to create afterslip in another simulation).

Hi Brad,

Thank you, that works. I was able to both try static and slip weakening friction. The code runs but changing the friction coefficient (in either static or slip weakening models) and the cohesion yields no difference in the output slip distribution on the triggered fault. I have tried different combinations, between static/dynamic friction 0-0.6 and cohesion 0-2MPa with no difference in the results.


What are the results you are getting? Is there any stress change or slip on the target fault? Do the linear and nonlinear solves converge?

I am getting slip on the order of 10^-6 meters, for a fault that is located in a 3.5km step-over, spanning the entire step-over, and in a position mechanically favored to record normal sinistral slip orders of magnitude higher. The two driving faults have slip distributions on the order of 10^0, which matches sparse paleoseismic data. According to paleoseismic data within the step-over, the triggered fault should experience slip on the order of 10^-1 meters. The petsc info is copy pasted below. I did manually lower petsc.ksp atol to 10^-7 for the solver to converge. I only see stress change on the two large faults when plotting the crust vtk.

#PETSc Option Table entries:


-friction_ksp_gmres_restart 30

-friction_ksp_max_it 25



-friction_pc_type asm

-friction_sub_pc_factor_shift_type nonzero

-ksp_atol 1e-7



-ksp_gmres_restart 50

-ksp_max_it 100


-ksp_rtol 1.0e-10



-pc_type asm

-snes_atol 1.0e-9




-snes_max_it 100


-snes_rtol 1.0e-10

-sub_pc_factor_shift_type nonzero

#End of PETSc Option Table entries