diff --git a/modules/Loading/R/load_seasonal.R b/modules/Loading/R/load_seasonal.R index 7b7619cc5d699cb2187a1c0dfd7aa40896183dcb..4b8fa6aca80bd50d2189e4a817839419c1c5c965 100644 --- a/modules/Loading/R/load_seasonal.R +++ b/modules/Loading/R/load_seasonal.R @@ -71,8 +71,8 @@ load_seasonal <- function(recipe) { } else if (store.freq == "monthly_mean") { frequency <- "monthly_mean" } - var_dir_obs <- reference_descrip[[store.freq]][variable] - var_dir_exp <- exp_descrip[[store.freq]][variable] + var_dir_obs <- reference_descrip[[frequency]][variable] + var_dir_exp <- exp_descrip[[frequency]][variable] # ----------- obs.path <- paste0(archive$src, obs.dir, "$var_dir$", diff --git a/modules/Loading/R/load_tas_tos.R b/modules/Loading/R/load_tas_tos.R index 49b7df33eeaaf8c00705a4fba85566fe1bfb29b0..18c000ad1dfc9d5ba3c4bc8f3575077ef1215c8d 100644 --- a/modules/Loading/R/load_tas_tos.R +++ b/modules/Loading/R/load_tas_tos.R @@ -40,30 +40,34 @@ load_tas_tos <- function(recipe) { idxs$hcst <- get_timeidx(sdates$hcst, recipe$Analysis$Time$ftime_min, recipe$Analysis$Time$ftime_max, - time_freq=store.freq) + time_freq = store.freq) if (!(is.null(sdates$fcst))) { idxs$fcst <- get_timeidx(sdates$fcst, recipe$Analysis$Time$ftime_min, recipe$Analysis$Time$ftime_max, - time_freq=store.freq) + time_freq = store.freq) } # get esarchive datasets dict: archive <- read_yaml("conf/archive.yml")[[recipe$Run$filesystem]] exp_descrip <- archive$System[[exp.name]] - freq.hcst <- unlist(exp_descrip[[store.freq]][variable[1]]) reference_descrip <- archive$Reference[[ref.name]] - freq.obs <- unlist(reference_descrip[[store.freq]][variable[1]]) obs.dir <- reference_descrip$src fcst.dir <- exp_descrip$src hcst.dir <- exp_descrip$src fcst.nmember <- exp_descrip$nmember$fcst hcst.nmember <- exp_descrip$nmember$hcst + + if (store.freq %in% c("daily", "daily_mean")) { + frequency <- "daily_mean" + } else if (store.freq == "monthly_mean") { + frequency <- "monthly_mean" + } - var_dir_obs <- reference_descrip[[store.freq]][variable] - var_dir_exp <- exp_descrip[[store.freq]][variable] + var_dir_obs <- reference_descrip[[frequency]][variable] + var_dir_exp <- exp_descrip[[frequency]][variable] # ----------- obs.path <- paste0(archive$src, obs.dir, "$var_dir$", @@ -256,7 +260,7 @@ load_tas_tos <- function(recipe) { dim(dates) <- hcst$dims[c("sday", "sweek", "syear", "time")] # Separate Start() call for monthly vs daily data - if (store.freq == "monthly_mean") { + if (frequency == "monthly_mean") { dates_file <- format(as.Date(dates, '%Y%m%d'), "%Y%m") dim(dates_file) <- dim(dates) @@ -265,7 +269,7 @@ load_tas_tos <- function(recipe) { # Define variables for blended tas-tos datasets if (recipe$Analysis$Datasets$Reference$name == 'BEST'){ variable <- 'tas' - var_dir_obs <- reference_descrip[[store.freq]][variable] + var_dir_obs <- reference_descrip[[frequency]][variable] } obs <- Start(dat = obs.path, @@ -287,7 +291,7 @@ load_tas_tos <- function(recipe) { retrieve = TRUE) - } else if (store.freq == "daily_mean") { + } else if (frequency == "daily_mean") { # Get year and month for file_date dates_file <- sapply(dates, format, '%Y%m') diff --git a/tests/recipes/recipe-seasonal_daily_1.yml b/tests/recipes/recipe-seasonal_daily_1.yml index 42603c2cdb0bd7d421f9d1c48e6a7070e7ed4bf4..4378730f3c95b39c7455c2831d468e3631f35dd5 100644 --- a/tests/recipes/recipe-seasonal_daily_1.yml +++ b/tests/recipes/recipe-seasonal_daily_1.yml @@ -4,7 +4,7 @@ Description: Analysis: Horizon: Seasonal Variables: - - {name: tas, freq: daily_mean} + - {name: tas, freq: daily} Datasets: System: - name: ECMWF-SEAS5