diff --git a/extreme_data/meteo_france_data/scm_models_data/safran/safran_variable.py b/extreme_data/meteo_france_data/scm_models_data/safran/safran_variable.py index 65928b21bddb72e7f0e088fdbef3993d8fd5414f..aa7f78d368cb2465523c1e53b8450f403fa81b0e 100644 --- a/extreme_data/meteo_france_data/scm_models_data/safran/safran_variable.py +++ b/extreme_data/meteo_france_data/scm_models_data/safran/safran_variable.py @@ -80,8 +80,10 @@ class SafranTotalPrecipVariable(AbstractVariable): def __init__(self, snow_variable_array, rain_variable_array, nb_consecutive_days): super().__init__(None) - self.snow_precipitation = SafranSnowfallVariable(snow_variable_array, nb_consecutive_days) - self.rain_precipitation = SafranRainfallVariable(rain_variable_array, nb_consecutive_days) + snow_precipitation = SafranSnowfallVariable(snow_variable_array, nb_consecutive_days) + rain_precipitation = SafranRainfallVariable(rain_variable_array, nb_consecutive_days) + self._daily_time_serie_array = snow_precipitation.daily_time_serie_array \ + + rain_precipitation.daily_time_serie_array @classmethod def keyword(cls): @@ -89,7 +91,7 @@ class SafranTotalPrecipVariable(AbstractVariable): @property def daily_time_serie_array(self) -> np.ndarray: - return self.snow_precipitation.daily_time_serie_array + self.rain_precipitation.daily_time_serie_array + return self._daily_time_serie_array class SafranTemperatureVariable(AbstractVariable): diff --git a/extreme_trend/visualizers/utils.py b/extreme_trend/visualizers/utils.py index f674e897a798bc264a151725ad4a3c81d7aad256..43687d4594689d5acb935060ad1e85e65652e9d6 100644 --- a/extreme_trend/visualizers/utils.py +++ b/extreme_trend/visualizers/utils.py @@ -5,18 +5,23 @@ from extreme_fit.model.margin_model.linear_margin_model.abstract_temporal_linear from extreme_trend.visualizers.study_visualizer_for_non_stationary_trends import \ StudyVisualizerForNonStationaryTrends + def load_altitude_to_visualizer(altitudes, massif_names, model_subsets_for_uncertainty, study_class, uncertainty_methods, study_visualizer_class=StudyVisualizerForNonStationaryTrends, - save_to_file=True): + save_to_file=True, + multiprocessing=True): fit_method = TemporalMarginFitMethod.extremes_fevd_mle altitude_to_visualizer = OrderedDict() for altitude in altitudes: - altitude_to_visualizer[altitude] = study_visualizer_class( - study=study_class(altitude=altitude), multiprocessing=True, save_to_file=save_to_file, - uncertainty_massif_names=massif_names, uncertainty_methods=uncertainty_methods, - model_subsets_for_uncertainty=model_subsets_for_uncertainty, fit_method=fit_method, - select_only_acceptable_shape_parameter=True, - fit_gev_only_on_non_null_maxima=False, - fit_only_time_series_with_ninety_percent_of_non_null_values=True) + study = study_class(altitude=altitude, multiprocessing=multiprocessing) + study_visualizer = study_visualizer_class(study=study, multiprocessing=multiprocessing, + save_to_file=save_to_file, uncertainty_massif_names=massif_names, + uncertainty_methods=uncertainty_methods, + model_subsets_for_uncertainty=model_subsets_for_uncertainty, + fit_method=fit_method, select_only_acceptable_shape_parameter=True, + fit_gev_only_on_non_null_maxima=False, + fit_only_time_series_with_ninety_percent_of_non_null_values=True) + altitude_to_visualizer[altitude] = study_visualizer + return altitude_to_visualizer diff --git a/projects/contrasting_trends_in_snow_loads/main_result.py b/projects/contrasting_trends_in_snow_loads/main_result.py index ccd44348af9a9b8b25fa8420fb1dcbc7a30023d7..02c5567be8d6f0cb747e54eb9055fb66971aec0c 100644 --- a/projects/contrasting_trends_in_snow_loads/main_result.py +++ b/projects/contrasting_trends_in_snow_loads/main_result.py @@ -65,17 +65,17 @@ def major_result(): model_subsets_for_uncertainty = None # altitudes = paper_altitudes # altitudes = paper_altitudes - altitudes = [900, 1200, 1500, 1800, 2100, 2400, 2700, 3000][:4] + altitudes = [900, 1200, 1500, 1800, 2100, 2400, 2700, 3000][:8] snow_load_classes = [CrocusSnowLoad1Day, CrocusSnowLoad3Days, CrocusSnowLoad5Days, CrocusSnowLoad7Days][:] precipitation_classes = [SafranPrecipitation1Day, SafranPrecipitation3Days, SafranPrecipitation5Days, SafranPrecipitation7Days][:] snowfall_classes = [SafranSnowfall1Day, SafranSnowfall3Days, SafranSnowfall5Days, SafranSnowfall7Days] rainfall_classes = [SafranRainfall1Day, SafranRainfall3Days, SafranRainfall5Days, SafranRainfall7Days] study_classes = precipitation_classes + snow_load_classes - study_classes = snowfall_classes + rainfall_classes - for study_class in study_classes: + # study_classes = snowfall_classes + rainfall_classes + for study_class in study_classes[:1]: intermediate_result(altitudes, massif_names, model_subsets_for_uncertainty, - uncertainty_methods, study_class) + uncertainty_methods, study_class, multiprocessing=True) if __name__ == '__main__':