R/init_mylake.R

Defines functions init_mylake

init_mylake <- function(model = 'MyLake', wtemp_file, date, folder = '.'){
  
  require(tidyverse)
  
  setwd(folder)
  obs <- read.csv(wtemp_file)
  
  dat = which(obs[,1] == date)
  ndeps = length(dat)
  deps = obs[dat,2]
  tmp = obs[dat,3]
  deps <- signif(deps,4)
  tmp <- signif(tmp,4)
  
  if("MyLake" %in% model){
    
    if(!dir.exists('MyLake')){
      dir.create('MyLake')
    }
    
    load("./MyLake/mylake_config_final.Rdata")
    
    mylake_init <- list()
    
    deps_Az <- data.frame("Depth_meter"=mylake_config[["In.Z"]],
                          "Az"=mylake_config[["In.Az"]])
    
    temp_interp <-  deps_Az %>%
      full_join(data.frame("Depth_meter"=deps,
                           "Water_Temperature_celsius"=tmp)) %>%
      arrange(Depth_meter) %>%
      filter(!is.na(Az)) %>%
      mutate(TempInterp=approx(x=Depth_meter,
                               y=Water_Temperature_celsius,
                               xout=Depth_meter,
                               yleft=first(na.omit(Water_Temperature_celsius)),
                               yright=last(na.omit(Water_Temperature_celsius)))$y)
    
    mylake_init[["In.Tz"]]=as.matrix(temp_interp$TempInterp)
    
    mylake_init[["In.Z"]]=as.matrix(temp_interp$Depth_meter)
    
    save(mylake_init,file=file.path(folder,"MyLake","mylake_init.Rdata"))
    
  }
}
rmpilla/MyLakeR documentation built on Jan. 29, 2020, 12:06 a.m.