Skip to main content

Open-source tool for climatological time series reconstruction and extension

Project description

Reconstruction by AnalogS of ClimatologicAL time series (RASCAL)

docs PyPi GMD DOI

RASCAL is a python library desinged to reconstruct time series of climatological data, based on the Analog Method (AM), to use them for climate studies. The AM is a statistical downscalling method, based on the assumption that large-scale atmospheric conditions tend to produce similar local weather patterns, and therefore is possible to predict local conditions finding analog days, with similar large-scale patterns, in the historical record. The objective of RASCAL is to generate complete time series, based on limited observational data, that can reproduce the climatic characteristics of the region to study better than the reanalysis products.

Requirements

To run this library renalaysis and observational data is required. the reanalysis data should cover the whole period to be reconstructed, and should have at least one predictor variable.The observational data temporal cover must overlap with the reanalysis data.

The choice of the predictor variable is flexible. However, if you want to reconstruct a long time series, it's important to consider that the connection between the predictor and the predicted variable should be very robust. This is because certain relationships may change in a changing climate scenario.

RASCAL is based in python 3.10. To run RASCAL, these other python libraries are required:

  • numpy 1.26.4
  • pandas 2.2.1
  • dask 2024.4.1
  • xarray 2024.3.0
  • scipy 1.13.0
  • tqdm 4.65.0
  • scikit-learn 1.4.1.post1
  • seaborn 0.13.2
  • eofs 1.4.1

Documentation

For a more detalied documentation and tutorials check RASCAL ReadTheDocs.

Getting Started

RASCAL can be installed through PyPi. It is recommemded to create a virtual environment first.

conda create --name rascal_env python==3.10
conda activate rascal_env
python3 -m pip install rascal-ties

How to use

RASCAL is a library based in four main clases: Station, Predictor, Analogs and Rskill, and an additional class CIndex, that allows to calculate relevant climatic indices

You can find datasets to practice in Zenodo

To run RASCAl as a python library, you can refer to the tutorial in the documentation: Make your first reconstruction.

This repository contains a the script multiple_runs_example.py, where all the neccesary steps to make reconstructions are already programmed, allowing to make lots of different reconstructions for different stations, variables, analog pool sizes, and similarity methods, only modifying the configuration file config.yaml and running:

python3 multiple_runs_example.py

To validate and plot the results, and compare its skill to the observations and reference reanalysis, you can use the Jupyter Notebook RASCAL_evaluation.ipynb

References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rascal_ties-1.0.10.tar.gz (25.8 MB view details)

Uploaded Source

Built Distribution

rascal_ties-1.0.10-py3-none-any.whl (32.2 kB view details)

Uploaded Python 3

File details

Details for the file rascal_ties-1.0.10.tar.gz.

File metadata

  • Download URL: rascal_ties-1.0.10.tar.gz
  • Upload date:
  • Size: 25.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.12

File hashes

Hashes for rascal_ties-1.0.10.tar.gz
Algorithm Hash digest
SHA256 54928d4955395bdfba3d1163c4aab4984d103954bc35fefa3610d56ee47a6d73
MD5 3ecc22749a7bcb6f7a2004ad3f1e589f
BLAKE2b-256 2fc381c854661bef48ecbc7b9aa906dd47f3435c4f4529653e1772b394a72337

See more details on using hashes here.

File details

Details for the file rascal_ties-1.0.10-py3-none-any.whl.

File metadata

  • Download URL: rascal_ties-1.0.10-py3-none-any.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.9.12

File hashes

Hashes for rascal_ties-1.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 dd5908a5dad004c3bc898fa20ec325604827db77caf98137279951c6b8ad95b7
MD5 0943be7c8305f2a10fd38d60abfe0567
BLAKE2b-256 f35da5438d8e066f0bf57905996381a932ad684a82cf05e1cb81481a3dc5ef39

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page