## ----include = FALSE----------------------------------------------------------
# nolint start: indentation-linter
knitr::opts_chunk$set(
  collapse = TRUE,
  comment = "#>",
  fig.width = 7,
  fig.height = 5
  )
options(rmarkdown.html_vignette.check_title = FALSE)

## ----setup--------------------------------------------------------------------
library(daisytools)

## -----------------------------------------------------------------------------
data_dir <- system.file("extdata", package="daisytools")
path <- file.path(data_dir, "hourly/P2D-Daily-Soil_Chemical_110cm.dlf")
dlf <- read_dlf(path)
## We don't need timestamps for the mass balance calculation, but we need it for
## plotting later.
dlf <- daisy_time_to_timestamp(dlf)
names(dlf@data)
nrow(dlf@data)

## -----------------------------------------------------------------------------
input <- c("In_Matrix", "In_Biopores", "External", "Transform", "Tillage")
output <- c("Decompose", "Leak_Matrix", "Leak_Biopores", "Drain_Soil",
            "Drain_Biopores", "Uptake")
content <- c("Content", "Biopores")

## -----------------------------------------------------------------------------
mbs <- mass_balance_summary(dlf, input, output, content)
mbs$Inputs
mbs$Outputs
mbs$InitialContent
mbs$FinalContent
mbs$Balance

## -----------------------------------------------------------------------------
mb_ref <- mass_balance(dlf, input, output, content)
mb_total <- mass_balance(dlf, input, output, content, FALSE)

## -----------------------------------------------------------------------------
names(mb_ref@data)
nrow(mb_ref@data)

## -----------------------------------------------------------------------------
plot_mass_balance(mb_ref, "time", " - Initial content as reference")
plot_mass_balance(mb_total, "time", " - Total content")

## ----include = FALSE----------------------------------------------------------
# nolint end

