diff --git a/extreme_fit/distribution/gumbel/gumbel_gof.py b/extreme_fit/distribution/gumbel/gumbel_gof.py index 2e4ba56cd15f772774d441fde9df1d9f1c0adb63..35900799fe8a39fdf394990341d22be6ba138545 100644 --- a/extreme_fit/distribution/gumbel/gumbel_gof.py +++ b/extreme_fit/distribution/gumbel/gumbel_gof.py @@ -1,6 +1,3 @@ -import io -from contextlib import redirect_stdout - import numpy as np from extreme_fit.model.result_from_model_fit.abstract_result_from_model_fit import AbstractResultFromModelFit diff --git a/extreme_trend/abstract_gev_trend_test.py b/extreme_trend/abstract_gev_trend_test.py index b7e5d16cce3dfd82fb0a8425fa2ebbfddc471087..b0c829acb74aa49f41a1ab543089b5512fd51cd8 100644 --- a/extreme_trend/abstract_gev_trend_test.py +++ b/extreme_trend/abstract_gev_trend_test.py @@ -3,21 +3,19 @@ from math import ceil, floor import matplotlib.pyplot as plt import numpy as np from cached_property import cached_property -from scipy.stats import chi2, kstest, anderson -from scipy.stats.morestats import AndersonResult +from scipy.stats import chi2, kstest from scipy.stats.stats import KstestResult from extreme_data.eurocode_data.utils import EUROCODE_QUANTILE, YEAR_OF_INTEREST_FOR_RETURN_LEVEL from extreme_data.meteo_france_data.scm_models_data.crocus.crocus_variables import AbstractSnowLoadVariable +from extreme_fit.distribution.gev.gev_params import GevParams from extreme_fit.distribution.gumbel.gumbel_gof import \ cramer_von_mises_and_anderson_darling_tests_pvalues_for_gumbel_distribution from extreme_fit.estimator.margin_estimator.utils import fitted_linear_margin_estimator -from extreme_fit.distribution.gev.gev_params import GevParams -from extreme_fit.model.margin_model.utils import \ - MarginFitMethod from extreme_fit.model.margin_model.linear_margin_model.temporal_linear_margin_models import \ StationaryTemporalModel, GumbelTemporalModel -from extreme_fit.model.utils import SafeRunException +from extreme_fit.model.margin_model.utils import \ + MarginFitMethod from root_utils import classproperty from spatio_temporal_dataset.coordinates.abstract_coordinates import AbstractCoordinates from spatio_temporal_dataset.utils import load_temporal_coordinates_and_dataset diff --git a/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py index 2fe80931b12ce361dd03caaa3d3d0b327bd63390..d162a4e381dfde167a80c825a5ad560d08128590 100644 --- a/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py +++ b/projects/contrasting_trends_in_snow_loads/article2_snowfall_versus_time_and_altitude/main_snowfall_article.py @@ -66,7 +66,7 @@ def intermediate_result(altitudes, massif_names=None, # Compute minimized value efficiently visualizers = list(altitude_to_visualizer.values()) if multiprocessing: - with Pool(NB_CORES) as p: + with Pool(4) as p: _ = p.map(compute_minimized_aic, visualizers) else: for visualizer in visualizers: @@ -95,7 +95,7 @@ def major_result(): for study_class in study_classes: intermediate_result(altitudes, massif_names, model_subsets_for_uncertainty, - uncertainty_methods, study_class, multiprocessing=True) + uncertainty_methods, study_class, multiprocessing=False) if __name__ == '__main__': diff --git a/test/test_extreme_trend/test_extreme_trend.py b/test/test_extreme_trend/test_extreme_trend.py index efd2d0a821a96055a522368aa114e17277ca954e..5d37420eefbecd70fe0f5e88eb0bc4416da00fbd 100644 --- a/test/test_extreme_trend/test_extreme_trend.py +++ b/test/test_extreme_trend/test_extreme_trend.py @@ -1,5 +1,7 @@ import unittest +from extreme_fit.distribution.gev.gev_params import GevParams +from extreme_trend.trend_test_one_parameter.gumbel_trend_test_one_parameter import GumbelVersusGumbel from projects.exceeding_snow_loads.utils import NON_STATIONARY_TREND_TEST_PAPER_1, NON_STATIONARY_TREND_TEST_PAPER_2 @@ -19,6 +21,13 @@ class TestTrendAnalysis(unittest.TestCase): for trend_test_class, nb in zip(trend_test_classes, nb_expected): self.assertEqual(trend_test_class.total_number_of_parameters_for_unconstrained_model, nb) + def test_anderson_goodness_of_fit(self): + nb_data = 50 + years = list(range(nb_data)) + maxima = GevParams(5, 1, 0).sample(nb_data) + trend_test = GumbelVersusGumbel(years, maxima, None) + self.assertTrue(trend_test.goodness_of_fit_anderson_test) + if __name__ == '__main__': unittest.main()