diff --git a/climax/main/config.py b/climax/main/config.py index e6b7e4985e2bbc18780a9f2595b5051cc0228262..ae9b692948ba93f352050df85c7b610cead13f69 100644 --- a/climax/main/config.py +++ b/climax/main/config.py @@ -4,7 +4,6 @@ # -*- coding: utf-8 -*- # builtins -import pathlib import datetime # externals @@ -13,25 +12,6 @@ import numpy as np # locals from climax.core.constants import PREDICTANDS -# ----------------------------------------------------------------------------- -# Paths to input data --------------------------------------------------------- -# ----------------------------------------------------------------------------- - -# project root path -ROOT = pathlib.Path('/mnt/CEPH_PROJECTS/FACT_CLIMAX/') - -# path to this file -HERE = pathlib.Path(__file__).parent - -# path to ERA5 reanalysis data -ERA5_PATH = ROOT.joinpath('REANALYSIS') - -# path to OBServation data -OBS_PATH = ROOT.joinpath('OBSERVATION') - -# path to save trained models -MODEL_PATH = ROOT.joinpath('Models') - # ----------------------------------------------------------------------------- # ERA5 downscaling configuration ---------------------------------------------- # ----------------------------------------------------------------------------- diff --git a/climax/main/downscale.py b/climax/main/downscale.py index ce969d2ff9e999540a224ea0937daf686178d79d..2f441f4ec7d130a11f378334ade54b7cea743d9a 100644 --- a/climax/main/downscale.py +++ b/climax/main/downscale.py @@ -19,9 +19,9 @@ from pysegcnn.core.trainer import NetworkTrainer from pysegcnn.core.logging import log_conf from climax.core.dataset import ERA5Dataset, NetCDFDataset from climax.core.constants import ERA5_VARIABLES -from climax.main.config import (ERA5_PATH, ERA5_PLEVELS, OBS_PATH, PREDICTAND, - CALIB_PERIOD, MODEL_PATH, SHUFFLE, BATCH_SIZE, - LR, TRAIN_CONFIG) +from climax.main.config import (ERA5_PLEVELS, PREDICTAND, CALIB_PERIOD, + SHUFFLE, BATCH_SIZE, LR, TRAIN_CONFIG) +from climax.main.io import ERA5_PATH, OBS_PATH, MODEL_PATH if __name__ == '__main__': diff --git a/climax/main/io.py b/climax/main/io.py new file mode 100644 index 0000000000000000000000000000000000000000..179375fe582659a3c90982fc2eeef53c9021bde2 --- /dev/null +++ b/climax/main/io.py @@ -0,0 +1,32 @@ +"""Climax input and output files.""" + +# !/usr/bin/env python +# -*- coding: utf-8 -*- + +# builtins +import pathlib + +# ----------------------------------------------------------------------------- +# Paths to input data --------------------------------------------------------- +# ----------------------------------------------------------------------------- + +# project root path +ROOT = pathlib.Path('~/FACT_CLIMAX') +ROOT = pathlib.Path('/mnt/CEPH_PROJECTS/FACT_CLIMAX/') + +# path to this file +HERE = pathlib.Path(__file__).parent + +# path to ERA5 reanalysis data +ERA5_PATH = ROOT.joinpath('REANALYSIS') + +# path to OBServation data +OBS_PATH = ROOT.joinpath('OBSERVATION') + +# path to save trained models +MODEL_PATH = ROOT.joinpath('Models') + +# create input and output paths +for path in [ERA5_PATH, OBS_PATH, MODEL_PATH]: + if not path.exists(): + path.mkdir(parents=True, exist_ok=True) diff --git a/climax/main/preprocess/download_ERA5.py b/climax/main/preprocess/download_ERA5.py index 3c8ff185d32f0ad524acfcd85a65d7e307d4c1eb..cec572d8a6212da52fe39d6bc6b73b458d42fb71 100644 --- a/climax/main/preprocess/download_ERA5.py +++ b/climax/main/preprocess/download_ERA5.py @@ -13,7 +13,7 @@ import numpy as np # locals from climax.core.constants import ERA5_P_VARIABLES, ERA5_VARIABLES -from climax.main.config import ERA5_PATH +from climax.main.io import ERA5_PATH # pressure levels pressure_levels = ['850', '500']