Skip to content

Thrase/Thrase.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

125 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thrase

Dev

About

Thrase is a GPU-enabled, high-order accurate SBP-SAT finite difference code on unstructured meshes for SEAS (Sequences of Earthquakes and Aseismic Slip) problems written entirely in Julia.

Features:

  • high-order accurate finite difference spatial discretizations featuring provably stability
  • direct and matrix-free iterative solvers for static problems via Julia
  • non-stiff methods for fully-dynamic (wave propagation) problems involving rate-and-state friction
  • high-order accurate, adaptive time-stepping via Julia
  • unstructured hexahedral meshes
  • non-planar boundaries and interfaces

Dependencies:

  • Thrase is written entirely in Julia

Installation:

As a julia registered package (Coming Soon):

From source (in your terminal):

  • Download the latest release of Julia
  • Clone the repository
git clone https://github.com/Thrase/Thrase.jl.git
  • Activate the project and download and compile dependencies
cd Thrase.jl
julia --project=.
] activate .
  • Install any dependencies (only necessary the first time)
] instantiate
  • Test the installation
include("test/runtests.jl");

Getting Started:

To run the code for the first SEAS benchmark problem (BP1-QD) on an equally spaced mesh (the stripped code is for training purposes)

localARGS = ["examples/bp1-qd.dat"]
include("src/2D_antiplane/2D_stripped/stripped_BP1-QD_driver.jl");

To run the code for the first SEAS benchmark problem (BP1-QD) on a structured, unequal mesh

localARGS = ["examples/bp1-qd_structured.dat"]
include("src/2D_antiplane/2D_structured/BP1-QD_structured_driver.jl");

To run the code for the first SEAS benchmark problem (BP1-QD) on an unstructured mesh

localARGS = ["examples/bp1-qd_unstructured.dat"]
include("src/2D_antiplane/2D_unstructured/BP1-QD_unstructured_driver.jl");

To run the code for BP6

localARGS = ["examples/bp6.dat"]
include("src/2D_antiplane/2D_structured/BP6_driver_dispBC.jl");


To run the code for a simplified version (full version coming soon) of BP3 - 30 degree dipping fault:

localARGS = ["examples/bp3-qd-unstructured.dat"]
include("src/2D-planestrain/2D_unstructured/BP3-QD_2block_driver.jl");

Documentation:

More to come soon...

How to cite:

License:

  • Distributed under the MIT License. See LICENSE.txt for more information.

Contributing:

Thrase is an open-source project and welcomes:

  • contributions via forks and pull requests
  • questions, feature requests, or bug reports via issues

Contact:

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages