0.6.2-dev0
FORCES
FORtran lib for Comp. Env. Sys.
Loading...
Searching...
No Matches
mo_errormeasures::kge Interface Reference

Kling-Gupta-Efficiency measure. More...

Public Member Functions

real(dp) function kge_dp_1d (x, y, mask)
 
real(dp) function kge_dp_2d (x, y, mask)
 
real(dp) function kge_dp_3d (x, y, mask)
 
real(sp) function kge_sp_1d (x, y, mask)
 
real(sp) function kge_sp_2d (x, y, mask)
 
real(sp) function kge_sp_3d (x, y, mask)
 

Detailed Description

Kling-Gupta-Efficiency measure.

The Kling-Gupta model efficiency coefficient \( KGE \) is

\[ KGE = 1 - \sqrt{( (1-r)^2 + (1-\alpha)^2 + (1-\beta)^2 )} \]

where
\( r \) = Pearson product-moment correlation coefficient
\( \alpha \) = ratio of simulated mean to observed mean
\( \beta \) = ratio of simulated standard deviation to observed standard deviation
This three measures are calculated between two arrays (1d, 2d, or 3d). Usually, one is an observation and the second is a modelled variable.
The higher the KGE the better the observation and simulation are matching. The upper limit of KGE is 1.
Therefore, if you apply a minimization algorithm to calibrate regarding KGE you have to use the objective function

\[ obj\_value = 1.0 - KGE \]

which has then the optimum at 0.0. (Like for the NSE where you always optimize 1-NSE.)
Example

para = (/ 1., 2, 3., -999., 5., 6. /)
kge = kge(x,y,mask=mask)

Literature

  1. Gupta, Hoshin V., et al. _"Decomposition of the mean squared error and NSE performance criteria: Implications for improving hydrological modelling"_. Journal of Hydrology 377.1 (2009): 80-91.
Parameters
[in]real(sp/dp) :: x, y1D/2D/3D-array with input numbers
[in]logical, optional :: mask1D/2D/3D-array of logical values with size(x/y).
Return values
real(sp/dp) ::kgeKling-Gupta-Efficiency (value less equal 1.0)
Note
Input values must be floating points.
Author
Rohini Kumar
Date
August 2014
Author
R. Kumar, J. Mai, & O. Rakovec
Date
Sep. 2014
  • remove double packing of input data (bug)
  • KGE instead of 1.0-KGE
  • 1d, 2d, 3d, version in sp and dp

Definition at line 125 of file mo_errormeasures.f90.

Member Function/Subroutine Documentation

◆ kge_dp_1d()

real(dp) function mo_errormeasures::kge::kge_dp_1d ( real(dp), dimension(:), intent(in)  x,
real(dp), dimension(:), intent(in)  y,
logical, dimension(:), intent(in), optional  mask 
)

Definition at line 956 of file mo_errormeasures.f90.

◆ kge_dp_2d()

real(dp) function mo_errormeasures::kge::kge_dp_2d ( real(dp), dimension(:, :), intent(in)  x,
real(dp), dimension(:, :), intent(in)  y,
logical, dimension(:, :), intent(in), optional  mask 
)

Definition at line 1009 of file mo_errormeasures.f90.

◆ kge_dp_3d()

real(dp) function mo_errormeasures::kge::kge_dp_3d ( real(dp), dimension(:, :, :), intent(in)  x,
real(dp), dimension(:, :, :), intent(in)  y,
logical, dimension(:, :, :), intent(in), optional  mask 
)

Definition at line 1073 of file mo_errormeasures.f90.

◆ kge_sp_1d()

real(sp) function mo_errormeasures::kge::kge_sp_1d ( real(sp), dimension(:), intent(in)  x,
real(sp), dimension(:), intent(in)  y,
logical, dimension(:), intent(in), optional  mask 
)

Definition at line 775 of file mo_errormeasures.f90.

◆ kge_sp_2d()

real(sp) function mo_errormeasures::kge::kge_sp_2d ( real(sp), dimension(:, :), intent(in)  x,
real(sp), dimension(:, :), intent(in)  y,
logical, dimension(:, :), intent(in), optional  mask 
)

Definition at line 828 of file mo_errormeasures.f90.

◆ kge_sp_3d()

real(sp) function mo_errormeasures::kge::kge_sp_3d ( real(sp), dimension(:, :, :), intent(in)  x,
real(sp), dimension(:, :, :), intent(in)  y,
logical, dimension(:, :, :), intent(in), optional  mask 
)

Definition at line 892 of file mo_errormeasures.f90.


The documentation for this interface was generated from the following file: