s2dverification
===============

s2dverification (seasonal to decadal verification) is an R framework
that aids in the analysis of forecasts from the data retrieval stage,
through computation of statistics and skill scores against observations,
to visualisation of data and results. While some of its components are
only targeted to verification of seasonal to decadal climate forecasts
it provides tools that can be useful for verification of forecasts
in any field.

A review of this package, including examples, has been published in the Environmental Modelling & Software journal.

> Manubens, N., L.-P. Caron, A. Hunter, O. Bellprat, E. Exarchou, N.S. Fučkar, J. Garcia-Serrano, F. Massonnet, M. Ménégoz, V. Sicardi, L. Batté, C. Prodhomme, V. Torralba, N. Cortesi, O. Mula-Valls, K. Serradell, V. Guemas, F.J. Doblas-Reyes (2018). An R Package for Climate Forecast Verification. Environmental Modelling & Software, 103, 29-42, doi:10.1016/j.envsoft.2018.01.018

Find out more in the overview below, on the wiki page at
<https://earth.bsc.es/gitlab/es/s2dverification/wikis/home> or on the
CRAN website at
<https://cran.r-project.org/web/packages/s2dverification/index.html>.  

You can also sign up to the s2dverification mailing list by sending a
message with the subject 'subscribe' to <s2dverification-request@bsc.es>
if you want to keep abreast of internal discussons or latest development
releases.

Installation
------------

s2dverification has a system dependency, the CDO libraries, for
interpolation of grid data and retrieval of metadata. Make sure you have
these libraries installed in the system or download and install from
<https://code.zmaw.de/projects/cdo>.

You can then install the publicly released version of s2dverification from CRAN:
```r
install.packages("s2dverification")
```
Or the development version from the GitLab repository:
```r
# install.packages("devtools")
devtools::install_git("https://earth.bsc.es/gitlab/es/s2dverification.git")
```
Overview
--------

The following diagram depicts the modules of s2dverification and how
they interact:

<img src="vignettes/s2dv_modules.png" width="800" />

The [**Data
retrieval**](vignettes/data_retrieval.md)
module allows you to gather and homogenize NetCDF data files from forecasts, 
hindcasts or observations stored in a local or remote file system. Some simple 
previous steps are required, however, to set up some configuration parameters 
so that the module can locate the source files and recognize the variables of 
interest.

Once the data has been loaded into an R object 
[**Statistics**](vignettes/statistics.md) can be computed, such as 
drift-corrected anomalies, trend removal, frequency filtering and more.

Either after computing statistics or directly from the original data, the 
functions in the
[**Verification**](vignettes/verification.md)
module allow you to compute deterministic and probabilistic scores and
skill scores such as root mean square error, time or spatial correlation or 
brier score, with reliability indicators such as p-values and confidence 
intervals.

[**Visualisation**](vignettes/visualisation.md)
functions are also provided to plot the results obtained from any of the
modules above.

If it's your first time using s2dverification you can check an 
[**Example**](vignettes/example.md) 
of use spanning its four modules or review the 
[**Tutorial**](vignettes/tutorial.md).  
You will find more detailed examples in the documentation page of 
each module.  

You can also check the examples of usage of each function after attaching the 
package as follows:
```r
ls('package:s2dverification')
##  [1] "ACC"                        "Alpha"                     
##  [3] "Ano"                        "Ano_CrossValid"            
##  [5] "Clim"                       "ColorBar"                  
##  [7] "ConfigAddEntry"             "ConfigApplyMatchingEntries"
##  [9] "ConfigEditDefinition"       "ConfigEditEntry"           
## [11] "ConfigFileCreate"           "ConfigFileOpen"            
## [13] "ConfigFileSave"             "ConfigRemoveDefinition"    
## [15] "ConfigRemoveEntry"          "ConfigShowDefinitions"     
## [17] "ConfigShowSimilarEntries"   "ConfigShowTable"           
## [19] "Consist_Trend"              "Corr"                      
## [21] "CRPS"                       "Enlarge"                   
## [23] "Eno"                        "EnoNew"                    
## [25] "Filter"                     "FitAcfCoef"                
## [27] "FitAutocor"                 "GenSeries"                 
## [29] "Histo2Hindcast"             "IniListDims"               
## [31] "InsertDim"                  "LeapYear"                  
## [33] "Load"                       "Mean1Dim"                  
## [35] "MeanListDim"                "Plot2VarsVsLTime"          
## [37] "PlotACC"                    "PlotAno"                   
## [39] "PlotClim"                   "PlotEquiMap"               
## [41] "PlotSection"                "PlotStereoMap"             
## [43] "PlotVsLTime"                "ProbBins"                  
## [45] "RatioRMS"                   "RatioSDRMS"                
## [47] "Regression"                 "RMS"                       
## [49] "RMSSS"                      "sampleDepthData"           
## [51] "sampleMap"                  "sampleTimeSeries"          
## [53] "Season"                     "SelIndices"                
## [55] "Smoothing"                  "Spectrum"                  
## [57] "Spread"                     "Trend"
```
```r 
?FunctionName
```
