FORCES
FORtran lib for Comp. Env. Sys.
|
Kling-Gupta-Efficiency measure without correlation. More...
Public Member Functions | |
real(dp) function | kgenocorr_dp_1d (x, y, mask) |
real(dp) function | kgenocorr_dp_2d (x, y, mask) |
real(dp) function | kgenocorr_dp_3d (x, y, mask) |
real(sp) function | kgenocorr_sp_1d (x, y, mask) |
real(sp) function | kgenocorr_sp_2d (x, y, mask) |
real(sp) function | kgenocorr_sp_3d (x, y, mask) |
Kling-Gupta-Efficiency measure without correlation.
The modified Kling-Gupta model efficiency coefficient \( KGEnocorr \) is
\[ KGEnocorr = 1 - \sqrt{( (1-\alpha)^2 + (1-\beta)^2 )} \]
where
\( \alpha \) = ratio of simulated mean to observed mean
\( \beta \) = ratio of simulated standard deviation to observed standard deviation
This two 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 KGEnocorr the better the observation and simulation are matching. The upper limit of KGEnocorr is 1.
Therefore, if you apply a minimization algorithm to calibrate regarding KGEnocorr you have to use the objective function
\[ obj\_value = 1.0 - KGEnocorr \]
which has then the optimum at 0.0. (Like for the NSE where you always optimize 1-NSE.)
Example
Literature
[in] | real(sp/dp) :: x, y | 1D/2D/3D-array with input numbers |
[in] | logical, optional :: mask | 1D/2D/3D-array of logical values with size(x/y). |
real(sp/dp) :: kgenocorr | Kling-Gupta-Efficiency without correlation (value less equal 1.0) |
Definition at line 184 of file mo_errormeasures.f90.
real(dp) function mo_errormeasures::kgenocorr::kgenocorr_dp_1d | ( | real(dp), dimension(:), intent(in) | x, |
real(dp), dimension(:), intent(in) | y, | ||
logical, dimension(:), intent(in), optional | mask | ||
) |
Definition at line 1302 of file mo_errormeasures.f90.
real(dp) function mo_errormeasures::kgenocorr::kgenocorr_dp_2d | ( | real(dp), dimension(:, :), intent(in) | x, |
real(dp), dimension(:, :), intent(in) | y, | ||
logical, dimension(:, :), intent(in), optional | mask | ||
) |
Definition at line 1352 of file mo_errormeasures.f90.
real(dp) function mo_errormeasures::kgenocorr::kgenocorr_dp_3d | ( | real(dp), dimension(:, :, :), intent(in) | x, |
real(dp), dimension(:, :, :), intent(in) | y, | ||
logical, dimension(:, :, :), intent(in), optional | mask | ||
) |
Definition at line 1408 of file mo_errormeasures.f90.
real(sp) function mo_errormeasures::kgenocorr::kgenocorr_sp_1d | ( | real(sp), dimension(:), intent(in) | x, |
real(sp), dimension(:), intent(in) | y, | ||
logical, dimension(:), intent(in), optional | mask | ||
) |
Definition at line 1139 of file mo_errormeasures.f90.
real(sp) function mo_errormeasures::kgenocorr::kgenocorr_sp_2d | ( | real(sp), dimension(:, :), intent(in) | x, |
real(sp), dimension(:, :), intent(in) | y, | ||
logical, dimension(:, :), intent(in), optional | mask | ||
) |
Definition at line 1189 of file mo_errormeasures.f90.
real(sp) function mo_errormeasures::kgenocorr::kgenocorr_sp_3d | ( | real(sp), dimension(:, :, :), intent(in) | x, |
real(sp), dimension(:, :, :), intent(in) | y, | ||
logical, dimension(:, :, :), intent(in), optional | mask | ||
) |
Definition at line 1245 of file mo_errormeasures.f90.