Development Plan#

Future implementation of features is guided by several target applications, including

  • Earthquake cycle modeling with quasi-static simulation of interseismic deformation and dynamic simulation of coseismic deformation.

  • Inversion of geodetic data for slow slip events, fault creep, and long-term fault slip rates.

  • Quasistatic and dynamic modeling of fluids and faulting.

Note

Because we strictly follow the semantic versioning guidelines, a minor release may get promoted to a major releases if we make changes to the public API (parameters). This can happen if realize that we should modify the parameters to improve maintainability or prepare for future changes.

Version 4.1.0 (April 2024)#

  • Finish updating examples/subduction-3d intermediate [40%]

  • Better preconditioners expert [67%]

    • elasticity with fault [90%]

    • incompressible elasticity [5%]

    • poroelasticity [100%]

  • Parallel mesh loading expert [15%]

Version 5.0.0 (June 2024)#

  • Add 2D and 3D examples for crustal faults with complex fault geometry easy [50%]

  • Update some examples to illustrate how to select mesh size and use refinement and basis order.

  • Convert from SWIG to pybind11 intermediate [0%]

  • Add support for GeoModelGrids implementation of spatial databases for 3D seismic velocity models. intermediate [0%]

  • Update coordinates with solution intermediate [10%]

Version 6.0.0 (TBD)#

  • Output of fault rupture auxiliary subfields intermediate [0%]

  • Update VTK output to use vtu files rather than legacy vtk files easy [0%]

  • Improve creation of auxiliary, diagnostic, and derived fields.

  • Dynamic prescribed slip with diagonal Jacobian for explicit part of IMEX formulation expert [75%]

  • Spontaneous rupture for quasistatic and dynamic simulations expert [20%]

  • Reimplement Drucker-Prager elastoplastic bulk rheology intermediate [0%]

Version 7.0.0 (TBD)#

  • Improve robustness of HDF5 output by opening/closing at each time step easy[0%]

  • Add examples/barwaves-2d expert [15%]

  • Update to current version of Pyre difficult

  • Migrate examples to Jupyter notebooks intermediate

  • More flexible specification of time-dependent boundary conditions. difficult [0%]

  • Dirichlet boundary conditions with constraints on normal and tangential components. difficult [0%]

  • Integration with libCEED for fast high order residual evaluation expert
    Contribution led by Jed Brown.

  • Add ability to output residual field during nonlinear solve for debugging easy [0%]

  • Elasticity with self-gravitation intermediate [0%]

Features for Future Releases#

  • Coupling of problems with compatible meshes difficult [10%]
    Implement “injectors” for solution and state variables.

  • Reimplementation of small strain formulation for elasticity difficult [20%]

  • Moment tensor point sources [5%]
    Moment tensor point sources provide a mesh independent deformation source that is better suited for Green’s function calculations than slip on a fault surface via cohesive cells.

  • Adaptive mesh refinement expert

  • Line/point fluid sources in poroelasticity expert [20%]

  • Consolidate HDF5 output into a single file difficult

  • Drucker-Prager bulk rheology with relaxation to yield surface intermediate

  • Drucker-Prager bulk rheology with strain hardening/softening intermediate

  • Adjoint for data assimilation difficult

  • Fault with both prescribed slip and spontaneous rupture difficult
    Use fault constitutive model to control slip on fault except during episodes of prescribed slip. Need some way to describe when to turn on/off prescribed slip.