Open-source time-Temperature inversion of thermochronometric data.
Implements a transdimensional Bayesian Markov chain Monte Carlo (MCMC) time-Temperature inversion with optional Simulated Annealing (e.g., 1, 2) and kinetic uncertainty propagation/inversion.
Currently, this package supports the inversion of mineral helium and argon ages using a spherical Crank-Nicolson forward diffusion model following the equations of Gallagher 1995 and Ketcham 2005 along with the damage and annealing model of Guenthner et al. 2013 for zircon U-Th/He (ZRDAAM), the damage and annealing model of Flowers et al. 2009 for apatite U-Th/He (RDAAM), or any constant user-specified
Apatite fission track age and fission track length data are supported with the annealing models of Ketcham et al. 1999 and Ketcham et al. 2007, while zircon fission track data are supported with the annealing model of Yamada et al. 2007 and the simultaneous-fit fanning curvilinear ZFT annealing model from Guenthner et al. 2013, discussed further by Ketcham 2019 (sec. 3.8, pgs. 65-67). Monazite fission track is also included with the re-fit annealing model of Jones et al. 2021.
Diffusion-based chronometers:
Chronometer | Mineral | System | Geometry | Diffusion and/or annealing model(s) |
---|---|---|---|---|
ZirconHe |
zircon | helium | spherical | ZRDAAM |
ApatiteHe |
apatite | helium | spherical | RDAAM |
SphericalHe |
any | helium | spherical | Diffusivity (user-specified D₀, Eₐ) |
PlanarHe |
any | helium | slab | Diffusivity (user-specified D₀, Eₐ) |
SphericalAr |
any | argon | spherical | Diffusivity (user-specified D₀, Eₐ) |
PlanarAr |
any | argon | slab | Diffusivity (user-specified D₀, Eₐ) |
MultipleDomain |
feldspar | argon | slab/sphere | MDDiffusivity |
Fission track chronometers:
Chronometer | Mineral | System | Annealing model(s) |
---|---|---|---|
ZirconFT |
zircon | fission track age | Yamada2007PC ,Guenthner2013FC |
MonaziteFT |
monazite | fission track age | Jones2021FA |
ApatiteFT |
apatite | fission track age | Ketcham1999FC Ketcham2007FC |
ZirconTrackLength |
zircon | track length | Yamada2007PC , Guenthner2013FC |
MonaziteTrackLength |
monazite | track length | Jones2021FA |
ApatiteTrackLength |
apatite | track length | Ketcham1999FC(:unoriented) |
ApatiteTrackLengthOriented |
apatite | track length | Ketcham1999FC , Ketcham2007FC |
Inversions may include any combination of chronometers.
Additional systems and models are expected to be added in future releases.
Thermochron.jl is written in the open-source programming language Julia, for which installation instructions are available at julialang.org/install. As a registered Julia package, Thermochron.jl can by installed by typing
] add Thermochron
at the Julia REPL (where ]
enters Pkg
(package manager) mode, backspace to exit), or alternatively
using Pkg
Pkg.add("Thermochron")
After installation, you can check that everything is working properly by running the unit test suite (again from Pkg
mode)
test Thermochron
Usage is via a tTinversion.jl script, an example of which may be donwloaded from the examples folder, along with any relevant data files.
This script may be run either from the command line (e.g., julia ./tTinversion.jl
) or interactively via your favorite Julia-connected editor or IDE (e.g., vscode/vscodium). A Manifest.toml is also provided in the examples folder, which you may optionally Pkg.instantiate
to ensure you have the same versions of all relevant packages that the example was built for.
Several example input data files are also provided in the examples folder, including generic.csv, which illustrates the full range of possible chronometers.
Thermochron.jl may be cited as:
Keller, C.B., McDannell, K.T., Guenthner, W.R., and Shuster, D.L. (2022). Thermochron.jl: Open-source time-Temperature inversion of thermochronometric data. 10.17605/osf.io/wq2U5
The development of Thermochron.jl has been supported in part by National Science Foundation under grant EAR-2044800.