Introduction
This package is used to simulate the quasi-dynamic earthquake cycles under the framework of rate-and-state friction on a transfinite-mesh transform fault overlaying a viscoelastic hexahedron-mesh mantle using boundary-element-method (BEM). This package is an updated subset version of Quaycle.jl which includes dipping fault, triangular-mesh (fault) and tetrahedron-mesh (mantle).
Supported physics
In this package, for frictional law we support DieterichStateLaw
. For rate-and-state friction, we support the regularized form and dilatancy machanism. For viscoelasticity, we support power-law rheology. Users can extend new physics by implementing new equations, providing new parameters if necessary, and aseembling them into the ODE function. Please see the existing ODE functions to get started.
Thrid-party libraries
This package uses HDF5 to save the numerical output for further analysis. It also supports writing output into VTK for visualization and animation.
A collection of commonly used Green's functions can be accessed at GeoGreensFunctions.jl. The package uses Gmsh for domain discreitzation. See GmshTools.jl also for a more convenient way to use Gmsh in Julia.
Testings
This package undergoes extensive testings, which also provides many usage examples.
Known Issues
- The competition between Julia threads and BLAS threads when hyperthreading is disabled, see this example.