LANDO links the most commonly used age-depth modeling software in one multi-language Jupyter Notebook, known as SoS notebook (Peng et al., 2018). Due to its design, the notebook uses four Jupyter kernels: Python, R, Octave, and MATLAB. We implemented the following modeling systems in LANDO:
* Bacon (Blaauw and Christen, 2011),
* Bchron (Haslett and Parnell, 2008; Parnell et al., 2008),
* clam (Blaauw, 2010),
* hamstr (Dolman, 2021),
* Undatable (Lougheed and Obrochta, 2019).
Furthermore, LANDO uses the fuzzy changepoint method by Holloway et al. (2021) to evaluate the performance of modeling systems to represent lithological change based on independent proxy data. LANDO can run models for single or multiple sediment cores.
In this repository we try to publish an online running version of LANDO. For the stand-alone version, please go to https://github.com/GPawi/LANDO
We used the following programming languages versions to develop LANDO:
Programming language | Version |
---|---|
R | 4.1.2 |
Python | 3.7 |
Octave | 6.4.0 |
MATLAB1 | 2020b |
There are two ways in LANDOnline to retrieve age determination data:
Input | Code |
---|---|
Data for one single core from file | dates = gd.AgeFromFileOneCore() |
Data for multiple cores from file | dates = gd.AgeFromFileMultiCore() |
And one ways to retrieve proxy data:
Input | Code |
---|---|
Data from file | proxy = gd.ProxyFromFile() |
There are different parameters that can be adjusted for each modeling software in LANDO
Modeling software | Parameter | Default value |
---|---|---|
Bacon | acc.shape | 1.5 |
Bacon | acc.mean | 20 |
Bacon | mem.strength | 10 |
Bacon | mem.mean | 0.5 |
Bacon | ssize | 8000 |
clam | types_curve | 1:5 |
clam | smoothness_curve | 0.1*(1:10) |
clam | poly_degree_curve | 1:4 |
hamstr | K | c(10,10) |
Undatable | xfactor | 0.1 |
Undatable | bootpc | 30 |
If you want to know more about the implemented functions, please use the help()
function in Python. For instance, using help(age_sr_plot.PlotAgeSR.plot_graph)
returns:
Help on function plot_graph in module src.age_sr_plot:
plot_graph(self, orig_dir, sigma_range='both', bin_size=1000, xlim_max=None, number_col=7, reduce_plot_axis=False, only_combined=False, save=False, for_color_blind=False, as_jpg=False)
Main function to plot data for single core and multi-core case
parameters:
@self.orig_dir: original directory where LANDO was launched, so that plots can be saved to the folder "output_figures"
@self.sigma_range: sigma range that should be shown in the plot - the options are: 'both', '1sigma', '2sigma', and None
@self.bin_size: this argument only works for the multi-core case; defines the bin size in years; default value: 1000
@self.xlim_max: this argument only works for the multi-core case; defines the maximum age range in years to be plotted; default value: None
@self.number_col: only works for the multi-core case; defines the number of columns to plot; default value: 7
@self.reduce_plot_axis: only works for the multi-core case; reduces the number that are plotted on the axis; default value: False
@self.only_combined: argument to decide if only combined model should be plotted; default value: False
@self.save: argument to decide if plot should be saved to location given in orig_dir; default value: False
@self.for_color_blind: argument to transform plot to be suitable for people with color vision deficiency; default value: False
@self.as_jpg: argument to plot grafics as .jpg (default is .pdf), which works best for color-blind plot; default value: False
returns: Main output plot from LANDO
You can close the notebook using File
--> Shutdown
and then File
--> Logout
.
- Add OxCal to LANDO
See the open issues for a full list of proposed features (and known issues).
Distributed under the GNU GPLv3 License. See LICENSE.txt
for more information.
Gregor Pfalz - Gregor.Pfalz@awi.de - @ClimateCompathy
Project Link: https://github.com/GPawi/LANDO
Blaauw, M.: Methods and code for “classical” age-modelling of radiocarbon sequences, Quat. Geochronol., 5, 512–518, https://doi.org/10.1016/j.quageo.2010.01.002, 2010.
Blaauw, M. and Christen, J. A.: Flexible paleoclimate age-depth models using an autoregressive gamma process, Bayesian Anal., 6, 457–474, https://doi.org/10.1214/11-BA618, 2011.
Dolman, A. M.: hamstr: Hierarchical Accumulation Modelling with Stan and R, https://github.com/EarthSystemDiagnostics/hamstr, 2021.
Haslett, J. and Parnell, A.: A simple monotone process with application to radiocarbon-dated depth chronologies, J. R. Stat. Soc. Ser. C Appl. Stat., 57, 399–418, https://doi.org/10.1111/j.1467-9876.2008.00623.x, 2008.
Hollaway, M. J., Henrys, P. A., Killick, R., Leeson, A., and Watkins, J.: Evaluating the ability of numerical models to capture important shifts in environmental time series: A fuzzy change point approach, Environ. Model. Softw., 139, 104993, https://doi.org/10.1016/j.envsoft.2021.104993, 2021.
Lougheed, B. C. and Obrochta, S. P.: A Rapid, Deterministic Age-Depth Modeling Routine for Geological Sequences With Inherent Depth Uncertainty, Paleoceanogr. Paleoclimatology, 34, 122–133, https://doi.org/10.1029/2018PA003457, 2019.
Parnell, A. C., Haslett, J., Allen, J. R. M., Buck, C. E., and Huntley, B.: A flexible approach to assessing synchroneity of past events using Bayesian reconstructions of sedimentation history, Quat. Sci. Rev., 27, 1872–1885, https://doi.org/10.1016/j.quascirev.2008.07.009, 2008.
Peng, B., Wang, G., Ma, J., Leong, M. C., Wakefield, C., Melott, J., Chiu, Y., Du, D., and Weinstein, J. N.: SoS notebook: An interactive multi-language data analysis environment, 34, 3768–3770, https://doi.org/10.1093/bioinformatics/bty405, 2018.
Footnotes
-
Since we want to keep LANDO open source, the installation process does not include instructions for the MATLAB kernel. If you have an active MATLAB license, please follow the instructions on the SoS notebook website. We provide the necessary code to run the MATLAB version of Undatable in the repository, which can replace the Octave version. ↩