Giter VIP home page Giter VIP logo

slicker's Introduction

Segmented Linear Integral Correlation Kernel Ensemble Reconstruction

Project Description

Segmented Linear Integral Correlation Kernel Ensemble Reconstruction (SLICKER) is a numerical method to reconstruct a (typically climate) time-series from multiple proxy data-series. SLICKER allows for

  • Univariate or multivariate reconstructions
  • Uneven and different data-spacing between allow proxies and the reconstruction target
  • Different linear and non-linear relationships between the target and each proxy
  • Ensembles to allow for robust estimates of the central tendency, uncertainty in the central tendency, and spread of the reconstruction
  • Parallel execution is available via OpenMP

SLICKER is written in FORTRAN, with wrappers for MATLAB, Python and R. A windows executable is also supplied for users without access to a FORTRAN compiler.

Citation

If using SLICKER for scientific studies, please cite

Roberts et al (submitted), New insights from an East Antarctic ice core with SLICKER: Segmented Linear Integral Correlation Kernel Ensemble Reconstruction, PLOS ONE

Building Source Code

For systems with access to a FORTRAN compiler, source code is included in the ../FORTRAN_source_code directory.

  • Edit the "system variables" section of the Makefile to set system specific options, noting that defaults for ifort, gfortran and nvfortran are provided, for both serial and OpenMP parallel configurations.
  • Compile the code by typing "make" at the command line, will generate the executable "reconstruct"
  • copy "reconstruct" to the "wrappers_and_examples" directory by typing "make install" at the command line

Wrappers and examples

Wrappers and example usage is provided for MATLAB, Python and R. The particular text example for the wrappers is from Figure 8c of the above The Holocene journal paper a test case with two input proxies with 20% of the data missing from both proxies. Note that the solver relies on random numbers, so the solution from subsequent runs of the same problem will be slightly different. Examples for both text and netCDF input data are provided. All other test examples from The Holocene journal paper are included in the Journal_paper_test_cases directory.

Directory code execution
MATLAB_netcdf_example matlab -nodisplay test5.m
MATLAB_text_example matlab -nodisplay test5.m
Python python reconstruct.py
Python jupyter lab reconstruct_example.ipynb
R R --no-save < test5.R

slicker's People

Contributors

jlr581 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.