StratiGraphics.jl
A tool for creating 3D stratigraphy from 2D geostatistical processes.
This package provides an implementation of Markov-Poisson sampling as described in Hoffimann 2018. In this method, geostatistical algorithms from the GeoStats.jl framework are used to quickly generate surfaces of a 3D stratigraphic model.
Installation
Get the latest stable release with Julia's package manager:
] add StratiGraphics
Usage
To illustrate the usage of the package, consider a set of satellite images containing spatial patterns that we would like to reproduce in a 3D stratigraphic model:
Each image can serve as a training image for a multiple-point geostatistical process such as ImageQuilting.jl:
using ImageQuilting
solver1 = ImgQuilt(:land => (TI=TI1, tilesize=(30,30,1)))
solver2 = ImgQuilt(:land => (TI=TI2, tilesize=(30,30,1)))
solver3 = ImgQuilt(:land => (TI=TI3, tilesize=(30,30,1)))
procs = [GeoStatsProcess(solver) for solver in [solver1,solver2,solver3]]
We define a geological environment as a set of geological processes, a set of transition probabilities between the processes, and an event duration process:
using StratiGraphics
# transition probabilities
P = rand(3,3)
P = P ./ sum(P, dims=2)
# event duration process
ΔT = ExponentialDuration(1.0)
env = Environment(procs, P, ΔT)
We can simulate the envinroment from an initial state (e.g. flat land) and for a number of epochs to produce a geological record:
nepochs = 10
init = LandState(zeros(100,100))
record = simulate(env, init, nepochs)
From the record, we can produce the strata in the form of surfaces:
strata = Strata(record)
We can choose between an :erosional
(default) versus a :depositional
stacking:
strata = Strata(record, :depositional)
We can then convert the surfaces into a 3D voxel model by specifying the vertical resolution:
voxelize(strata, 50) # produce a 100x100x50 voxel model
For a reproducible example, please check this notebook.
Citation
If you find StratiGraphics.jl useful in your work, please consider citing the thesis:
@PHDTHESIS{Hoffimann2018,
title={Morphodynamic Analysis and Statistical Synthesis of Geomorphic Data},
author={Hoffimann, J{\'u}lio},
school={Stanford University},
url={https://searchworks.stanford.edu/view/12746435},
year={2018},
month={September}
}
Asking for help
If you have any questions, please open an issue.