diff --git a/.gitignore b/.gitignore index f5e425f752a1de0de0c68036a54e0d19450320bb..04bc0d1b9ec314e6398dcc7907d73686f00655f3 100644 --- a/.gitignore +++ b/.gitignore @@ -62,6 +62,7 @@ activate_env.sh /tmp/ /logging/ /HPC_logging/ +/tmp_downloads/ # test related data # ##################### diff --git a/mlair/reference_models/reference_model_intellio3_v1.py b/mlair/reference_models/reference_model_intellio3_v1.py index aa2c0dff52f9e0ecf3150aea976ea743f7de1dec..5f0bae48a32f54a0e58d0e6d6139370af8106d84 100644 --- a/mlair/reference_models/reference_model_intellio3_v1.py +++ b/mlair/reference_models/reference_model_intellio3_v1.py @@ -14,7 +14,7 @@ from mlair.configuration.path_config import check_path_and_create from mlair.reference_models.abstract_reference_model import AbstractReferenceB2share -class IntelliO3Reference(AbstractReferenceB2share): +class IntelliO3_ts_v1(AbstractReferenceB2share): """ Reference handler that extracts IntelliO3-ts v1.0 forecasts (Kleinert, 2021). @@ -67,14 +67,14 @@ class IntelliO3Reference(AbstractReferenceB2share): :param sel_coords: """ if sel_coords is None: - sel_coords = {'type': 'CNN'} + sel_coords = {'type': ['CNN']} in_path, files = self.file_list() check_path_and_create(self.ref_store_path) for infile in files: - data = xr.open_dataarray(f"{in_path}{infile}") + data = xr.open_dataarray(os.path.join(in_path, infile)) data = data.sel(**sel_coords) - data.coords['type'] = (self.ref_name) - data.to_netcdf(f"{self.ref_store_path}{infile}") + data.coords['type'] = ['nn'] + data.to_netcdf(os.path.join(self.ref_store_path, infile)) def make_reference_available_locally(self, remove_tmp_dir: bool = True): """ @@ -92,6 +92,6 @@ class IntelliO3Reference(AbstractReferenceB2share): if __name__ == '__main__': - io3 = IntelliO3Reference('IntelliO3-ts') + io3 = IntelliO3_ts_v1('IntelliO3-ts') io3.make_reference_available_locally() diff --git a/requirements.txt b/requirements.txt index 77f300df6a8b97395fd5c6771310f7b7b9537a59..47995404d7c8c202071197bb2aab9dba81e18689 100644 --- a/requirements.txt +++ b/requirements.txt @@ -24,6 +24,7 @@ Markdown==3.2.1 matplotlib==3.2.0 mock==4.0.1 more-itertools==8.2.0 +netcdf4==1.5.5.1 numpy==1.18.1 packaging==20.3 pandas==1.0.1 diff --git a/test/test_reference_data_handler/test_abstract_reference_data_handler.py b/test/test_reference_models/test_abstract_reference_model.py similarity index 99% rename from test/test_reference_data_handler/test_abstract_reference_data_handler.py rename to test/test_reference_models/test_abstract_reference_model.py index d37bd744e7f4f4fbc4a7584dbc0aeec5bff87574..4c455219be88a97e4f7f13fec663bd95bc8cf7d8 100644 --- a/test/test_reference_data_handler/test_abstract_reference_data_handler.py +++ b/test/test_reference_models/test_abstract_reference_model.py @@ -51,4 +51,4 @@ class TestAbstractReferenceb2share: pass def test_download_from_b2share(self): - pass \ No newline at end of file + pass diff --git a/test/test_reference_data_handler/test_intellio3_v1_reference.py b/test/test_reference_models/test_reference_model_intellio3_v1.py similarity index 71% rename from test/test_reference_data_handler/test_intellio3_v1_reference.py rename to test/test_reference_models/test_reference_model_intellio3_v1.py index 742b8951b5736d46165bf3308eb94ecd12d6b78b..bfd4cae3f04121ab0dd6a25e5d88ff88d73b54d3 100644 --- a/test/test_reference_data_handler/test_intellio3_v1_reference.py +++ b/test/test_reference_models/test_reference_model_intellio3_v1.py @@ -1,6 +1,6 @@ import pytest -from mlair.reference_models.reference_model_intellio3_v1 import IntelliO3Reference +from mlair.reference_models.reference_model_intellio3_v1 import IntelliO3_ts_v1 from mlair.reference_models.abstract_reference_model import AbstractReferenceB2share @@ -8,11 +8,11 @@ class TestIntelliO3Reference: @pytest.fixture def io3(self): - return IntelliO3Reference("IntelliO3-test") + return IntelliO3_ts_v1("IntelliO3-test") def test_init_none_path(self): - io3 = IntelliO3Reference("IntelliO3-test") - assert isinstance(io3, IntelliO3Reference) + io3 = IntelliO3_ts_v1("IntelliO3-test") + assert isinstance(io3, IntelliO3_ts_v1) assert io3.ref_name == "IntelliO3-test" assert io3.ref_store_path == "IntelliO3-test/" assert io3.tmp_extract_path == "tmp_downloads/" @@ -23,12 +23,12 @@ class TestIntelliO3Reference: assert io3.b2share_hosturl == "https://b2share.eudat.eu" def test_init_extra_path(self): - io3 = IntelliO3Reference("IntelliO3-test", "DummyExtraPath/") - assert isinstance(io3, IntelliO3Reference) + io3 = IntelliO3_ts_v1("IntelliO3-test", "DummyExtraPath/") + assert isinstance(io3, IntelliO3_ts_v1) assert io3.ref_store_path == "DummyExtraPath/" def test_inheritance(self): - assert issubclass(IntelliO3Reference, AbstractReferenceB2share) + assert issubclass(IntelliO3_ts_v1, AbstractReferenceB2share) def test_untar_forecasts(self, io3): pass @@ -40,5 +40,4 @@ class TestIntelliO3Reference: pass def test_make_reference_available_locally(self): - io3 = IntelliO3Reference("IntelliO3-test", "DummyExtraPath/") - + pass diff --git a/test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz b/test/test_reference_models/tmp_downloads/IntelliO3-ts.tar.gz similarity index 100% rename from test/test_reference_data_handler/tmp_downloads/IntelliO3-ts.tar.gz rename to test/test_reference_models/tmp_downloads/IntelliO3-ts.tar.gz