ve {hydroGOF}R Documentation

Volumetric Efficiency

Description

Volumetric efficiency between sim and obs, with treatment of missing values.

Usage

VE(sim, obs, ...)

## Default S3 method:
VE(sim, obs, na.rm=TRUE, ...)

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

## S3 method for class 'matrix'
VE(sim, obs, na.rm=TRUE, ...)

## S3 method for class 'zoo'
VE(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.

Details

VE = 1 - ( sum( abs(obs - sim) ) / sum( obs ) )

Volumetric efficiency was proposed in order to circumvent some problems associated to the Nash-Sutcliffe efficiency. It ranges from 0 to 1 and represents the fraction of water delivered at the proper time; its compliment represents the fractional volumetric mistmach (Criss and Winston, 2008).

Value

Volumetric efficiency between sim and obs.

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

Note

obs and sim have to have the same length/dimension

The missing values in obs and sim are removed before the computation proceeds, and only those positions with non-missing values in obs and sim are considered in the computation

Author(s)

Mauricio Zambrano Bigiarini <mzb.devel@gmail.com>

References

Criss, R. E. and Winston, W. E. (2008), Do Nash values have value? Discussion and alternate proposals. Hydrological Processes, 22: 2723-2725. doi: 10.1002/hyp.7072

See Also

gof, ggof, NSE

Examples

obs <- 1:10
sim <- 1:10
VE(sim, obs)

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

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

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

# Computing the volumetric efficiency for the "best" case
VE(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 volumetric efficiency
VE(sim=sim, obs=obs)

[Package hydroGOF version 0.3-10 Index]