Installation
DRex.jl is hosted on GitHub and not yet registered in the Julia General registry. Install it directly from the repository:
using Pkg
Pkg.add(url="https://github.com/JuliaGeodynamics/DRex.jl")Or from the package REPL (press ]):
] add https://github.com/JuliaGeodynamics/DRex.jlFor local development (clones the repo and uses it in development mode):
using Pkg
Pkg.develop(url="https://github.com/JuliaGeodynamics/DRex.jl")Dependencies
The core package requires:
| Package | Purpose |
|---|---|
StaticArrays.jl | Allocation-free inner-loop grain computations |
OrdinaryDiffEq.jl | Adaptive ODE integration (Tsit5) for CPO evolution |
Rotations.jl | Rotation utilities |
KernelAbstractions.jl | GPU-agnostic kernel programming |
LinearAlgebra (stdlib) | |
Random (stdlib) |
Optional extensions
The LaMEM extension auto-loads when three additional packages are present in your environment:
using LaMEM, GeophysicalModelGenerator, WriteVTK
using DRex # DRexLaMEMExt loads automaticallyThe Metal GPU backend requires Apple Silicon and the Metal.jl package:
using Metal
using DRexRunning the tests
using Pkg
Pkg.test("DRex")