From 7a7f89d239bbeb184e0a5b47f596d68c1452fd96 Mon Sep 17 00:00:00 2001 From: Le Roux Erwan <erwan.le-roux@irstea.fr> Date: Mon, 8 Feb 2021 16:15:10 +0100 Subject: [PATCH] [projections] remove 'CNRM-ALADIN62_ECMWF-ERAINT' for the ensemble of adamont_v2. generalize the usage of "get_gcm_rcm_couple_adamont_to_full_name" --- .../adamont_data/abstract_adamont_study.py | 4 +++- .../meteo_france_data/adamont_data/adamont_studies.py | 6 ++++-- .../projected_snowfall/projected_data/main_projection.py | 2 +- .../test_meteo_france_data/test_adamont_study.py | 4 +++- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py b/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py index f059bc91..2d2d7c62 100644 --- a/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py +++ b/extreme_data/meteo_france_data/adamont_data/abstract_adamont_study.py @@ -12,7 +12,7 @@ from netCDF4._netCDF4 import Dataset from extreme_data.meteo_france_data.adamont_data.adamont.adamont_variables import AbstractAdamontVariable from extreme_data.meteo_france_data.adamont_data.adamont_gcm_rcm_couples import get_gcm_rcm_couple_adamont_to_full_name from extreme_data.meteo_france_data.adamont_data.adamont_scenario import scenario_to_str, AdamontScenario, \ - get_year_min_and_year_max_from_scenario, gcm_rcm_couple_to_full_name, get_suffix_for_the_nc_file, \ + get_year_min_and_year_max_from_scenario, get_suffix_for_the_nc_file, \ scenario_to_real_scenarios, get_year_max from extreme_data.meteo_france_data.adamont_data.utils.utils import massif_number_to_massif_name @@ -110,6 +110,8 @@ class AbstractAdamontStudy(AbstractStudy): scenario_name = self._scenario_to_str_adamont_v2(scenario) directory = self.gcm_rcm_full_name + '_' + scenario_name filename = self.nc_filename_adamont_v2(scenario) + print(directory) + print(filename) full_path = op.join(ADAMONT_v2_WEBPATH, directory, filename) # Download file request = 'wget {} -P {}'.format(full_path, path_folder) diff --git a/extreme_data/meteo_france_data/adamont_data/adamont_studies.py b/extreme_data/meteo_france_data/adamont_data/adamont_studies.py index 5d0e54f9..12364ab3 100644 --- a/extreme_data/meteo_france_data/adamont_data/adamont_studies.py +++ b/extreme_data/meteo_france_data/adamont_data/adamont_studies.py @@ -6,6 +6,7 @@ import numpy as np from cached_property import cached_property from extreme_data.meteo_france_data.adamont_data.abstract_adamont_study import AbstractAdamontStudy +from extreme_data.meteo_france_data.adamont_data.adamont_gcm_rcm_couples import get_gcm_rcm_couple_adamont_to_full_name from extreme_data.meteo_france_data.adamont_data.adamont_scenario import gcm_rcm_couple_to_full_name, \ gcm_rcm_couple_to_str, get_color_from_gcm_rcm_couple from extreme_data.meteo_france_data.scm_models_data.abstract_study import AbstractStudy @@ -16,14 +17,15 @@ from extreme_data.meteo_france_data.scm_models_data.visualization.study_visualiz class AdamontStudies(object): - def __init__(self, study_class, gcm_rcm_couples=None, **kwargs_study): + def __init__(self, study_class, gcm_rcm_couples=None, adamont_version=2, **kwargs_study): self.study_class = study_class if gcm_rcm_couples is None: + gcm_rcm_couple_to_full_name = get_gcm_rcm_couple_adamont_to_full_name(adamont_version) gcm_rcm_couples = list(gcm_rcm_couple_to_full_name.keys()) self.gcm_rcm_couples = gcm_rcm_couples self.gcm_rcm_couple_to_study = OrderedDict() # type: OrderedDict[int, AbstractAdamontStudy] for gcm_rcm_couple in self.gcm_rcm_couples: - study = study_class(gcm_rcm_couple=gcm_rcm_couple, **kwargs_study) + study = study_class(gcm_rcm_couple=gcm_rcm_couple, adamont_version=adamont_version, **kwargs_study) self.gcm_rcm_couple_to_study[gcm_rcm_couple] = study @property diff --git a/projects/projected_snowfall/projected_data/main_projection.py b/projects/projected_snowfall/projected_data/main_projection.py index 93ebb901..14f1a8f1 100644 --- a/projects/projected_snowfall/projected_data/main_projection.py +++ b/projects/projected_snowfall/projected_data/main_projection.py @@ -8,7 +8,7 @@ mpl.rcParams['text.latex.preamble'] = [r'\usepackage{amsmath}'] from collections import OrderedDict from extreme_data.meteo_france_data.adamont_data.adamont.adamont_snowfall import AdamontSnowfall -from extreme_data.meteo_france_data.adamont_data.adamont_scenario import gcm_rcm_couple_to_full_name, AdamontScenario, \ +from extreme_data.meteo_france_data.adamont_data.adamont_scenario import AdamontScenario, \ load_gcm_rcm_couples_for_year_min_and_year_max from extreme_data.meteo_france_data.adamont_data.adamont_studies import AdamontStudies from extreme_data.meteo_france_data.scm_models_data.safran.safran import SafranSnowfall1Day diff --git a/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py b/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py index f577dd69..990f5dad 100644 --- a/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py +++ b/test/test_extreme_data/test_meteo_france_data/test_adamont_study.py @@ -1,6 +1,7 @@ import unittest -from extreme_data.meteo_france_data.adamont_data.adamont_scenario import AdamontScenario, gcm_rcm_couple_to_full_name +from extreme_data.meteo_france_data.adamont_data.adamont_gcm_rcm_couples import get_gcm_rcm_couple_adamont_to_full_name +from extreme_data.meteo_france_data.adamont_data.adamont_scenario import AdamontScenario from extreme_data.meteo_france_data.adamont_data.adamont.adamont_snowfall import AdamontSnowfall @@ -17,6 +18,7 @@ class TestAdamontStudy(unittest.TestCase): AdamontSnowfall(altitude=900, scenario=AdamontScenario.rcp85, adamont_version=version), AdamontSnowfall(altitude=900, scenario=AdamontScenario.rcp85_extended, adamont_version=version) ]) + gcm_rcm_couple_to_full_name = get_gcm_rcm_couple_adamont_to_full_name(version) study_list.extend([AdamontSnowfall(altitude=900, gcm_rcm_couple=gcm_rcm_couple, adamont_version=version) for gcm_rcm_couple in gcm_rcm_couple_to_full_name.keys()]) for study in study_list: -- GitLab