def test_case_7(self): # 2 models x 3 GMPEs, 1000 samples * 10 SES expected = [ 'hazard_curve-mean.csv', ] out = self.run_calc(case_7.__file__, 'job.ini', exports='csv') aw = extract(self.calc.datastore, 'realizations') dic = countby(aw.array, 'branch_path') self.assertEqual( { b'b11~BA': 332, # w = .6 * .5 = .30 b'b11~CB': 169, # w = .6 * .3 = .18 b'b11~CY': 108, # w = .6 * .2 = .12 b'b12~BA': 193, # w = .4 * .5 = .20 b'b12~CB': 115, # w = .4 * .3 = .12 b'b12~CY': 83 }, # w = .4 * .2 = .08 dic) fnames = out['hcurves', 'csv'] mean_eb = get_mean_curves(self.calc.datastore) for exp, got in zip(expected, fnames): self.assertEqualFiles('expected/%s' % exp, got) mean_cl = get_mean_curves(self.calc.cl.datastore) reldiff, _index = max_rel_diff_index(mean_cl, mean_eb, min_value=0.1) self.assertLess(reldiff, 0.07)
def test_case_7(self): # 2 models x 3 GMPEs, 100 samples * 20 SES expected = [ 'hazard_curve-mean.csv', ] out = self.run_calc(case_7.__file__, 'job.ini', exports='csv') fnames = out['hcurves', 'csv'] mean_eb = get_mean_curves(self.calc.datastore) for exp, got in zip(expected, fnames): self.assertEqualFiles('expected/%s' % exp, got) mean_cl = get_mean_curves(self.calc.cl.datastore) reldiff, _index = max_rel_diff_index(mean_cl, mean_eb, min_value=0.1) self.assertLess(reldiff, 0.10)
def test_case_7(self): # 2 models x 3 GMPEs, 100 samples * 20 SES expected = [ 'hazard_curve-mean.csv', ] out = self.run_calc(case_7.__file__, 'job.ini', exports='csv') fnames = out['hcurves', 'csv'] mean_eb = get_mean_curves(self.calc.datastore) for exp, got in zip(expected, fnames): self.assertEqualFiles('expected/%s' % exp, got) mean_cl = get_mean_curves(self.calc.cl.datastore) reldiff, _index = max_rel_diff_index( mean_cl, mean_eb, min_value=0.1) self.assertLess(reldiff, 0.10)
def test_case_7(self): # 2 models x 3 GMPEs, 10 samples * 40 SES expected = [ 'hazard_curve-mean.csv', 'quantile_curve-0.1.csv', 'quantile_curve-0.9.csv', ] out = self.run_calc(case_7.__file__, 'job.ini', exports='csv') fnames = out['hcurves', 'csv'] mean_eb = get_mean_curves(self.calc.datastore) for exp, got in zip(expected, fnames): self.assertEqualFiles('expected/%s' % exp, got) mean_cl = get_mean_curves(self.calc.cl.datastore) for imt in mean_cl.dtype.fields: reldiff, _index = max_rel_diff_index(mean_cl[imt], mean_eb[imt], min_value=0.1) self.assertLess(reldiff, 0.20) exp = self.calc.datastore.get_attr('events', 'max_gmf_size') self.assertEqual(exp, 375496)