return {'obs': pend_obs, 'sim': pend_sim, 'correcta': (pend_obs > 0) is (pend_sim > 0)} algs_spotpy = { 'fast': spotpy.algorithms.fast, 'dream': spotpy.algorithms.dream, 'cm': spotpy.algorithms.mc, 'cmmc': spotpy.algorithms.mcmc, 'epm': spotpy.algorithms.mle, 'mhl': spotpy.algorithms.lhs, 'as': spotpy.algorithms.sa, 'sceua': spotpy.algorithms.sceua, 'erop': spotpy.algorithms.rope, 'caa': spotpy.algorithms.abc, 'fscabc': spotpy.algorithms.fscabc, 'bdd': spotpy.algorithms.dds } eval_funcs = { 'ens': lambda o, s, f: spt_f.nashsutcliffe(o, s), 'rcep': lambda o, s, f: -spt_f.rmse(o, s), 'corresp': lambda o, s, f: spt_f.agreementindex(o, s), 'ekg': lambda o, s, f: spt_f.kge(o, s), 'r2': lambda o, s, f: spt_f.rsquared(o, s), 'rcnep': lambda o, s, f: -spt_f.rrmse(o, s), 'log p': lambda o, s, f: spt_f.log_p(o, s), 'verosimil_gaus': lambda o, s, f: spt_l.gaussianLikelihoodMeasErrorOut(o, s), 'tendencia': _anlz_tendencia }
def test_rrmse_with_self_is_zero(self): res = of.rrmse(self.evaluation, self.evaluation) self.assertAlmostEqual(res, 0.0, self.tolerance)
def test_rrmse_with_obs_mean_zero_is_inf(self): #FIXME: Currently failing because rrmse returns np.inf evaluation = [-5, -4, -3, -2, -1, 1, 2, 3, 4, 5] res = of.rrmse(evaluation, self.simulation) self.assertTrue(np.isinf(res))
def test_rrmse(self): res = of.rrmse(self.evaluation, self.simulation) self.assertAlmostEqual(res, -2.0499356498347545, self.tolerance)