|
1 |
| -# Description |
2 |
| -This repository contains scripts to process meteorological datasets in NetCDF file format. The general usage of the script (i.e., `./extract-dataset.sh`) is as follows: |
3 |
| - |
4 |
| -```console |
5 |
| -Usage: |
6 |
| - extract-dataset [options...] |
7 |
| - |
8 |
| -Script options: |
9 |
| - -d, --dataset Meteorological forcing dataset of interest |
10 |
| - -i, --dataset-dir=DIR The source path of the dataset file(s) |
11 |
| - -v, --variable=var1[,var2[...]] Variables to process |
12 |
| - -o, --output-dir=DIR Writes processed files to DIR |
13 |
| - -s, --start-date=DATE The start date of the data |
14 |
| - -e, --end-date=DATE The end date of the data |
15 |
| - -l, --lat-lims=REAL,REAL Latitude's upper and lower bounds; |
16 |
| - optional; within the [-90, +90] limits |
17 |
| - -n, --lon-lims=REAL,REAL Longitude's upper and lower bounds; |
18 |
| - optional; within the [-180, +180] limits |
19 |
| - -a, --shape-file=PATH Path to the ESRI shapefile; optional |
20 |
| - -m, --ensemble=ens1,[ens2,[...]] Ensemble members to process; optional |
21 |
| - Leave empty to extract all ensemble members |
22 |
| - -M, --model=model1,[model2,[...]] Models that are part of a dataset, |
23 |
| - only applicable to climate datasets, optional |
24 |
| - -S, --scenario=scn1,[scn2,[...]] Climate scenarios to process, only applicable |
25 |
| - to climate datasets, optional |
26 |
| - -j, --submit-job Submit the data extraction process as a job |
27 |
| - on the SLURM system; optional |
28 |
| - -k, --no-chunk No parallelization, recommended for small domains |
29 |
| - -p, --prefix=STR Prefix prepended to the output files |
30 |
| - -b, --parsable Parsable SLURM message mainly used |
31 |
| - for chained job submissions |
32 |
| - -c, --cache=DIR Path of the cache directory; optional |
33 |
| - -E, [email protected] E-mail user when job starts, ends, or |
34 |
| - fails; optional |
35 |
| - -u, --account Digital Research Alliance of Canada's sponsor's |
36 |
| - account name; optional, defaults to 'rpp-kshook' |
37 |
| - -L, --list-datasets List all the available datasets and the |
38 |
| - corresponding keywords for '--dataset' option |
39 |
| - -V, --version Show version |
40 |
| - -h, --help Show this screen and exit |
41 |
| - |
42 |
| -``` |
43 |
| -# Available Datasets |
44 |
| -|# |Dataset |Time Period |DOI |Description | |
45 |
| -|--|---------------------------|--------------------------------|--------------------------|-------------------------------------| |
46 |
| -|1 |GWF-NCAR WRF-CONUS I |Hourly (Oct 2000 - Dec 2013) |10.1007/s00382-016-3327-9 |[link](./scripts/gwf-ncar-conus_i) | |
47 |
| -|2 |GWF-NCAR WRF-CONUS II[^1] |Hourly (Jan 1995 - Dec 2015) |10.5065/49SN-8E08 |[link](./scripts/gwf-ncar-conus_ii) | |
48 |
| -|3 |ECMWF ERA5[^2] |Hourly (Jan 1950 - Dec 2020) |10.24381/cds.adbb2d47 and [link](https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels-preliminary-back-extension?tab=overview)|[link](./scripts/ecmwf-era5)| |
49 |
| -|4 |ECCC RDRSv2.1 |Hourly (Jan 1980 - Dec 2018) |10.5194/hess-25-4917-2021 |[link](./scripts/eccc-rdrs) | |
50 |
| -|5 |CCRN CanRCM4-WFDEI-GEM-CaPA|3-Hourly (Jan 1951 - Dec 2100) |10.5194/essd-12-629-2020 |[link](./scripts/ccrn-canrcm4_wfdei_gem_capa)| |
51 |
| -|6 |CCRN WFDEI-GEM-CaPA |3-Hourly (Jan 1979 - Dec 2016) |10.20383/101.0111 |[link](./scripts/ccrn-wfdei_gem_capa)| |
52 |
| -|7 |ORNL Daymet |Daily (Jan 1980 - Dec 2022)[^3] |10.3334/ORNLDAAC/2129 |[link](./scripts/ornl-daymet) | |
53 |
| -|8 |Alberta Gov Climate Dataset|Daily (Jan 1950 - Dec 2100) |10.5194/hess-23-5151-2019 |[link](./scripts/ab-gov) | |
54 |
| -|9 |Ouranos ESPO-G6-R2 |Daily (Jan 1950 - Dec 2100) |10.1038/s41597-023-02855-z|[link](./scripts/ouranos-espo-g6-r2) | |
55 |
| -|10|Ouranos MRCC5-CMIP6 |hourly (Jan 1950 - Dec 2100) |TBD |[link](./scripts/ouranos-mrcc5-cmip6)| |
56 |
| -|11|NASA NEX-GDDP-CMIP6 |Daily (Jan 1950 - Dec 2100) |10.1038/s41597-022-01393-4|[link](./scripts/nasa-nex-gddp-cmip6)| |
57 |
| - |
58 |
| -[^1]: For access to the files on Graham cluster, please contact [Stephen O'Hearn ](mailto:[email protected]). |
59 |
| -[^2]: ERA5 data from 1950-1979 are based on [ERA5 preliminary extenion](https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels-preliminary-back-extension?tab=overview) and 1979 onwards are based on [ERA5 1979-present](https://doi.org/10.24381/cds.adbb2d47). |
60 |
| -[^3]: For the Peurto Rico domain of the dataset, data are available from January 1950 until December 2022. |
61 |
| -[^4]: Data is not publicly available yet. DOI is to be determined once the relevant paper is published. |
62 |
| - |
63 |
| -# General Example |
64 |
| -As an example, follow the code block below. Please remember that you MUST have access to Digital Research Alliance of Canada (DRA) clusters (specifically `Graham`) and have access to `RDRSv2.1` model outputs. Also, remember to generate a [Personal Access Token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) with GitHub in advance. Enter the following codes in your Graham shell as a test case: |
65 |
| - |
66 |
| -```console |
67 |
| -foo@bar:~$ git clone https://github.com/kasra-keshavarz/datatool # clone the repository |
68 |
| -foo@bar:~$ cd ./datatool/ # move to the repository's directory |
69 |
| -foo@bar:~$ ./extract-dataset.sh -h # view the usage message |
70 |
| -foo@bar:~$ ./extract-dataset.sh \ |
71 |
| - --dataset="rdrs" \ |
72 |
| - --dataset-dir="/project/rpp-kshook/Climate_Forcing_Data/meteorological-data/rdrsv2.1" \ |
73 |
| - --output-dir="$HOME/scratch/rdrs_outputs/" \ |
74 |
| - --start-date="2001-01-01 00:00:00" \ |
75 |
| - --end-date="2001-12-31 23:00:00" \ |
76 |
| - --lat-lims=49,51 \ |
77 |
| - --lon-lims=-117,-115 \ |
78 |
| - --variable="RDRS_v2.1_A_PR0_SFC,RDRS_v2.1_P_HU_09944" \ |
79 |
| - --cache='$SLURM_TMPDIR' \ |
80 |
| - --prefix="testing_"; |
81 |
| -``` |
82 |
| -See the [examples](./examples) directory for real-world scripts for each meteorological dataset included in this repository. |
83 |
| - |
84 |
| -# Logs |
85 |
| -The datasets logs are generated under the `$HOME/.datatool` directory, |
86 |
| -only in cases where jobs are submitted to clusters' schedulers. If |
87 |
| -processing is not submitted as a job, then the logs are printed on screen. |
88 |
| - |
89 |
| -# New Datasets |
90 |
| -If you are considering any new dataset to be added to the data |
91 |
| -repository, and subsequently the associated scripts added here, |
92 |
| -you can open a new ticket on the **Issues** tab of the current |
93 |
| -repository. Or, you can make a |
94 |
| -[Pull Request](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request) |
95 |
| -on this repository with your own script. |
96 |
| - |
97 |
| -# Support |
98 |
| -Please open a new ticket on the **Issues** tab of this repository for |
99 |
| -support. |
| 1 | +# Documentation |
| 2 | +The relevant documentation is located on [Readthedocs](https://datatool.readthedocs.io/en/latest/) website. |
100 | 3 |
|
101 | 4 | # License
|
102 | 5 | Meteorological Data Processing Workflow - datatool <br>
|
103 | 6 | Copyright (C) 2022-2023, University of Saskatchewan<br>
|
104 | 7 | Copyright (C) 2023-2024, University of Calgary<br>
|
| 8 | +Copyright (C) 2022-2024, datatool developers |
105 | 9 |
|
106 | 10 | This program is free software: you can redistribute it and/or modify
|
107 | 11 | it under the terms of the GNU General Public License as published by
|
|
0 commit comments