## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(collapse = TRUE, comment = "#>", fig.width = 7,
                      fig.height = 4.5, dpi = 120)

## ----setup--------------------------------------------------------------------
library(trialSizing)

## ----data, message = FALSE----------------------------------------------------
grid_mat <- function(t)
  as.matrix(uniformity_trial[uniformity_trial$trial == t,
                             grep("^col", names(uniformity_trial))])

tab1 <- calc_cv_shapes(grid_mat("T1"))
X   <- tab1$x
CV1 <- tab1$cv
CV2 <- calc_cv_shapes(grid_mat("T2"))$cv
CV3 <- calc_cv_shapes(grid_mat("T3"))$cv

## ----fit----------------------------------------------------------------------
fit <- fit_qrp(x = X, cv = CV1, step = 0.01)
fit

## ----summary------------------------------------------------------------------
summary(fit)

## ----check--------------------------------------------------------------------
cf <- fit$coefficients
c(vertex = unname(-cf["b"] / (2 * cf["c"])),
  reported = unname(fit$parameters["Breakpoint"]))

## ----predict------------------------------------------------------------------
predict(fit, newx = c(1, 5, 11, 15))

## ----plot---------------------------------------------------------------------
plot(fit, title = "Trial 1")

## ----plot-ptbr----------------------------------------------------------------
plot(fit, title = "Ensaio 1", decimal_mark = ",", cond_word = "se")

## ----save, eval = FALSE-------------------------------------------------------
# plot(fit, title = "Trial 1",
#      save = TRUE, file = "trial1_qrp.pdf", format = "pdf",
#      width = 18, height = 12, units = "cm")

## ----multi--------------------------------------------------------------------
trials <- rbind(
  data.frame(x = X, cv = CV1, trial = "Trial 1"),
  data.frame(x = X, cv = CV2, trial = "Trial 2"),
  data.frame(x = X, cv = CV3, trial = "Trial 3")
)

res <- fit_qrp(trials, x = "x", cv = "cv", trial = "trial", step = 0.01)
res

## ----multi-access-------------------------------------------------------------
res$fits[["Trial 3"]]

## ----multi-plot, eval = FALSE-------------------------------------------------
# plot(res, label_size = 3)

## ----tuning-------------------------------------------------------------------
fit_qrp(X, CV1, search_range = c(6, 15), step = 0.01)$parameters["Breakpoint"]
fit_qrp(X, CV1, step = 0.01)$parameters["Breakpoint"]

## ----compare------------------------------------------------------------------
data.frame(
  method = c("MCM", "LRP", "QRP"),
  Xo = c(fit_mcm(X, CV1)$parameters["Breakpoint"],
         fit_lrp(X, CV1, step = 0.01)$parameters["Breakpoint"],
         fit_qrp(X, CV1, step = 0.01)$parameters["Breakpoint"]),
  row.names = NULL
)

