Generalized Analog Regression Downscaling (GARD) code
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
ci removed make.log from hdf build to prevent travis timeout Jul 21, 2017
docs Merge branch 'develop' of into develop Feb 8, 2017
run updated default config file with new names for start_post, end_post Feb 7, 2017
src remove trailing whitespace Mar 25, 2017
test_data added test_config and new configuration compiles and tests clean Jun 2, 2016
.travis.yml travis tools to use gfortran-6 Mar 9, 2017
LICENSE Initial commit Apr 30, 2016 Update Readme to point to readthedocs documentation May 21, 2018
doxygenConfig Added Doxygen config file Nov 2, 2016
mkdocs.yml add basic configuration documentation Nov 4, 2016

Build Status Documentation Status

Generalized Analog Regression Downscaling (GARD)

This code is an implementation of a hybrid analog / regression multivariate downscaling procedure. The program reads a namelist file for the configuration information. The downscaling process is performed on a grid-cell by grid-cell basis and permits multiple approaches to downscaling. The standard hybrid analog-regression approach uses the input predictor variables to select a group of analog days (e.g. 300) from the training period for each day to be predicted. These analog days are then used to compute a multi-variable regression between the training data (e.g. wind, humidity, and stability) and the variable to be predicted (e.g. precipitation). The regression coefficients are then applied to the predictor variables to compute the expected downscaled value, and they are applied to the training data to compute the error in the regression. Optionally, a logistic regression can be used to compute (e.g.) the probability of precipitation occurrence on a given day, or the probability of exceeding any other threshold. Similarly, the logistic regression coefficients are applied to the predictors and output, or the analog exceedence probabilities can be output. Alternatively the code can compute the regressions over the entire time series supplied, a pure regression approach, or the analogs them selves can be used as the result, a pure analog approach. The pure analog approach can compute the mean of the selected analogs, it can randomly sample the analogs, or it can compute the weighted mean based on the distance from the current predictor.

The code requires both training and predictor data for the same variables as well as a variable to be predicted. The training and prediction data can include as many variables as desired (e.g. wind, humidity, precipitation, CAPE). All data must have geographic and time coordinate variables associated with them.

While this was developed for downscaling climate data, it is general purpose and could be applied to a wide variety of problems in which both analogs and regression make sense.

Documentation is being build on the GARD Readthedocs page.