## ----echo = FALSE-------------------------------------------------------------
knitr::opts_chunk$set(eval = FALSE)

## -----------------------------------------------------------------------------
# install.packages('CSTools')
# library(CSTools)

## -----------------------------------------------------------------------------
# exp <- lonlat_prec_st

## -----------------------------------------------------------------------------
# dim(exp$data)
# #   dataset   var   member   sdate   ftime     lat    lon
# #      1       1       6       3       31       4      4

## -----------------------------------------------------------------------------
# ilon <- which(exp$coords$lon %in% 5:12)
# ilat <- which(exp$coords$lat %in% 40:47)
# exp$data <- exp$data[, , , , , ilat, ilon, drop = FALSE]
# names(dim(exp$data)) <- names(dim(lonlat_prec_st$data))
# exp$coords$lon <- exp$coords$lon[ilon]
# exp$coords$lat <- exp$coords$lat[ilat]

## -----------------------------------------------------------------------------
# downscaled <- RainFARM(exp$data, exp$coords$lon, exp$coords$lat,
#                        nf = 20, kmin = 1, nens = 3,
#                        time_dim = c("member", "ftime"))

## -----------------------------------------------------------------------------
# a <- exp$data[1, 1, 1, 1, 17, , ] * 86400 * 1000
# a[a > 60] <- 60
# image(exp$coords$lon, rev(exp$coords$lat), t(apply(a, 2, rev)), xlab = "lon", ylab = "lat",
#       col = rev(terrain.colors(20)), zlim = c(0,60))
# map("world", add = TRUE)
# title(main = "pr 17/03/2010 original")
# a <- exp_down$data[1, 1, 1, 1, 1, 17, , ] * 86400 * 1000
# a[a > 60] <- 60
# image(exp_down$coords$lon, rev(exp_down$coords$lat), t(apply(a, 2, rev)), xlab = "lon", ylab = "lat",
#       col = rev(terrain.colors(20)), zlim = c(0, 60))
# map("world", add = TRUE)
# title(main = "pr 17/03/2010 downscaled")

## -----------------------------------------------------------------------------
# ww <- CST_RFWeights("./worldclim.nc", nf = 20, lon = exp$coords$lon, lat = exp$coords$lat)

## -----------------------------------------------------------------------------
# exp_down_weights <- CST_RainFARM(exp, nf = 20, kmin = 1, nens = 3,
#                                  weights = ww, time_dim = c("member", "ftime"))

## -----------------------------------------------------------------------------
# exp_down1 <- exp_down$data[, , , , , , , 1]
# exp_down_weights1 <- exp_down_weights$data[, , , , , , , 1]
# dim(exp_down1) <- c(member = 6 * 3 * 31, lat = 80, lon = 80)
# dim(exp_down_weights1) <- c(member = 6 * 3 * 31, lat = 80, lon = 80)
# ad <- apply(exp_down1, c(2, 3), mean)
# adw <- apply(exp_down_weights1, c(2, 3), mean);
# 
# png("Figures/RainFARM_fig2.png", width = 640, height = 243)
# par(mfrow = c(1,3))
# a <- exp_down_weights$data[1, 1, 1, 1, 17, , ,1] * 86400 * 1000
# a[a > 60] <- 60
# image(exp_down$coords$lon, rev(exp_down$coords$lat), t(apply(a, 2, rev)), xlab = "lon",
#       ylab = "lat", col = rev(terrain.colors(20)), zlim = c(0, 60))
# map("world", add = TRUE)
# title(main = "pr 17/03/2010 with weights")
# a <- ad * 86400 * 1000
# a[a > 5] <- 5
# image(exp_down$coords$lon, rev(exp_down$coords$lat), t(apply(a, 2, rev)), xlab = "lon",
#       ylab = "lat", col = rev(terrain.colors(20)), zlim = c(0, 5))
# map("world", add = TRUE)
# title(main = "climatology no weights")
# a <- adw * 86400 * 1000
# a[a > 5] <- 5
# image(exp_down$coords$lon, rev(exp_down$coords$lat), t(apply(a, 2, rev)), xlab = "lon",
#       ylab = "lat", col = rev(terrain.colors(20)), zlim = c(0, 5))
# map("world", add = TRUE)
# title(main = "climatology with weights")
# dev.off()

## -----------------------------------------------------------------------------
# slopes <- CST_RFSlope(exp, time_dim = c("member", "ftime"))
# dim(slopes)
# #    dataset   var   sdate
# #       1       1      3
# # slopes
# # , , 1
# 
# #         [,1]
# # [1,] 1.09957
# 
# # , , 2
# 
# #          [,1]
# # [1,] 1.768861
# 
# # , , 3
# 
# #          [,1]
# # [1,] 1.190176

