diff --git a/DESCRIPTION b/DESCRIPTION index 14cd34f6f7fac882ba03cd00ef5579e04ffbbaf3..3af5dcb16eedc1a288f09e7fb6cc1866ade12c6e 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: CSTools Title: Assessing Skill of Climate Forecasts on Seasonal-to-Decadal Timescales -Version: 5.1.0 +Version: 5.1.1 Authors@R: c( person("Nuria", "Perez-Zanon", , "nuria.perez@bsc.es", role = "aut", comment = c(ORCID = "0000-0001-8568-3071")), person("Louis-Philippe", "Caron", , "louis-philippe.caron@bsc.es", role = "aut", comment = c(ORCID = "0000-0001-5221-0147")), diff --git a/NEWS.md b/NEWS.md index f2f8f099299897223878854151e8e11bc24852d9..250410084c486ff70f9d6cf00d768a965686fe0b 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,8 @@ +# CSTools 5.1.1 (Release date: 19-10-2023) + +### Fixes +- Added startR namespace in all CST_Start calls of the vignettes and sample data. + # CSTools 5.1.0 (Release date: 17-10-2023) ### Fixes diff --git a/R/CST_Start.R b/R/CST_Start.R index 722568ccbcdb75e2a027a63c3572e9ccf6b753fb..bc688557d3bc681dbde26b58b373077b144b2de9 100644 --- a/R/CST_Start.R +++ b/R/CST_Start.R @@ -9,7 +9,10 @@ #'`s2dv_cube` object. #' #'It receives any number of parameters (`...`) that are automatically forwarded -#'to the `startR::Start` function. See details in `?startR::Start`. +#'to the `startR::Start` function. See details in `?startR::Start`. The +#'auxiliary functions used to define dimensions need to be called within the +#'startR namespace (e.g. startR::indices(), startR::values(), startR::Sort(), +#'startR::CircularSort(), startR::CDORemapper(), ...). #' #'@param ... Parameters that are automatically forwarded to the `startR::Start` #' function. See details in `?startR::Start`. diff --git a/R/sample_data_st.R b/R/sample_data_st.R index cd33ee069d270640c08a27c0a8dadb4b2fb4c0b2..ee766b7ae95edbee3ba14e832b92548619ca6dbb 100644 --- a/R/sample_data_st.R +++ b/R/sample_data_st.R @@ -25,13 +25,13 @@ #' latmin <- 27 #' lonlat_temp_st$exp <- CST_Start(dataset = repos_exp, #' var = 'tas', -#' member = indices(1:15), +#' member = startR::indices(1:15), #' sdate = sdates, -#' ftime = indices(1:3), -#' lat = values(list(latmin, latmax)), -#' lat_reorder = Sort(decreasing = TRUE), -#' lon = values(list(lonmin, lonmax)), -#' lon_reorder = CircularSort(0, 360), +#' ftime = startR::indices(1:3), +#' lat = startR::values(list(latmin, latmax)), +#' lat_reorder = startR::Sort(decreasing = TRUE), +#' lon = startR::values(list(lonmin, lonmax)), +#' lon_reorder = startR::CircularSort(0, 360), #' synonims = list(lon = c('lon', 'longitude'), #' lat = c('lat', 'latitude'), #' member = c('member', 'ensemble'), @@ -54,19 +54,19 @@ #' lonlat_temp_st$obs <- CST_Start(dataset = path.obs, #' var = 'tas', #' date = unique(format(dates, '%Y%m')), -#' ftime = values(dates), +#' ftime = startR::values(dates), #' ftime_across = 'date', #' ftime_var = 'ftime', #' merge_across_dims = TRUE, #' split_multiselected_dims = TRUE, -#' lat = values(list(latmin, latmax)), -#' lat_reorder = Sort(decreasing = TRUE), -#' lon = values(list(lonmin, lonmax)), -#' lon_reorder = CircularSort(0, 360), +#' lat = startR::values(list(latmin, latmax)), +#' lat_reorder = startR::Sort(decreasing = TRUE), +#' lon = startR::values(list(lonmin, lonmax)), +#' lon_reorder = startR::CircularSort(0, 360), #' synonims = list(lon = c('lon', 'longitude'), #' lat = c('lat', 'latitude'), #' ftime = c('ftime', 'time')), -#' transform = CDORemapper, +#' transform = startR::CDORemapper, #' transform_extra_cells = 2, #' transform_params = list(grid = 'r360x181', #' method = 'conservative'), @@ -119,13 +119,13 @@ NULL #' #' lonlat_prec_st <- CST_Start(dataset = path, #' var = 'prlr', -#' member = indices(1:6), +#' member = startR::indices(1:6), #' sdate = sdates, #' ftime = 121:151, -#' lat = values(list(latmin, latmax)), -#' lat_reorder = Sort(decreasing = TRUE), -#' lon = values(list(lonmin, lonmax)), -#' lon_reorder = CircularSort(0, 360), +#' lat = startR::values(list(latmin, latmax)), +#' lat_reorder = startR::Sort(decreasing = TRUE), +#' lon = startR::values(list(lonmin, lonmax)), +#' lon_reorder = startR::CircularSort(0, 360), #' synonims = list(lon = c('lon', 'longitude'), #' lat = c('lat', 'latitude'), #' ftime = c('time', 'ftime'), diff --git a/man/CST_Start.Rd b/man/CST_Start.Rd index 6069f0c8607414610c60adf491ee3c3202c6da3c..b286bf18ed454ea9a47f972a0bbd1339a2755b27 100644 --- a/man/CST_Start.Rd +++ b/man/CST_Start.Rd @@ -21,7 +21,10 @@ multidimensional distributed data sets. Then, the output is transformed into } \details{ It receives any number of parameters (`...`) that are automatically forwarded -to the `startR::Start` function. See details in `?startR::Start`. +to the `startR::Start` function. See details in `?startR::Start`. The +auxiliary functions used to define dimensions need to be called within the +startR namespace (e.g. startR::indices(), startR::values(), startR::Sort(), +startR::CircularSort(), startR::CDORemapper(), ...). } \examples{ \dontrun{ diff --git a/man/lonlat_prec_st.Rd b/man/lonlat_prec_st.Rd index 817156319de7f4fb82522e78d807b4ae3397f0d4..981c64aabcc30fd73d01da43091e6394ee24b223 100644 --- a/man/lonlat_prec_st.Rd +++ b/man/lonlat_prec_st.Rd @@ -30,13 +30,13 @@ extracted from forecast data available in the MEDSCOPE internal archive. lonlat_prec_st <- CST_Start(dataset = path, var = 'prlr', - member = indices(1:6), + member = startR::indices(1:6), sdate = sdates, ftime = 121:151, - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('time', 'ftime'), diff --git a/man/lonlat_temp_st.Rd b/man/lonlat_temp_st.Rd index 8dc554f2656a7d7d967d3683b66a49eb78dc2072..f538d07a9dd7a659db8103adf2354b398d7ae483 100644 --- a/man/lonlat_temp_st.Rd +++ b/man/lonlat_temp_st.Rd @@ -31,13 +31,13 @@ next. Note that `CST_Start` internally calls `startR::Start` and then uses latmin <- 27 lonlat_temp_st$exp <- CST_Start(dataset = repos_exp, var = 'tas', - member = indices(1:15), + member = startR::indices(1:15), sdate = sdates, - ftime = indices(1:3), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(1:3), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), @@ -60,19 +60,19 @@ next. Note that `CST_Start` internally calls `startR::Start` and then uses lonlat_temp_st$obs <- CST_Start(dataset = path.obs, var = 'tas', date = unique(format(dates, '%Y%m')), - ftime = values(dates), + ftime = startR::values(dates), ftime_across = 'date', ftime_var = 'ftime', merge_across_dims = TRUE, split_multiselected_dims = TRUE, - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r360x181', method = 'conservative'), diff --git a/vignettes/Analogs_vignette.Rmd b/vignettes/Analogs_vignette.Rmd index de4594e8c8db0952452e1c5599bffb1bb928b568..6f63174cf04f38ef59f83f0f4c82447c391f81ed 100644 --- a/vignettes/Analogs_vignette.Rmd +++ b/vignettes/Analogs_vignette.Rmd @@ -135,11 +135,11 @@ dates <- as.POSIXct(seq(start, end, by = "year"), format = '%Y%m%d', 'UTC') Using the `CST_Start` function from **CSTools package**, the data available in our data store can be loaded. The following lines show how this function can be used. The experimental datasets are interpolated to the ERA5 grid by specifying the 'grid' parameter while ERA5 doesn't need to be interpolated. While dimension 'time' is set to 1 for the experimental dataset, it is set to 31 for the observations, returning the daily observations for October for the years requested in 'sdate' (2000-2006). Download the data to run the recipe under the HTTPS: downloads.cmcc.bo.it/d_chaves/ANALOGS/data_for_Analogs.Rdat or ask carmen.alvarez-castro at cmcc.it or nuria.perez at bsc.es. -``` +```r exp_path <- paste0('/esarchive/exp/ecmwf/system4_m1/daily_mean/', - '$var$_f6h/$var$_$sdate$.nc') + '$var$_f6h/$var$_$sdate$.nc') obs_path <- paste0('/esarchive/recon/ecmwf/era5/daily_mean/', - '$var$_f1h-r1440x721cds/$var$_$sdate$.nc') + '$var$_f1h-r1440x721cds/$var$_$sdate$.nc') date_exp <- '20001001' lonmax <- 50 @@ -149,18 +149,18 @@ latmin <- 22 expTAS <- CST_Start(dataset = exp_path, var = 'tas', - member = indices(1:15), + member = startR::indices(1:15), sdate = '20001001', - ftime = indices(15), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(15), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_params = list(grid = 'r1440x721', method = 'bilinear'), transform_vars = c('lat', 'lon'), @@ -170,18 +170,18 @@ expTAS <- CST_Start(dataset = exp_path, expPSL <- CST_Start(dataset = exp_path, var = 'psl', - member = indices(1:15), + member = startR::indices(1:15), sdate = '20001001', - ftime = indices(15), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(15), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_params = list(grid = 'r1440x721', method = 'bilinear'), transform_vars = c('lat', 'lon'), @@ -192,11 +192,11 @@ expPSL <- CST_Start(dataset = exp_path, obsTAS <- CST_Start(dataset = obs_path, var = 'tas', sdate = unique(format(dates, '%Y%m')), - ftime = indices(1:31), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(1:31), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), @@ -207,11 +207,11 @@ obsTAS <- CST_Start(dataset = obs_path, obsPSL <- CST_Start(dataset = obs_path, var = 'psl', sdate = unique(format(dates, '%Y%m')), - ftime = indices(1:31), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(1:31), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), diff --git a/vignettes/Data_Considerations.Rmd b/vignettes/Data_Considerations.Rmd index a07f6aeb52126ba89b986e77ed31721d933f0530..91214985c1ffb2d5d1eee5342166b12369b1ff19 100644 --- a/vignettes/Data_Considerations.Rmd +++ b/vignettes/Data_Considerations.Rmd @@ -114,7 +114,7 @@ c(exp, obs) %<-% CST_Load(var = 'sfcWind', ``` ### 5. CST_Start example -``` +```r path_exp <- paste0('/esarchive/exp/meteofrance/system6c3s/monthly_mean/', '$var$_f6h/$var$_$sdate$.nc') @@ -126,13 +126,13 @@ latmax <- 79.5 latmin <- 0 exp <- CST_Start(dataset = path_exp, var = 'sfcWind', - ensemble = indices(1:9), + ensemble = startR::indices(1:9), sdate = sdates, - time = indices(1:3), - latitude = values(list(latmin, latmax)), - latitude_reorder = Sort(decreasing = TRUE), - longitude = values(list(lonmin, lonmax)), - longitude_reorder = CircularSort(0, 360), + time = startR::indices(1:3), + latitude = startR::values(list(latmin, latmax)), + latitude_reorder = startR::Sort(decreasing = TRUE), + longitude = startR::values(list(lonmin, lonmax)), + longitude_reorder = startR::CircularSort(0, 360), synonims = list(longitude = c('lon', 'longitude'), latitude = c('lat', 'latitude')), return_vars = list(latitude = NULL, @@ -145,14 +145,14 @@ dates <- as.POSIXct(sdates, format = '%Y%m%d', 'UTC') obs <- CST_Start(dataset = path_obs, var = 'sfcWind', sdate = unique(format(dates, '%Y%m')), - time = indices(2:4), - latitude = values(list(latmin, latmax)), - latitude_reorder = Sort(decreasing = TRUE), - longitude = values(list(lonmin, lonmax)), - longitude_reorder = CircularSort(0, 360), + time = startR::indices(2:4), + latitude = startR::values(list(latmin, latmax)), + latitude_reorder = startR::Sort(decreasing = TRUE), + longitude = startR::values(list(lonmin, lonmax)), + longitude_reorder = startR::CircularSort(0, 360), synonims = list(longitude = c('lon', 'longitude'), latitude = c('lat', 'latitude')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r360x181', method = 'conservative'), diff --git a/vignettes/MostLikelyTercile_vignette.Rmd b/vignettes/MostLikelyTercile_vignette.Rmd index ded05182ac9bbe7bd865a0232f034d2b1aa03c0e..66d9029bbe771c8a83abbcd3c0843e7d1d6c2030 100644 --- a/vignettes/MostLikelyTercile_vignette.Rmd +++ b/vignettes/MostLikelyTercile_vignette.Rmd @@ -82,18 +82,18 @@ repos_exp <- paste0('/esarchive/exp/ecmwf/system5c3s/monthly_mean/', '$var$_f6h/$var$_$sdate$.nc') exp <- CST_Start(dataset = repos_exp, var = clim_var, - member = indices(1:10), + member = startR::indices(1:10), sdate = dateseq, - ftime = indices(2:4), - lat = values(list(lat_min, lat_max)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lon_min, lon_max)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(2:4), + lat = startR::values(list(lat_min, lat_max)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lon_min, lon_max)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), @@ -118,14 +118,14 @@ obs <- CST_Start(dataset = repos_obs, var = clim_var, date = date_arr, split_multiselected_dims = TRUE, - lat = values(list(lat_min, lat_max)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lon_min, lon_max)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(lat_min, lat_max)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lon_min, lon_max)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), diff --git a/vignettes/MultiModelSkill_vignette.Rmd b/vignettes/MultiModelSkill_vignette.Rmd index dd35e256512dfcb3dc084953d4a476d1f81f132d..145c040258dfe281720b652c88d82ed7dc403950 100644 --- a/vignettes/MultiModelSkill_vignette.Rmd +++ b/vignettes/MultiModelSkill_vignette.Rmd @@ -73,14 +73,16 @@ exp <- CST_Start(dataset = list(list(name = 'glosea5c3s', path = repos1), list(name = 'ecmwf/system4_m1', path = repos2), list(name = 'meteofrance/system5_m1', path = repos3)), var = clim_var, - member = indices(1:4), sdate = dateseq, ftime = indices(2:4), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + member = startR::indices(1:4), + sdate = dateseq, + ftime = startR::indices(2:4), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), transform_vars = c('lat', 'lon'), @@ -92,19 +94,19 @@ repos_obs <- "/esarchive/recon/ecmwf/erainterim/monthly_mean/$var$/$var$_$date$. obs <- CST_Start(dataset = list(list(name = 'erainterim', path = repos_obs)), var = clim_var, date = unique(format(dates_exp, '%Y%m')), - ftime = values(dates_exp), + ftime = startR::values(dates_exp), ftime_across = 'date', ftime_var = 'ftime', merge_across_dims = TRUE, split_multiselected_dims = TRUE, - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), diff --git a/vignettes/MultivarRMSE_vignette.Rmd b/vignettes/MultivarRMSE_vignette.Rmd index 73f08fe33695c5cc67a9f5a4e11b0199df0a1501..a9f00799ecc2fc7467812e8c28e3faec46000b18 100644 --- a/vignettes/MultivarRMSE_vignette.Rmd +++ b/vignettes/MultivarRMSE_vignette.Rmd @@ -76,18 +76,18 @@ repos1 <- "/esarchive/exp/glosea5/glosea5c3s/monthly_mean/$var$_f6h/$var$_$sdate exp_T <- CST_Start(dataset = list(list(name = 'glosea5c3s', path = repos1)), var = temp, - member = indices(1:9), + member = startR::indices(1:9), sdate = dateseq, - ftime = indices(2:4), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(2:4), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), @@ -100,19 +100,19 @@ repos2 <- "/esarchive/recon/ecmwf/erainterim/monthly_mean/$var$/$var$_$date$.nc" obs_T <- CST_Start(dataset = list(list(name = 'erainterim', path = repos2)), var = temp, date = unique(format(dates_exp, '%Y%m')), - ftime = values(dates_exp), + ftime = startR::values(dates_exp), ftime_across = 'date', ftime_var = 'ftime', merge_across_dims = TRUE, split_multiselected_dims = TRUE, - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), @@ -126,18 +126,18 @@ repos3 <- "/esarchive/exp/glosea5/glosea5c3s/monthly_mean/$var$_f24h/$var$_$sdat exp_P <- CST_Start(dataset = list(list(name = 'glosea5c3s', path = repos3)), var = precip, - member = indices(1:9), + member = startR::indices(1:9), sdate = dateseq, - ftime = indices(2:4), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(2:4), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), @@ -148,20 +148,20 @@ exp_P <- CST_Start(dataset = list(list(name = 'glosea5c3s', path = repos3)), dates_exp <- exp_P$attrs$Dates obs_P <- CST_Start(dataset = list(list(name = 'erainterim', path = repos2)), var = precip, - date = unique(format(dates_exp, '%Y%m')), - ftime = values(dates_exp), + date = unique(format(dates_exp, '%Y%m')), + ftime = startR::values(dates_exp), ftime_across = 'date', ftime_var = 'ftime', merge_across_dims = TRUE, split_multiselected_dims = TRUE, - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')), - transform = CDORemapper, + transform = startR::CDORemapper, transform_extra_cells = 2, transform_params = list(grid = 'r256x128', method = 'bilinear'), diff --git a/vignettes/PlotForecastPDF.Rmd b/vignettes/PlotForecastPDF.Rmd index 34bcb223847d7b767427df28cb01c7f3c1f77e96..d754df16434462a6ad46069cf85e656124f155ff 100644 --- a/vignettes/PlotForecastPDF.Rmd +++ b/vignettes/PlotForecastPDF.Rmd @@ -18,7 +18,7 @@ Library *CSTools*, should be installed from CRAN and loaded: library(CSTools) ``` -### 1.- A simple example +### 1. A simple example The first step is to put your forecasts in an appropriate format. For this vignette we generate some random values from two normal distributions. The PlotForecastPDF by default will plot the ensemble members, the estimated density distributions and the tercile probabilities. @@ -37,7 +37,7 @@ fcst <- array(rnorm(mean = 25, sd = 2, n = 90), dim = c(member = 30, 3)) PlotForecastPDF(fcst, tercile.limits = c(23, 27)) ``` -### 2.- Customizing the appearance of your plots +### 2. Customizing the appearance of your plots Some parameters allow to customize your plot by changing the title, the forecast labels, the variable name and units, or the colors. ```{r,fig.show = 'hide',warning=F} @@ -50,7 +50,7 @@ PlotForecastPDF(fcst, tercile.limits = c(20, 26), var.name = "Temperature (ÂșC)" ``` ![Example 2](./Figures/PlotForecastPDF_ex2.png) -### 3.- Adding extremes and observed values +### 3. Adding extremes and observed values Optionally, we can include the probability of extreme values or the actually observed values. The tercile limits, extreme limits and observation values can be specified for each panel separately. ```{r,fig.show = 'hide',warning=F} @@ -65,7 +65,7 @@ PlotForecastPDF(fcst, tercile.limits = rbind(c(20, 26), c(22, 28), c(15, 22)), ![Example 3](./Figures/PlotForecastPDF_ex3.png) -### 4.- Saving your plot to a file +### 4. Saving your plot to a file PlotForecastPDF uses ggplot2, so you can save the output of the function to a variable and operate with it as a ggplot2 object. For instance, you can save it to a file: ``` @@ -75,7 +75,7 @@ plot <- PlotForecastPDF(fcst, tercile.limits = c(23, 27)) ggsave("outfile.pdf", plot, width = 7, height = 5) ``` -### 5.- A reproducible example using lonlat_temp_st +### 5. A reproducible example using lonlat_temp_st This final example uses the sample lonlat data from CSTools. It is suitable for checking reproducibility of results. ```{r,fig.show = 'hide',warning=F} diff --git a/vignettes/WeatherRegimes_vignette.Rmd b/vignettes/WeatherRegimes_vignette.Rmd index 6e3655db59ea2d3e77fa04b9462733265dd15b07..599b08f6e184ca589dbdda43b09712b8eb4986c7 100644 --- a/vignettes/WeatherRegimes_vignette.Rmd +++ b/vignettes/WeatherRegimes_vignette.Rmd @@ -50,11 +50,11 @@ exp <- CST_Start(dataset = repos_exp, var = 'psl', member = "all", sdate = sdates, - ftime = indices(1:31), - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + ftime = startR::indices(1:31), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), member = c('member', 'ensemble'), @@ -69,15 +69,15 @@ repos_obs <-"/esarchive/recon/ecmwf/erainterim/daily_mean/$var$_f6h/$var$_$date$ obs <- CST_Start(dataset = repos_obs, var = 'psl', date = unique(format(dates0, '%Y%m')), - ftime = values(dates0), + ftime = startR::values(dates0), ftime_across = 'date', ftime_var = 'ftime', merge_across_dims = TRUE, split_multiselected_dims = TRUE, - lat = values(list(latmin, latmax)), - lat_reorder = Sort(decreasing = TRUE), - lon = values(list(lonmin, lonmax)), - lon_reorder = CircularSort(0, 360), + lat = startR::values(list(latmin, latmax)), + lat_reorder = startR::Sort(decreasing = TRUE), + lon = startR::values(list(lonmin, lonmax)), + lon_reorder = startR::CircularSort(0, 360), synonims = list(lon = c('lon', 'longitude'), lat = c('lat', 'latitude'), ftime = c('ftime', 'time')),