knitr::include_graphics(system.file("app/www/MW_LR_Landscape_lge_blk.png", package = "mosqmod"))

MossieModel Results Report

Chris Niebuhr{target="_blank"}*, Simon Howard{target="_blank"}*

* Manaaki Whenua --- Landcare Research

Report generated using landcare.shinyapps.io/MossieModel{target="_blank"} on r format(Sys.Date(), '%e %B, %Y')

knitr::opts_chunk$set(echo = TRUE)
options(knitr.kable.NA = '')
# result object specified in params argument to rmarkdown::render()
res <- params$res

# if params argument to rmarkdown::render() is null run model example and use
# resulting res object
if(is.null(params$res)) example("runModel", package = "mosqmod")

Model parameters

# general info

ClimateStation <- unique(res$Station[!is.na(res$Station)])
MossieModel_version <- as.character(packageVersion(pkg = "mosqmod"))
TimeStamp <- Sys.time()
SiteName <- c("Dunedin, Musselburgh Ews" = "Dunedin", "Nugget Point Aws" = "Catlins")[ClimateStation]

general_info <- 
  data.frame(Type = "General", 
           Description = c("Site name", 
                           "Climate station",
                           "Mosquito species",
                           "Model version",
                           "Model timestamp"),
           Value = c(SiteName, 
                     ClimateStation,
                     "*Culex pervigilans*",
                     MossieModel_version,
                     format(TimeStamp, "%Y-%m-%d %H:%M %Z")))
general_info$Type[-1] <- NA

# format model parameters
model_params <- attr(res, "params")
model_params <- data.frame(model_params)

## store parameter descriptions
param_descript <- 
  c(b = "Number of female eggs per clutch", 
    alpha = "Daily adult mortality rate", 
    beta = "Daily larval mortality rate", 
    K_L = "Larval carrying capacity (numbers/km^2)", 
    M_max = "Maximum adult density (numbers/km^2)", 
    MTD = "Minimum development temperature", 
    L_1 = "Starting density of first instar larvae", 
    L_2 = "Starting density of second instar larvae",
    L_3 = "Starting density of third instar larvae",
    L_4 = "Starting density of fourth instar larvae",
    L_5 = "Starting density of fifth instar larvae",
    M = "Starting density of adults",
    Mfloor = "Mfloor")

## assign descriptions and format parameter table
model_params$Description <- param_descript[row.names(model_params)]
model_params$Value <- format(model_params$model_params, digits = 1, nsmall = 3, 
                             scientific = FALSE, drop0trailing = TRUE)
model_params$Type <- "Model parameters"

# separate tables into front page and appendix
model_params_front <- model_params[6,]
model_params_appendix <- model_params[-6,]
model_params_front$Type[-1] <- model_params_appendix$Type[-1] <- NA

# temperature series

temp_seq <- attr(res, "temp_seq")

## modelled date ranges
daterange.run <- attr(res, "run.daterange")
daterange.run.fmt <- paste(daterange.run, collapse = " to ")

## burnin info
daterange.burnin <- attr(res, "burnin.range")
daterange.burnin.fmt <- paste(daterange.burnin, collapse = " to ")

burnin.reps <- attr(res, "burnin.reps")
burnin.reps.fmt <- paste(burnin.reps, "times")

## time series info
daterange.stored <- range(temp_seq$Date[temp_seq$source %in% "stored"])
daterange.stored <- c(min(c(daterange.burnin, daterange.run)),
                      max(daterange.stored))
daterange.stored.fmt <- paste(daterange.stored, collapse = " to ")

date.stored.retreived <- format(attr(mosqmod::saved_station_temps, "access.date"), "%Y-%m-%d")

daterange.projected <- range(temp_seq$Date[temp_seq$source %in% "projected"])
daterange.projected.fmt <- paste(daterange.projected, collapse = " to ")

## format temperature series table
temp_series <- 
  data.frame(Description = c("Modelled date range", 
                             "Model burn-in date range",
                             "Burn-in time series repeated",
                             "Stored temperature dates",
                             "Projected temperature dates",
                             "Stored temperature records retreived"), 
             Value = c(daterange.run.fmt, daterange.burnin.fmt, burnin.reps.fmt,
                       daterange.stored.fmt, daterange.projected.fmt, date.stored.retreived))
temp_series$Type <- "Temperature time series"
# separate tables into front page and appendix
temp_series_front <- temp_series[c(1,5),]
temp_series_appendix <- temp_series[-c(1,5),]
temp_series_front$Type[-1] <- temp_series_appendix$Type[-1] <- NA

# knit front page table
knitr::kable(rbind(general_info, model_params_front[c("Type", "Description", "Value")], temp_series_front), row.names = FALSE, align = c("l", "l", "r"))
gg_series <- mosqmod::plot_popn(res, selectPopn = c("M")) + ggplot2::theme(text = ggplot2::element_text(size = 10)) #, line = ggplot2::element_line(size = 5))
gg_overlay <- mosqmod::plot_popn_years(res, selectPopn = c("M")) + ggplot2::theme(text = ggplot2::element_text(size = 10))

cowplot::plot_grid(gg_series, gg_overlay)

\newpage

Additional parameters

# knit appendix table
knitr::kable(rbind(model_params_appendix[c("Type", "Description", "Value")], temp_series_appendix), row.names = FALSE, align = c("l", "l", "r"))


sihoward/mossiemodel-dev documentation built on June 1, 2025, 6:12 p.m.