hydroGOF (version 0.4-0)

rNSE: Relative Nash-Sutcliffe efficiency

Description

Relative Nash-Sutcliffe efficiency between sim and obs, with treatment of missing values.

Usage

rNSE(sim, obs, ...)

# S3 method for default rNSE(sim, obs, na.rm=TRUE, ...)

# S3 method for data.frame rNSE(sim, obs, na.rm=TRUE, ...)

# S3 method for matrix rNSE(sim, obs, na.rm=TRUE, ...)

# S3 method for zoo rNSE(sim, obs, na.rm=TRUE, ...)

Arguments

sim

numeric, zoo, matrix or data.frame with simulated values

obs

numeric, zoo, matrix or data.frame with observed values

na.rm

a logical value indicating whether 'NA' should be stripped before the computation proceeds. When an 'NA' value is found at the i-th position in obs OR sim, the i-th value of obs AND sim are removed before the computation.

further arguments passed to or from other methods.

Value

Relative Nash-Sutcliffe efficiency between sim and obs.

If sim and obs are matrixes, the returned value is a vector, with the relative Nash-Sutcliffe efficiency between each column of sim and obs.

Details

$$ rNSE = 1 -\frac { \sum_{i=1}^N { ( \frac{ S_i - O_i }{O_i} )^2 } } { \sum_{i=1}^N { ( \frac{ O_i - \bar{O} }{\bar{O}} )^2 } } $$

References

Krause, P., Boyle, D. P., and Base, F.: Comparison of different efficiency criteria for hydrological model assessment, Adv. Geosci., 5, 89-97, 2005

Legates, D. R., and G. J. McCabe Jr. (1999), Evaluating the Use of "Goodness-of-Fit" Measures in Hydrologic and Hydroclimatic Model Validation, Water Resour. Res., 35(1), 233-241.

See Also

NSE, mNSE, gof, ggof

Examples

Run this code
# NOT RUN {
sim <- 1:10
obs <- 1:10
rNSE(sim, obs)

sim <- 2:11
obs <- 1:10
rNSE(sim, obs)

##################
# Loading daily streamflows of the Ega River (Spain), from 1961 to 1970
data(EgaEnEstellaQts)
obs <- EgaEnEstellaQts

# Generating a simulated daily time series, initially equal to the observed series
sim <- obs 

# Computing the 'rNSE' for the "best" (unattainable) case
rNSE(sim=sim, obs=obs)

# Randomly changing the first 2000 elements of 'sim', by using a normal distribution 
# with mean 10 and standard deviation equal to 1 (default of 'rnorm').
sim[1:2000] <- obs[1:2000] + rnorm(2000, mean=10)

# Computing the new 'rNSE'
rNSE(sim=sim, obs=obs)
# }

Run the code above in your browser using DataLab