diff --git a/.Rbuildignore b/.Rbuildignore index 9eeb564..693c8b0 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -4,4 +4,6 @@ cache/ README.Rmd README.md README_files/ -^\\.github$ \ No newline at end of file +^\.github$ +docs/ +example_extracts/ \ No newline at end of file diff --git a/.gitignore b/.gitignore index 61fb704..437421c 100644 --- a/.gitignore +++ b/.gitignore @@ -2,4 +2,8 @@ .Rhistory .RData .Ruserdata -cache/ \ No newline at end of file +cache/ +bmd.Rproj +inst/doc +inst/dev +example_extracts/ \ No newline at end of file diff --git a/DESCRIPTION b/DESCRIPTION index 504c091..7d80581 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -25,7 +25,9 @@ Suggests: tidyr, numDeriv, drcData, - testthat (>= 3.0.0) + testthat (>= 3.0.0), + knitr, + rmarkdown Remotes: doseresponse/drc, doseresponse/drcData @@ -33,6 +35,8 @@ License: file LICENSE Encoding: UTF-8 LazyData: true Config/testthat/edition: 3 +Roxygen: list(markdown = TRUE) RoxygenNote: 7.3.2 Depends: R (>= 3.5) +VignetteBuilder: knitr diff --git a/NAMESPACE b/NAMESPACE index 6ccfdc1..9f45c0a 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -1,29 +1,78 @@ -import(drc, ggplot2, dplyr) -importFrom("graphics", "lines") -importFrom("stats", "aggregate", "approx", "as.formula", "coef", - "complete.cases", "confint", "constrOptim", "df.residual", - "dnorm", "fitted", "lm", "model.frame", "model.matrix", - "optim", "pnorm", "predict", "qchisq", "qnorm", "qt", - "quantile", "rbinom", "resid", "residuals", "rnorm", "sd", - "uniroot", "update", "var", "vcov", "AIC", "BIC", "logLik") -importFrom("utils", "setTxtProgressBar", "txtProgressBar") -export(bmd, bmdBoot, bmdIso, bmdIsoBoot, PAV, bmdMA, bootDataGen, bmdMACurve, BCa, invBmd, expandBinomial, - getStackingWeights, drmOrdinal, bmdOrdinal, bmdOrdinalMA, - qplotDrc, qplotBmd, MACurve, monotonicityTest, trendTest, bmdHetVar, drmHetVar, drmMMRE, bmdHetVarMA) +# Generated by roxygen2: do not edit by hand -## S3 methods -S3method(logLik, drcOrdinal) -S3method(logLik, drcHetVar) -S3method(AIC, drcOrdinal) -S3method(AIC, drcHetVar) -S3method(BIC, drcOrdinal) -S3method(BIC, drcHetVar) -S3method(plot, drcOrdinal) -S3method(print, drcOrdinal) -S3method(print, bmdOrdinal) -S3method(print, drcHetVar) -S3method(plot, bmd) -S3method(plot, drcHetVar) -S3method(vcov, drcMMRE) -S3method(print, drcMMRE) -S3method(coef, drcHetVar) \ No newline at end of file +S3method(AIC,drcHetVar) +S3method(AIC,drcOrdinal) +S3method(BIC,drcHetVar) +S3method(BIC,drcOrdinal) +S3method(coef,drcHetVar) +S3method(logLik,drcHetVar) +S3method(logLik,drcOrdinal) +S3method(plot,bmd) +S3method(plot,drcHetVar) +S3method(plot,drcOrdinal) +S3method(print,bmd) +S3method(print,bmdHetVar) +S3method(print,bmdOrdinal) +S3method(print,drcHetVar) +S3method(print,drcMMRE) +S3method(print,drcOrdinal) +S3method(vcov,drcMMRE) +export(BCa) +export(MACurve) +export(PAV) +export(bmd) +export(bmdBoot) +export(bmdHetVar) +export(bmdHetVarMA) +export(bmdIso) +export(bmdIsoBoot) +export(bmdMA) +export(bmdMACurve) +export(bmdOrdinal) +export(bmdOrdinalMA) +export(drmHetVar) +export(drmMMRE) +export(drmOrdinal) +export(getStackingWeights) +export(monotonicityTest) +export(qplotBmd) +export(qplotDrc) +export(trendTest) +import(dplyr) +import(drc) +import(ggplot2) +importFrom(graphics,lines) +importFrom(stats,AIC) +importFrom(stats,BIC) +importFrom(stats,aggregate) +importFrom(stats,approx) +importFrom(stats,as.formula) +importFrom(stats,coef) +importFrom(stats,complete.cases) +importFrom(stats,confint) +importFrom(stats,constrOptim) +importFrom(stats,df.residual) +importFrom(stats,dnorm) +importFrom(stats,fitted) +importFrom(stats,lm) +importFrom(stats,logLik) +importFrom(stats,model.frame) +importFrom(stats,model.matrix) +importFrom(stats,optim) +importFrom(stats,pnorm) +importFrom(stats,predict) +importFrom(stats,qchisq) +importFrom(stats,qnorm) +importFrom(stats,qt) +importFrom(stats,quantile) +importFrom(stats,rbinom) +importFrom(stats,resid) +importFrom(stats,residuals) +importFrom(stats,rnorm) +importFrom(stats,sd) +importFrom(stats,uniroot) +importFrom(stats,update) +importFrom(stats,var) +importFrom(stats,vcov) +importFrom(utils,setTxtProgressBar) +importFrom(utils,txtProgressBar) diff --git a/R/AIC.drcOrdinal.R b/R/AIC.drcOrdinal.R index 987bab8..7cc332f 100644 --- a/R/AIC.drcOrdinal.R +++ b/R/AIC.drcOrdinal.R @@ -1,3 +1,14 @@ + +#' AIC Method for drcOrdinal Objects +#' +#' Calculates the Akaike Information Criterion for drcOrdinal model objects. +#' +#' @param object A drcOrdinal model object +#' @param ... Additional arguments (not used) +#' @param k The penalty per parameter to be used; default is 2 +#' +#' @return The AIC value +#' @export AIC.drcOrdinal <- function(object, ..., k = 2) { dots <- list(...) if (!is.null(dots$epsilon)){ @@ -8,4 +19,4 @@ AIC.drcOrdinal <- function(object, ..., k = 2) { n.parameters <- sum(sapply(object$drmList, function(mod) length(mod$coefficients))) -2 * logLik(object, epsilon = epsilon) + k * n.parameters -} \ No newline at end of file +} diff --git a/R/BCa.R b/R/BCa.R index 2947263..54b47a3 100644 --- a/R/BCa.R +++ b/R/BCa.R @@ -1,25 +1,82 @@ +#' Calculate BCa (Bias-Corrected and Accelerated) Bootstrap Confidence Interval +#' +#' @description +#' This function calculates the BCa confidence interval for a given statistic using bootstrap and jackknife estimates. +#' +#' @details +#' It computes the BCa confidence interval for a statistic using bootstrap and jackknife estimates. +#' The BCa method adjusts for both bias and skewness in the bootstrap distribution and generally +#' provides better coverage than standard bootstrap confidence intervals. +#' +#' @param obs numeric; The observed value of the statistic computed from the original sample +#' @param data data.frame or matrix; The original dataset from which bootstrap samples are drawn +#' @param bootSample numeric vector; Bootstrap replicates of the statistic. Must be of length R +#' where R is the number of bootstrap replicates +#' @param bootjack numeric vector; Jackknife replicates of the statistic. Must be of length n +#' where n is the number of observations in data +#' @param level numeric; Confidence level between 0 and 1 (e.g., 0.95 for 95% confidence interval) +#' +#' @return A numeric vector of length 2 containing: +#' \itemize{ +#' \item lower: The lower confidence limit +#' \item upper: The upper confidence limit +#' } +#' +#' +#' @examples \dontrun{ +#' # Example with mean as the statistic +#' data <- rnorm(100) +#' obs_mean <- mean(data) +#' +#' # Generate bootstrap samples +#' R <- 1000 +#' boot_means <- replicate(R, mean(sample(data, replace = TRUE))) +#' +#' # Generate jackknife samples +#' jack_means <- sapply(1:length(data), +#' function(i) mean(data[-i])) +#' +#' # Calculate 95% CI +#' BCa(obs_mean, data, boot_means, jack_means, 0.95) +#' } +#' +#' @references +#' Efron, B. (1987). Better Bootstrap Confidence Intervals. +#' _Journal of the American Statistical Association_, 82(397), 171-185. +#' +#' DiCiccio, T. J., & Efron, B. (1996). Bootstrap confidence intervals. +#' _Statistical Science_, 11(3), 189-212. +#' +#' @export BCa <- function(obs, data, bootSample, bootjack, level){ -R <- length(bootSample) -b <- qnorm((sum(bootSample > obs)+sum(bootSample==obs)/2)/R) + R <- length(bootSample) + b <- qnorm((sum(bootSample > obs)+sum(bootSample==obs)/2)/R) -n <- nrow(data) -n1 <- n-1 -obsn <- obs*n -pv <- i <- 0 -while(i < n){ - i = i+1 -pv[i] = obsn-n1*bootjack[i] + n <- nrow(data) + n1 <- n-1 + obsn <- obs*n + pv <- i <- 0 + while(i < n){ + i = i+1 + pv[i] = obsn-n1*bootjack[i] + } + pv<-pv[!is.na(pv)] + + je <- mean(pv)-pv + a <- sum(je^3)/(6*sum(je^2))^(3/2) + + alpha <- (1-level)*2 + z <- qnorm(c(alpha/2,1-alpha/2)) # Std. norm. limits + p <- pnorm((z-b)/(1-a*(z-b))-b) # correct & convert to proportions + + quantile(bootSample,p=p) # ABC percentile lims. } -pv<-pv[!is.na(pv)] -je <- mean(pv)-pv -a <- sum(je^3)/(6*sum(je^2))^(3/2) -alpha <- (1-level)*2 -z <- qnorm(c(alpha/2,1-alpha/2)) # Std. norm. limits -p <- pnorm((z-b)/(1-a*(z-b))-b) # correct & convert to proportions -quantile(bootSample,p=p) # ABC percentile lims. -} + + + + diff --git a/R/BIC.drcOrdinal.R b/R/BIC.drcOrdinal.R index 3457d0e..91a18fc 100644 --- a/R/BIC.drcOrdinal.R +++ b/R/BIC.drcOrdinal.R @@ -1,3 +1,88 @@ +#' BIC Method for drcOrdinal Objects +#' +#' @description +#' S3 method to calculate the Bayesian Information Criterion (BIC) for fitted +#' ordinal dose-response models. This method extends the generic `BIC()` function +#' to handle `drcOrdinal` objects which contain multiple fitted dose-response models +#' for different response categories. +#' +#' @param object An object of class "drcOrdinal" containing fitted ordinal +#' dose-response models +#' @param ... Additional arguments passed to the method. Currently supports: +#' \itemize{ +#' \item \code{epsilon}: Small positive value to avoid log(0) in likelihood +#' calculations (default: 1e-16) +#' } +#' +#' @details +#' The BIC is calculated using the standard formula: +#' \deqn{BIC = k \log(n) - 2 \log(L)}{BIC = k * log(n) - 2 * log(L)} +#' where: +#' \itemize{ +#' \item \eqn{k}{k} is the total number of parameters across all models in the ordinal fit +#' \item \eqn{n}{n} is the total number of observations (sum of weights) +#' \item \eqn{L}{L} is the likelihood of the fitted model +#' } +#' +#' For ordinal dose-response models, the total number of parameters is the sum +#' of parameters from all individual models in the `drmList` component, and the +#' sample size is calculated as the sum of weights in the data. +#' +#' The `epsilon` parameter is used in the `logLik()` calculation to prevent +#' numerical issues when probabilities approach zero. +#' +#' @return A numeric value representing the BIC of the fitted ordinal dose-response model. +#' Lower values indicate better model fit when comparing models. +#' +#' @section Model Comparison: +#' BIC penalizes model complexity more heavily than AIC, making it useful for: +#' \itemize{ +#' \item Comparing ordinal dose-response models with different numbers of parameters +#' \item Model selection in situations where simpler models are preferred +#' \item Avoiding overfitting in dose-response modeling +#' } +#' +#' @note +#' This method assumes that the `drcOrdinal` object contains: +#' \itemize{ +#' \item A `drmList` component with fitted dose-response models +#' \item A `data` component with the original data including weights +#' \item A `weights` component specifying the column name for observation weights +#' } +#' +#' @seealso +#' \code{\link{BIC}} for the generic BIC function, +#' \code{\link{AIC.drcOrdinal}} for the corresponding AIC method, +#' \code{\link{logLik.drcOrdinal}} for the log-likelihood method +#' +#' @examples +#' \dontrun{ +#' # Assuming you have a fitted drcOrdinal object +#' ordinal_model <- drm(response ~ dose, +#' weights = count, +#' data = ordinal_data, +#' fct = cumulative.logit()) +#' +#' # Calculate BIC +#' bic_value <- BIC(ordinal_model) +#' +#' # Compare models +#' model1_bic <- BIC(ordinal_model1) +#' model2_bic <- BIC(ordinal_model2) +#' +#' # Lower BIC indicates better model +#' if(model1_bic < model2_bic) { +#' cat("Model 1 is preferred\n") +#' } else { +#' cat("Model 2 is preferred\n") +#' } +#' +#' # Use custom epsilon for numerical stability +#' bic_custom <- BIC(ordinal_model, epsilon = 1e-12) +#' } +#' +#' @method BIC drcOrdinal +#' @export BIC.drcOrdinal <- function(object, ...){ dots <- list(...) if (!is.null(dots$epsilon)){ diff --git a/R/MACurve.R b/R/MACurve.R index 46d219d..f71b383 100644 --- a/R/MACurve.R +++ b/R/MACurve.R @@ -1,3 +1,63 @@ +#' Model-average dose-response curves +#' +#' Computing weighted average response estimates across multiple dose-response +#' curves. +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' Details on the implemented definitions and methods can be found in Crump +#' (2002) +#' +#' @param x a vector of dose values for which the weighted average of response +#' estimates are to be computed +#' @param modelList list of models of class \code{drc} +#' @param modelWeights character string specifying the type of weights used, +#' "AIC", "BIC" or "Stack", or a vector of the same length as the modelList +#' with user defined weights +#' @param stackingSeed integer or NULL: Random seed to use in the data split in +#' the estimation of the Stacking Weights, when \code{modelWeights = "Stack"}. +#' The global seed is reset to the initial value after estimation of the +#' weights, so this option does not interfere with a globally set seed. +#' @param stackingSplits integer or "LOO": When \code{modelWeights = "Stack"}, +#' the Stacking Weights are estimated, which are based on V-fold +#' cross-validation. The stackingSplits argument sets the number V of data +#' splits used in the cross validation. The "LOO" (Leave one out) is a shortcut +#' to setting V equal to the number of observations in the data set. +#' @return numeric +#' @author Jens Riis Baalkilde +#' @keywords models nonlinear model averaging +#' @examples +#' +#' library(bmd) +#' library(drc) +#' library(drcData) +#' library(ggplot2) +#' +#' # fit models to aconiazide data +#' aconiazide.LL.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LL.3()) +#' aconiazide.LN.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LN.3()) +#' aconiazide.W1.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W1.3()) +#' aconiazide.W2.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W2.3()) +#' +#' # plot the MA curve +#' plot(aconiazide.LL.3, type = "obs") +#' curve( +#' MACurve(x, modelList = list(aconiazide.LL.3, aconiazide.LN.3,aconiazide.W1.3, aconiazide.W2.3), +#' modelWeights = "AIC"), +#' add = TRUE) +#' +#' # or plot using ggplot2 +#' qplotDrc(aconiazide.LL.3, type = "obs") + +#' geom_function(fun = function(x){ +#' MACurve(x, modelList = list(aconiazide.LL.3, aconiazide.LN.3, +#' aconiazide.W1.3, aconiazide.W2.3), +#' modelWeights = "AIC") +#' }) +#' +#' @export MACurve <- function(x, modelList, modelWeights, stackingSeed = 1, stackingSplits = 2){ diff --git a/R/PAV.R b/R/PAV.R index ced17b6..0020dbf 100644 --- a/R/PAV.R +++ b/R/PAV.R @@ -1,3 +1,26 @@ +#' Pool-adjacent-violators monotonizing +#' +#' The function monotonizes a sequence of probabilities or means based on the +#' pool-adjacent-violators algorithm. +#' +#' For details on how the pool-adjacent-violators algorithm is defined see +#' Silvapulle and Sen (2004). +#' +#' Formula should be specified as in the form number/total ~ dose for binomial +#' data and response ~ for continuous data. +#' +#' @param formula an object of class "formula" expressing dose-response +#' relationship. Details of model specification are given under 'Details' +#' @param data data frame containing the variables in the formula +#' @param type character string specifying the type of data used in the model, +#' "continuous" or "binomial" or "Poisson" +#' @return A vector containing the monotonized sequence. +#' @author Signe M. Jensen +#' @references Silvapulle, M. J. and Sen, P. K. (2004). Constrained statistical +#' inference: order, inequality, and shape constraints. New York: John Wiley & +#' Sons. +#' @keywords nonparametric isotonic regression +#' @export PAV<-function(formula,data,type){ object <- formula if( identical(type,"binomial")){ diff --git a/R/bmd-package.R b/R/bmd-package.R new file mode 100644 index 0000000..dc939fc --- /dev/null +++ b/R/bmd-package.R @@ -0,0 +1,19 @@ +#' BMD: Benchmark Dose Modeling +#' +#' A package for benchmark dose modeling in toxicology and risk assessment +#' +#' @import drc +#' @import ggplot2 +#' @import dplyr +#' @importFrom graphics lines +#' @importFrom stats aggregate approx as.formula coef complete.cases +#' @importFrom stats confint constrOptim df.residual dnorm fitted +#' @importFrom stats lm model.frame model.matrix optim pnorm predict +#' @importFrom stats qchisq qnorm qt quantile rbinom resid residuals +#' @importFrom stats rnorm sd uniroot update var vcov AIC BIC logLik +#' @importFrom utils setTxtProgressBar txtProgressBar +#' +#' @name bmd-package +#' @aliases bmd-package +"_PACKAGE" + diff --git a/R/bmd.R b/R/bmd.R index 3ce060b..24805f1 100644 --- a/R/bmd.R +++ b/R/bmd.R @@ -1,3 +1,176 @@ +#' Benchmark dose estimation +#' +#' Estimation of benchmark doses and benchmark dose lower limit from dose +#' response model fits +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' Details on the implemented definitions and methods can be found in Crump +#' (2002) +#' +#' @param object object of class \code{drc} +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param backgType character string specifying how the background level is +#' specified. For binomial data the options are "modelBased" and "absolute". +#' For continuous data the options are "modelBased","absolute", "hybridSD" and +#' "hybridPercentile". For count data (Poisson, negbin1 or negbin2) the options +#' are "modelBased" and "absolute". +#' +#' "modelBased" - the background level is obtained from the model as the level +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument: p0 = backg for binomial response and for the "relative", "extra" +#' and "added" definition for continuous or count response data. p0 = 1 - +#' phi((back - f(0))/sigma) for "hybridExc" and "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +#' f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +#' function and sigma is the SD for the control group. +#' +#' "hybridPercentile" - the background risk is specified by the user in terms +#' of percentile from the control group distribution (assuming a normal +#' distribution). p0 = 1 - phi((x0 - f(0))/sigma) = 1 - backg. where x0 is +#' the level for which the response is considered adverse, phi is the normal +#' distribution function and sigma is the SD for the control group +#' +#' If not specified, it will be set to "modelBased" for all def excluding +#' "hybridExc" and "hybridAdd", for these the default is "hybridSD". +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background risk for binomial response (1 for decreasing +#' dose-response models), 2 SD for "hybridSD" background and 0.9 for +#' "hybridPercentile" +#' @param controlSD numeric value specifying the standard deviation of the +#' control group (used in the hybrid approach). If not specified the SD for the +#' control group will be estimated as the square root of the residual variance +#' (assuming variance homogeneity). +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess", "additional" and "point" are for +#' binomial response. "relative", "extra", "added", "hybridExc" (excess +#' hybrid), "hybridAdd" (additional hybrid), and "point" are for continuous +#' response. "relative", "extra", and "point" are for count response data. +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for binomial, count and +#' continuous response data +#' +#' "relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for +#' continuous and count response data +#' +#' "extra" - BMR is defined as: BMR = (f(BMD) - p0)/(f(Inf) - p0). Works for +#' continuous and count response data +#' +#' "added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +#' response +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +#' (1- p0), where x0 is the level for which the response is considered adverse, +#' phi is the normal distribution function and sigma is the SD for the control +#' group. Works for continuous response +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +#' where x0 is the level for which the response is considered adverse, phi is +#' the normal distribution function and sigma is the SD for the control group. +#' Works for continuous response +#' @param respTrans if the dose-response model is fitted with a transformed +#' response, specifying this option ensures that the background level for the +#' BMD is computed on the original scale. Options include "none" (default), +#' "log" (natural logarithm) and "sqrt"(square root). +#' @param interval character string specifying the type of confidence interval +#' to use: "delta" (default), "inv", "profile" or "profileGrid" +#' +#' "delta" - BMDL is based on the lower limit of a Wald confidence interval +#' based on the delta method +#' +#' "inv" - BMDL is based on inverse regression, that is the dose associated +#' with the upper limit of the pointwise confidence interval of the +#' dose-response curve. Currently not available for a transformed response +#' variable. +#' +#' "profile" - A profile confidence interval is computed by reparametrising the +#' model. Only available for \code{backgType} in ("modelBased", "absolute"), +#' \code{def} in ("excess", "additional","relative", "extra", "point") and +#' dose-response models with model functions of types Log-Logistic, Log-Normal +#' and Weibull 1 and 2. The limits of the confidence interval are searched for +#' within a grid of size specified by the \code{profileGridSize} argument, +#' however the values of the confidence interval are not limited to the values +#' on the grid. +#' +#' "profileGrid" - A profile confidence interval is computed by creating a +#' multi-dimensional grid of parameter values for the model. Then, a confidence +#' region for the parameters in the model is estimated, and the BMD is +#' estimated for all combinations of parameter values within the region. The +#' interval for the BMD is then computed as the minimum and maximum values of +#' BMD values within the region. Note that for models with several parameters +#' (3-5), is might take a while to compute the confidence interval using this +#' method. The number of grid points for each parameter can be specified by the +#' \code{profileGridSize} argument. +#' @param sandwich.vcov logical. If TRUE BMDL is based on confidence intervals +#' based on robust standard errors from the sandwich covariance matrix +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @param level numeric value specifying the levle of the confidence interval +#' underlying BMDL. Default is 0.95 +#' @param profileGridSize integer specifying the number of grid points used for +#' each parameter, when \code{interval} is either "profile" or +#' "profileGridSearch". Defaults to 20 if not specified. +#' @param profileProgressInfo logical. If TRUE, progress info is be printed +#' while computed profile confidence intervals using the \code{profileGrid} +#' method. Default is TRUE. +#' @return A list of four elements: Results contain the estimated BMD and BMDL, +#' bmrScaled is the response value corresponding to the BMD, interval gives the +#' lower (BMDL) and upper (BMDU) end of the confidence interval of BMD, SE +#' gives the standard error of BMD. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @references Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +#' Benchmark Dose Calculation from Epidemiological Data, \emph{Biometrics} +#' \bold{57}, 698--706. +#' +#' Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +#' Data, \emph{Critical Reviews in Toxicology} \bold{32}, 133--153. +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' +#' ## Fitting log-logistic two-parameter model to binomial data +#' deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial") +#' +#' ## BMD for 5% additional risk with estimated background risk +#' bmd(deguelin.m1, 0.05, backgType = "modelBased", def = "additional") +#' +#' ## BMD for 10% additional risk with 2% background risk +#' bmd(deguelin.m1, 0.1, backg = 0.02 , backgType = "absolute", def = "additional") +#' +#' ## BMD for 5% excess risk and background 0 +#' bmd(deguelin.m1, 0.05, backg = 0, backgType = "absolute", def = "excess") +#' +#' ## Dose resulting in 12% risk +#' bmd(deguelin.m1, 0.12, def = "point") +#' +#' ## Benchmark doses for a continuous response +#' ryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4()) +#' +#' ## BMD as the dose resulting in a 5% change relative to the mean background level +#' bmd(ryegrass.m1, 0.05, backgType = "modelBased", def = "relative", display = TRUE) +#' +#' ## BMD using the hybrid method, background risk is 2 SD, hybrid definition using excess risk +#' bmd(ryegrass.m1, 0.05, backg = 2, backgType = "hybridSD", def = "hybridAdd", display = TRUE) +#' +#' +#' @export bmd<-function(object, bmr, backgType = c("modelBased", "absolute", "hybridSD", "hybridPercentile"), backg=NA, controlSD=NA, def = c("excess", "additional", diff --git a/R/bmd.edfct.R b/R/bmd.edfct.R index e518b85..a4561a6 100644 --- a/R/bmd.edfct.R +++ b/R/bmd.edfct.R @@ -9,7 +9,7 @@ bmd.edfct <- function(object){ # Log-logistic if(identical(class(object$fct), "llogistic")){ if(substr(object$fct$name, 3,3) == "."){ - edfct <- function(parm, respl, reference, type, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { parmVec[notFixed] <- parm p <- drc:::EDhelper(parmVec, respl, reference, type) @@ -31,7 +31,7 @@ bmd.edfct <- function(object){ return(list(EDp, EDder[notFixed])) } } else if(substr(object$fct$name, 3,3) == "2"){ - edfct <- function(parm, respl, reference, type, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { parmVec[notFixed] <- parm @@ -58,7 +58,7 @@ bmd.edfct <- function(object){ # Log-Normal if(identical(class(object$fct), "log-normal")){ - edfct <- function(parm, respl, reference, type, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { parmVec[notFixed] <- parm p <- drc:::absToRel(parmVec, respl, type) @@ -102,7 +102,7 @@ bmd.edfct <- function(object){ # Weibull1 if(identical(class(object$fct), "Weibull-1")){ - edfct <- function(parm, respl, reference, type, ...) # function(parm, p, reference, type, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) # function(parm, p, reference, type, ...) { parmVec[notFixed] <- parm p <- drc:::EDhelper(parmVec, respl, reference, type) @@ -124,7 +124,7 @@ bmd.edfct <- function(object){ # Weibull2 if(identical(class(object$fct), "Weibull-2")){ - edfct <- function(parm, respl, reference, type, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { parmVec[notFixed] <- parm @@ -151,7 +151,7 @@ bmd.edfct <- function(object){ } if(identical(class(object$fct), "Boltzmann")){ - edfct <- function(parm, respl, reference, type, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { parmVec[notFixed] <- parm p <- drc:::EDhelper(parmVec, respl, reference, type) @@ -195,7 +195,7 @@ bmd.edfct <- function(object){ } if(identical(class(object$fct), "braincousens")){ - edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { # if (is.missing(upper)) {upper <- 1000} interval <- c(lower, upper) @@ -242,7 +242,7 @@ bmd.edfct <- function(object){ if(identical(class(object$fct), "fp-logistic")){ p1 <- as.numeric(unlist(strsplit(object$fct$name, split = "[,()]+"))[2]) p2 <- as.numeric(unlist(strsplit(object$fct$name, split = "[,()]+"))[3]) - edfct <- function(parm, respl, reference, type, loged = FALSE, ...) + edfct <- function(parm, respl, reference, type, lower = 1e-3, upper = 10000, loged = FALSE, ...) { parmVec[notFixed] <- parm p <- drc:::EDhelper2(parmVec, respl, reference, type, parmVec[1] > 0) diff --git a/R/bmdBoot.R b/R/bmdBoot.R index 5ea7581..dc4568b 100644 --- a/R/bmdBoot.R +++ b/R/bmdBoot.R @@ -1,3 +1,131 @@ +#' Benchmark dose estimation using bootstrap +#' +#' The function estimates BMD and BMDL using bootstrap based on parametric +#' dose-response models. +#' +#' BMDL is defined as the 5th percentile in the bootstrap distribution. +#' +#' Bootstrapping with the argument boot = "nonparametric" is done by sampling +#' with replacement from the original data set. Bootstrapping with the argument +#' boot = "parametric" is done by sampling from norm(mean(Y_i),sd(Y_0)), +#' assuming equal variance between groups, in case of continuous data. For +#' binomial data, each bootstrap data set is sampled from binom(N_i,Y_i/N_i). +#' In case of Y_i = 0 or Y_i = N_i shrinkage is used to avoid that the +#' resampling always produces 0 or 1, respectively. In this case data is +#' sampled from binom(N_i,(Y_i+1/4)/(N_i+1/2)). Bootstrapping with argument +#' boot = "semiparametric" is done by sampling with replacement from the +#' residuals. +#' +#' All sampling is made within dose groups. +#' +#' @param object object of class \code{drc} +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param R number of bootstrap samples. Default is 1000 +#' @param bootType character string specifying type of bootstrap used. +#' "nonparametric" (default), "semiparametric" or "parametric". "Semiparametric +#' is only available for continuous data and "nonparametric" is at present the +#' only option for count data. See details below +#' @param bmdType Type of estimate for BMD. Default is "orig" the bmd estimate +#' from the original data set. Other choices are "mean" - the mean of the +#' bootstrap estimates, or "median" - the median of the bootstrap estimates +#' @param backgType character string specifying how the background level is +#' specified. For binomial and count data the options are "modelBased" and +#' "absolute". For continuous data the options are "modelBased", "absolute", +#' "hybridSD" and "hybridPercentile" +#' +#' "modelBased" - the background level is obtained from the model as the level +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument: p0 = backg for binomial response and for the "relative", "extra" +#' and "added" definition for continuous response. p0 = 1 - phi((back - +#' f(0))/sigma) for "hybridExc" and "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +#' f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +#' function and sigma is the SD for the control group. "hybridPercentile" - +#' the background risk is specified by the user in terms of percentile from the +#' control group distribution (assuming a normal distribution). p0 = 1 - +#' phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +#' response is considered adverse, phi is the normal distribution function and +#' sigma is the SD for the control group +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background level for binomial response (1 for decreasing +#' dose-response models), 2 SD for "hybridSD" background and 0.9 for +#' "hybridpercentile" +#' @param controlSD numeric value specifying the standard deviation of the +#' control group (used in the hybrid approach). If not specified the SD for the +#' control group will be estimated as the square root of the residual variance +#' (assuming variance homogeneity). +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess" , "additional" and "point" are for +#' binomial response whereas "relative", "extra", "added", "hybridExc" (excess +#' hybrid), "hybridAdd" (additional hybrid), and "point" are for continuous +#' response. "relative", "extra", and "point" are for count response data. +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for binomial, count and +#' continuous response +#' +#' "relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for count and +#' continuous response +#' +#' "extra" - BMR is defined as: BMR = (f(BMD) - p0)/(f(Inf) - p0). Works for +#' count and continuous response +#' +#' "added" - BMR is defined as: BMR= f(BMD) + p0. Works for count and +#' continuous response +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +#' (1- p0), where x0 is the level for which the response is considered adverse, +#' phi is the normal distribution function and sigma is the SD for the control +#' group. Works for continuous response +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +#' where x0 is the level for which the response is considered adverse, phi is +#' the normal distribution function and sigma is the SD for the control group. +#' Works for continuous response +#' @param respTrans if the dose-response model is fitted with a transformed +#' response, specifying this option ensures that the background level for the +#' BMD is computed on the original scale. Options include "none" (default), +#' "log" (natural logarithm) and "sqrt"(square root). +#' @param bootInterval character string indicating type of bootstrap interval +#' used for estimating BMDL. "Percentile" (default) or "BCa" (Bias corrected +#' and adjusted) +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @param level numeric value specifying the levle of the confidence interval +#' underlying BMDL. Default is 0.95 +#' @return A list of three elements: Results contain the estimated BMD and +#' BMDL, bootEst is a vector af all of the estimated BMD values from each +#' bootstrap sample, Interval gives BMDL and BMDU, which is identical to the +#' confidence interval for the percentile interval approach. +#' @author Signe M. Jensen +#' @keywords bootstrap +#' @examples +#' +#' ## Data on root length in ryegrass after exposure to ferulic acid +#' require(drc) +#' require(drcData) +#' data(ryegrass) +#' +#' ryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4()) +#' +#' ## BMD using the hybrid method, background risk is 2 SD, hybrid definition using excess risk +#' bmdBoot(ryegrass.m1, 0.05, backgType = "hybridSD", def = "hybridAdd", R = 50) +#' +#' ## BMD from the same definitions but using parametric bootstrap +#' bmdBoot(ryegrass.m1, 0.05, backgType = "hybridSD", def = "hybridAdd", bootType="parametric",R = 50) +#' +#' @export bmdBoot <- function(object, bmr, R=1000, bootType="nonparametric", bmdType = "orig", backgType = c("modelBased", "absolute", "hybridSD", "hybridPercentile"), backg=NA, @@ -352,4 +480,4 @@ bmdBoot <- function(object, bmr, R=1000, bootType="nonparametric", bmdType = "or interval = intMat) class(resBMD) <- "bmd" invisible(resBMD) -} \ No newline at end of file +} diff --git a/R/bmdHetVar.R b/R/bmdHetVar.R index e52f69d..5b75288 100644 --- a/R/bmdHetVar.R +++ b/R/bmdHetVar.R @@ -1,3 +1,118 @@ +#' Benchmark dose estimation with heterogeneous variance +#' +#' Estimation of benchmark doses and benchmark dose lower limit based on the +#' hybrid method from dose response model fits with the option to specify a +#' heterogeneous variance structure, where the variance depends on the dose +#' level and/or the fitted values +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' REFERENCES TO BE ADDED/WRITTEN +#' +#' @param object dose-response model with a heterogeneous variance structure of +#' class \code{drcHetVar} +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param backgType character string specifying how the background level is +#' specified. The options are "absolute", "hybridSD" and "hybridPercentile". +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument: p0 = 1 - phi((back - f(0))/sigma(0)) for "hybridExc" and +#' "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma(0) + +#' f(0)) - f(0))/sigma(0)) = 1 - phi(backg), where phi is the normal +#' distribution function and sigma(0) is the SD for the control group. +#' +#' "hybridPercentile" - the background risk is specified by the user in terms +#' of percentile from the control group distribution (assuming a normal +#' distribution). p0 = 1 - phi((x0 - f(0))/sigma(0)) = 1 - backg. where x0 is +#' the level for which the response is considered adverse, phi is the normal +#' distribution function and sigma(0) is the SD for the control group +#' @param backg numeric value specifying the background level. Defaults to 2 SD +#' for "hybridSD" background and 0.9 for "hybridPercentile" +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "hybridExc" (excess hybrid), "hybridAdd" +#' (additional hybrid), available. +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma(BMD)) - +#' p0)/ (1- p0), where x0 is the level for which the response is considered +#' adverse, phi is the normal distribution function and sigma(BMD) is the SD at +#' the benchmark dose. +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma(BMD)) - +#' p0, where x0 is the level for which the response is considered adverse, phi +#' is the normal distribution function and sigma(BMD) is the SD at the +#' benchmark dose. +#' @param interval character string specifying the type of confidence interval +#' to use: "boot" (default) or "none" +#' +#' "boot" - BMDL is based on percentile bootstrapping. +#' +#' "none" - no confidence interval is computed. +#' @param R number of bootstrap samples. Ignored if \code{interval = "none"} +#' @param level numeric value specifying the levle of the confidence interval +#' underlying BMDL. Default is 0.95 +#' @param bootType character string specifying the type of bootstrap samples. +#' Options are "nonparametric" (observations are drawn without replacement from +#' the original data set), "semi-parametric" (standardised residuals are drawn +#' with replacement and subsequently rescaled according to the model) and +#' "parametric" (new observations are simulated from the distribution given by +#' the fitted model). +#' @param progressInfo logical. If TRUE, progress info is be printed while +#' bootstrap confidence intervals are estimated. Default is TRUE. +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @return A list of five elements: Results contain the estimated BMD and BMDL, +#' bmrScaled is the response value corresponding to the BMD, interval gives the +#' lower (BMDL) and upper (BMDU) end of the confidence interval of BMD +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' library(bmd) +#' # install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT. +#' +#' # ryegrass data +#' set.seed(123) +#' ryegrass.LL.4.hetVar <- drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), +#' data = ryegrass, fct = LL.4()) +#' plot(ryegrass.LL.4.hetVar) +#' bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1, +#' def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, +#' display = TRUE) # increase R +#' bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1, +#' def = "hybridExc", R = 50, level = 0.95, +#' bootType = "parametric", progressInfo = TRUE, display = TRUE) # parametric bootstrap +#' +#' # barley data +#' set.seed(123) +#' barley.LL.4.hetVar <- drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), data = barley, fct = LL.4()) +#' plot(barley.LL.4.hetVar) +#' bmdHetVar(barley.LL.4.hetVar, bmr = 0.1, backgType = "hybridSD", backg = 1, +#' def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE) +#' +#' # GiantKelp data +#' set.seed(123) +#' GiantKelp.LL.4.hetVarSq <- drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2), +#' data = GiantKelp, fct = LL.4()) +#' plot(GiantKelp.LL.4.hetVarSq) +#' bmdHetVar(GiantKelp.LL.4.hetVarSq, bmr = 0.1, backgType = "hybridSD", backg = 1, +#' def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE) +#' +#' GiantKelp.LL.4.hetVarLogSq <- drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2), +#' data = GiantKelp, fct = LL.4()) +#' plot(GiantKelp.LL.4.hetVarLogSq) +#' bmdHetVar(GiantKelp.LL.4.hetVarLogSq, bmr = 0.1, backgType = "hybridSD", backg = 1, +#' def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE) +#' +#' @export bmdHetVar <- function(object, bmr, backgType = c("absolute", "hybridSD", "hybridPercentile"), backg = NA, def = c("hybridExc", "hybridAdd"), interval = c("boot", "none"), R = 1000, level = 0.95, bootType = "nonparametric", progressInfo = TRUE, display = TRUE){ ### Assertions ### # object @@ -171,4 +286,4 @@ bmdHetVar <- function(object, bmr, backgType = c("absolute", "hybridSD", "hybrid model = object) class(resBMD) <- c("bmdHetVar", "bmd") invisible(resBMD) -} \ No newline at end of file +} diff --git a/R/bmdHetVarMA.R b/R/bmdHetVarMA.R index 060c0aa..22a1fa0 100644 --- a/R/bmdHetVarMA.R +++ b/R/bmdHetVarMA.R @@ -1,3 +1,117 @@ +#' Benchmark dose estimation with heterogeneous variance based on model +#' averaging (MA) +#' +#' Estimation of benchmark doses and benchmark dose lower limit based on the +#' hybrid method from a list of dose response model fits with the option to +#' specify a heterogeneous variance structure, where the variance depends on +#' the dose level and/or the fitted values +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' REFERENCES TO BE ADDED/WRITTEN +#' +#' @param modelList a list of dose-response models with a heterogeneous +#' variance structure of class \code{drcHetVar} +#' @param modelWeights character string specifying the type of weights used, +#' "AIC" or "BIC", or a numeric vector of the same length as the modelList with +#' user defined weights +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param backgType character string specifying how the background level is +#' specified. The options are "absolute", "hybridSD" and "hybridPercentile". +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument: p0 = 1 - phi((back - f(0))/sigma(0)) for "hybridExc" and +#' "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma(0) + +#' f(0)) - f(0))/sigma(0)) = 1 - phi(backg), where phi is the normal +#' distribution function and sigma(0) is the SD for the control group. +#' +#' "hybridPercentile" - the background risk is specified by the user in terms +#' of percentile from the control group distribution (assuming a normal +#' distribution). p0 = 1 - phi((x0 - f(0))/sigma(0)) = 1 - backg. where x0 is +#' the level for which the response is considered adverse, phi is the normal +#' distribution function and sigma(0) is the SD for the control group +#' @param backg numeric value specifying the background level. Defaults to 2 SD +#' for "hybridSD" background and 0.9 for "hybridPercentile" +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "hybridExc" (excess hybrid), "hybridAdd" +#' (additional hybrid), available. +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma(BMD)) - +#' p0)/ (1- p0), where x0 is the level for which the response is considered +#' adverse, phi is the normal distribution function and sigma(BMD) is the SD at +#' the benchmark dose. +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma(BMD)) - +#' p0, where x0 is the level for which the response is considered adverse, phi +#' is the normal distribution function and sigma(BMD) is the SD at the +#' benchmark dose. +#' @param interval character string specifying the type of confidence interval +#' to use: "boot" (default) or "none" +#' +#' "boot" - BMDL is based on nonparametric percentile bootstrapping. +#' +#' "none" - no confidence interval is computed. +#' @param R number of bootstrap samples. Ignored if \code{interval = "none"} +#' @param level numeric value specifying the levle of the confidence interval +#' underlying BMDL. Default is 0.95 +#' @param progressInfo logical. If TRUE, progress info is be printed while +#' bootstrap confidence intervals are estimated. Default is TRUE. +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @return A list of four elements: Results contain the estimated BMD and BMDL, +#' Boot.samples.used gives the number of boot samples that resulted in +#' succesful estimations and were accordingly used in the estimation of BMDL +#' (and BMDU), Interval gives BMDL and BMDU, which is identical to the +#' confidence interval for the percentile interval approach, and modelWeights +#' includes the estimated weights. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' library(bmd) +#' # install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT. +#' +#' # ryegrass data +#' set.seed(123) +#' ryegrass.hetVar.list <- list( +#' drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = LL.4()), +#' drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = LN.4()), +#' drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = W1.4()), +#' drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = W2.4())) +#' bmdHetVarMA(ryegrass.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridPercentile", +#' backg = 0.1, def = "hybridExc", R = 100, level = 0.95) +#' bmdHetVarMA(ryegrass.hetVar.list, modelWeights = c(0.4, 0.2, 0.1, 0.3), bmr = 0.1, +#' backgType = "hybridPercentile", backg = 0.1, +#' def = "hybridExc", R = 50, level = 0.95) # user-defined weights +#' +#' # barley data +#' set.seed(123) +#' barley.hetVar.list <- list(drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), +#' data = barley, fct = LL.4()), +#' drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), +#' data = barley, fct = W2.4())) +#' bmdHetVarMA(barley.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridSD", backg = 2, +#' def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE) +#' +#' # GiantKelp data +#' set.seed(123) +#' GiantKelp.hetVar.list <- list( +#' drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2), data = GiantKelp, fct = LL.4()), +#' drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2), data = GiantKelp, fct = LL.4())) +#' bmdHetVarMA(GiantKelp.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridSD", +#' backg = 1, def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, +#' display = TRUE) +#' +#' @export bmdHetVarMA <- function(modelList, modelWeights = c("AIC", "BIC"), bmr, backgType = c("absolute", "hybridSD", "hybridPercentile"), backg = NA, def = c("hybridExc", "hybridAdd"), interval = c("boot", "none"), R = 1000, level = 0.95, progressInfo = TRUE, display = TRUE){ ### Assertions ### # modelList @@ -122,4 +236,4 @@ bmdHetVarMA <- function(modelList, modelWeights = c("AIC", "BIC"), bmr, backgTyp modelWeights = modelWeights0) class(resBMD) <- c("bmdHetVar", "bmd") invisible(resBMD) -} \ No newline at end of file +} diff --git a/R/bmdIso.R b/R/bmdIso.R index 9982f4d..ee855e9 100644 --- a/R/bmdIso.R +++ b/R/bmdIso.R @@ -1,3 +1,127 @@ +#' Benchmark dose estimation from isotonic regression +#' +#' The function monotonizes the sequence of response values based on the +#' pool-adjacent violators algorithm and based on these use linear +#' interpolating splines to build an isotonic regression model. From this model +#' a benchmark dose is estimated. +#' +#' Formula should be specified as in the form number/total ~ dose for binomial +#' data. For details about the use of isotonic regression for BMD estimation +#' see Piegorsch et al. (20014) and Lin et al. (2015). +#' +#' @param formula an object of class "formula" expressing the dose-response +#' relationship. Details of model specification are given under 'Details' +#' @param data data frame containing the variables in the model +#' @param type character string specifying the type of data used in the model. +#' "continuous", "binomial" or "Poisson" +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param p0 background probability for hybrid definitions +#' @param backgType character string specifying how the background level is +#' specified. For binomial data the options are "modelBased" and "absolute". +#' For continuous data the options are "absolute", "hybridSD" and +#' "hybridPercentile" +#' +#' "modelBased" - the background level is obtained from the model as the level +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument: p0 = backg for binomial response and for the "relative" and +#' "added" definition for continuous response. p0 = 1 - phi((back - +#' f(0))/sigma) for "hybridExc" and "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +#' f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +#' function and sigma is the SD for the control group. "hybridPercentile" - +#' the background risk is specified by the user in terms of percentile from the +#' control group distribution (assuming a normal distribution). p0 = 1 - +#' phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +#' response is considered adverse, phi is the normal distribution function and +#' sigma is the SD for the control group +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background risk for binomial response (1 for decreasing +#' dose-response models), 2 SD for "hybridSD" background and 0.9 for +#' "hybridpercentile" +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess", "additional" and "point" are for +#' binomial response whereas "relative", "added", "hybridExc" (excess hybrid), +#' "hybridAdd" (additional hybrid), and "point" are for continuous response. +#' "relative", "extra", and "point" are for count response data. +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for binomial, count and +#' continuous response +#' +#' "relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for count and +#' continuous response +#' +#' "added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +#' response +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +#' (1- p0), where x0 is the level for which the response is considered adverse, +#' phi is the normal distribution function and sigma is the SD for the control +#' group. Works for continuous response +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +#' where x0 is the level for which the response is considered adverse, phi is +#' the normal distribution function and sigma is the SD for the control group. +#' Works for continuous response +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @return A matrix with two columns, one containing BMD and the other +#' containing BMDL. +#' @author Signe M. Jensen +#' @references Piegorsch, W. W., Xiong, H., Bhattacharya, R. N., & Lin, L. +#' (2014). Benchmark dose analysis via nonparametric regression modeling. Risk +#' Analysis, 34(1), 135-151 +#' +#' Lin, L., Piegorsch, W. W. and Bhattacharya R. (2015). Nonparametric +#' benchmark dose estimation with continuous dose-response data. Scandinavian +#' Journal of Statistics, 42, 713-731 +#' @keywords nonparametric isotonic regression +#' @examples +#' +#' ## Data on tumor incidence in rats after exposure to formaldehyde, from Piegorsch et al. (2014) +#' formaldehyde <- data.frame(conc = c(0.0, 0.7, 2.0, 6.0, 10.0, 15.0), +#' tumor.incidence = c(0, 0, 0, 3, 21, 150), +#' total = c(122, 27, 126, 113, 34, 182)) +#' +#' # Estimating BMD from isotonic regression using excess risk definition and a BMR=0.1 +#' bmdIso(tumor.incidence/total ~ conc, +#' data=formaldehyde, +#' type="binomial", +#' bmr=0.1, +#' backgType = "modelBased", +#' def = "excess") +#' +#' +#' ## Data on root length in ryegrass after exposure to ferulic acid +#' require(drc) +#' require(drcData) +#' data(ryegrass) +#' +#' # As isotonic regression only wors for increasing dose-response relationship +#' # the association is turned +#' ryegrass1<-ryegrass +#' ryegrass1$rootl<-100-ryegrass1$rootl +#' +#' # Estimating BMD from isotonic regression using relative risk definition +#' # and a BMR=0.05 +#' bmdIso(rootl ~ conc, +#' data=ryegrass1, +#' type="continuous", +#' bmr=0.05, +#' backgType = "modelBased", +#' def = "relative") +#' @export bmdIso <- function(formula, data, type, bmr, p0, backgType = c("modelBased", "absolute","hybridSD","hybridPercentile"), backg=NA, def = c("excess", "additional", "relative", "added", "hybridExc", "hybridAdd", "point"), display=FALSE){ object <- formula PAV.p <- PAV(object, data, type) diff --git a/R/bmdIsoBoot.R b/R/bmdIsoBoot.R index 67f17a9..8b33f7e 100644 --- a/R/bmdIsoBoot.R +++ b/R/bmdIsoBoot.R @@ -1,3 +1,140 @@ +#' Benchmark dose estimation from isotonic regression +#' +#' The function estimates BMD and BMDL using bootstrap based on isotonic +#' regression. +#' +#' BMD and BMDL is defined as the median and the 5th percentile in the +#' bootstrap distribution, respectively. +#' +#' Formula should be specified as in the form number/total ~ dose for binomial +#' data. +#' +#' Bootstrapping with the argument boot = "resample" is done by sampling with +#' replacement from the original data set. Bootstrapping with the argument boot +#' = "pseudorandom" is done by sampling from norm(mean(Y_i),sd(Y_0)), assuming +#' equal variance between groups, in case of continuous data. For binomial +#' data, each bootstrap data set is sampled from binom(N_i,Y_i/N_i). In case of +#' Y_i = 0 or Y_i = N_i shrinkage is used to avoid that the resampling always +#' produces 0 or 1, respectively. In this case data is sampled from +#' binom(N_i,(Y_i+1/3)/(N_i+1/3)). +#' +#' All sampling is made within dose groups. +#' +#' For details about the use of isotonic regression for BMD estimation see +#' Piegorsch et al. (20014) and Lin et al. (2015). +#' +#' @param formula an object of class "formula" expressing dose-response +#' relationship. Details of model specification are given under 'Details' +#' @param data data frame containing the variables in the model +#' @param type character string specifying the type of data used in the model. +#' "continuous" or "binomial" or "Poisson" +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param R number of bootstrap samples +#' @param boot character string specifying type of bootstrap used. "resample" +#' or "pseudorandom". Only option for count data is "resample" +#' @param backgType character string specifying how the background level is +#' specified. For binomial data the options are "modelBased" and "absolute". +#' For continuous data the options are "modelBased", "absolute", "hybridSD" and +#' "hybridPercentile" +#' +#' "modelBased" - the background level is obtained from the model as the level +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument: p0 = backg for binomial response and for the "relative" and +#' "added" definition for continuous response. p0 = 1 - phi((back - +#' f(0))/sigma) for "hybridExc" and "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +#' f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +#' function and sigma is the SD for the control group. "hybridPercentile" - +#' the background risk is specified by the user in terms of percentile from the +#' control group distribution (assuming a normal distribution). p0 = 1 - +#' phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +#' response is considered adverse, phi is the normal distribution function and +#' sigma is the SD for the control group +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background risk for binomial response (1 for decreasing +#' dose-response models), 2 SD for "hybridSD" background and 0.9 for +#' "hybridpercentile" +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess", "additional" and "point" are for +#' binomial response whereas "relative", "added", "hybridExc" (excess hybrid), +#' "hybridAdd" (additional hybrid), and "point" are for continuous response. +#' "relative", "extra", and "point" are for count response data. +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for binomial, count and +#' continuous response +#' +#' "relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for count and +#' continuous response +#' +#' "added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +#' response +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +#' (1- p0), where x0 is the level for which the response is considered adverse, +#' phi is the normal distribution function and sigma is the SD for the control +#' group. Works for continuous response +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +#' where x0 is the level for which the response is considered adverse, phi is +#' the normal distribution function and sigma is the SD for the control group. +#' Works for continuous response +#' @return A matrix with two columns, one containing BMD and the other +#' containing BMDL. +#' @author Signe M. Jensen +#' @references Piegorsch, W. W., Xiong, H., Bhattacharya, R. N., & Lin, L. +#' (2014). Benchmark dose analysis via nonparametric regression modeling. Risk +#' Analysis, 34(1), 135-151 +#' +#' Lin, L., Piegorsch, W. W. and Bhattacharya R. (2015). Nonparametric +#' benchmark dose estimation with continuous dose-response data. Scandinavian +#' Journal of Statistics, 42, 713-731 +#' @keywords nonparametric isotonic regression bootstrap +#' @export +#' @examples +#' +#' ## Data on tumor incidence in rats after exposure to formaldehyde, from Piegorsch et al. (2014) +#' formaldehyde <- data.frame(conc = c(0.0, 0.7, 2.0, 6.0, 10.0, 15.0), +#' tumor.incidence = c(0, 0, 0, 3, 21, 150), +#' total = c(122, 27, 126, 113, 34, 182)) +#' +#' # BMD and BMDL from isotonic regression using excess risk definition and a BMR=0.1 +#' bmdIsoBoot(tumor.incidence/total ~ conc, +#' data=formaldehyde, +#' type="binomial", +#' bmr=0.1, +#' backgType = "modelBased", +#' def = "excess") +#' +#' +#' ## Data on root length in ryegrass after exposure to ferulic acid +#' require(drc) +#' data(ryegrass) +#' +#' # As isotonic regression only wors for increasing dose-response relationship +#' # the association is turned +#' ryegrass1<-ryegrass +#' ryegrass1$rootl<-100-ryegrass1$rootl +#' +#' # Estimating BMD from isotonic regression using relative risk definition and a BMR=0.05 +#' bmdIsoBoot(rootl ~ conc, +#' data=ryegrass1, +#' type="continuous", +#' bmr=0.05, +#' backgType = "modelBased", +#' def = "relative", R = 100) +#' bmdIsoBoot <- function(formula, data, type, bmr, R=1000, boot="resample", backgType = c("modelBased", "absolute","hybridSD","hybridPercentile"), backg=NA, diff --git a/R/bmdMA.R b/R/bmdMA.R index ec38cbc..5c7a45f 100644 --- a/R/bmdMA.R +++ b/R/bmdMA.R @@ -1,3 +1,212 @@ +#' Model-averaged benchmark dose estimation +#' +#' Estimation of benchmark doses and benchmark dose lower limit based on model +#' averaging from a user-defined list of dose response model fits +#' +#' This package project is still under development. The aim to provide an R +#' package calculating the benchmark dose (BMD) and the lower limit of the +#' corresponding 95\% confidence interval (BMDL) for continuous and quantal +#' dose-response data for a range of dose-response model based on the available +#' definitions of the benchmark dose concepts. +#' +#' Details on the implemented definitions and methods can be found in Crump +#' (2002) +#' +#' Bootstrapping with the argument boot = "nonparametric" is done by sampling +#' with replacement from the original data set. Bootstrapping with the argument +#' boot = "parametric" is done by sampling from norm(mean(Y_i),sd(Y_0)), +#' assuming equal variance between groups, in case of continuous data. For +#' binomial data, each bootstrap data set is sampled from binom(N_i,Y_i/N_i). +#' In case of Y_i = 0 or Y_i = N_i shrinkage is used to avoid that the +#' resampling always produces 0 or 1, respectively. In this case data is +#' sampled from binom(N_i,(Y_i+1/3)/(N_i+1/3)). +#' +#' All sampling is made within dose groups. +#' +#' @param modelList list of models of class \code{drc} +#' @param modelWeights character string specifying the type of weights used, +#' "AIC", "BIC" or "Stack" (Baalkilde, J. R., Hansen, N. R., and Jensen, S. M., +#' 2025), or a vector of the same length as the modelList with user defined +#' weights +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param backgType character string specifying how the background level is +#' specified. For binomial data the options are "modelBased" and "absolute". +#' For continuous data the options are "absolute", "hybridSD" and +#' "hybridPercentile" +#' +#' "modelBased" - the background risk is obtained from the model as the risk +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background risk is specified by the user through the backg +#' argument: p0 = backg for binomial response and for the "relative", "extra" +#' and "added" definition for continuous response. p0 = 1 - phi((back - +#' f(0))/sigma) for "hybridExc" and "hybridAdd" definitions. +#' +#' "hybridSD" - the background risk is specified by the user in terms of number +#' of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +#' f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +#' function and sigma is the SD for the control group. "hybridPercentile" - +#' the background risk is specified by the user in terms of percentile from the +#' control group distribution (assuming a normal distribution). p0 = 1 - +#' phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +#' response is considered adverse, phi is the normal distribution function and +#' sigma is the SD for the control group +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background risk for binomial response (1 for decreasing +#' dose-response models), 2 SD for "hybridSD" background and 0.9 for +#' "hybridpercentile" +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess" , "additional" and "point" are for +#' binomial response whereas "relative", "extra", "added", "hybridExc" (excess +#' hybrid), "hybridAdd" (additional hybrid), and "point" are for continuous +#' response +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for both binomial and continuous +#' response +#' +#' "relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for +#' continuous response +#' +#' "extra" - BMR is defined as: BMR = (f(BMD) - p0)/(f(Inf) - p0). Works for +#' continuous response +#' +#' "added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +#' response +#' +#' "hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +#' (1- p0), where x0 is the level for which the response is considered adverse, +#' phi is the normal distribution function and sigma is the SD for the control +#' group. Works for continuous response +#' +#' "hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +#' where x0 is the level for which the response is considered adverse, phi is +#' the normal distribution function and sigma is the SD for the control group. +#' Works for continuous response +#' @param respTrans if the dose-response model is fitted with a transformed +#' response, specifying this option ensures that the background level for the +#' BMD is computed on the original scale. Options include "none" (default), +#' "log" (natural logarithm) and "sqrt"(square root). +#' @param interval character string specifying the type of confidence interval +#' to use for the individual models (no effect when type = "bootstrap" or +#' "curve"): "delta" (default), "sandwich", "inv" or "profile" +#' +#' "delta" - BMDL is based on the lower limit of a Wald confidence interval +#' based on the delta method +#' +#' "sandwich" - BMDL is based on the lower limit of a Wald confidence interval +#' based on the delta method where the sandwich covariance matrix is used +#' +#' "inv" - BMDL is based on inverse regression, that is the dose associated +#' with the upper limit of the point wise confidence interval of the +#' dose-response curve. Not possible if type = "Buckland" +#' +#' "profile" - BMDL is based on the lower limit of a profile likelihood +#' confidence interval. Not possible if type = "Buckland" +#' @param type character string specifying how to estimate BMD and BMDL: +#' "curve", "bootstrap", "Kang" or "Buckland" +#' +#' "curve" - +#' +#' "bootstrap" - +#' +#' "Kang" - +#' +#' "Buckland" - +#' @param bootstrapType character string indicating type of bootstrap sampling +#' to be used if type="bootstrap" or "curve". "nonparametric" (default), or +#' "parametric" (see details) +#' @param bootInterval character string indicating how to estimate the +#' bootstrap confidence intervals used to find BMDL type="bootstrap". +#' "percentile" (default) or "BCa" (Bias corrected and adjusted) +#' @param R number of bootstrap samples to use. Default is 1000 +#' @param level numeric value specifying the level of the confidence interval +#' underlying BMDL. Default is 0.95. Note that the full CI is also computed. +#' The full CI has level 1-2*(1-level) +#' @param stackingSeed integer or NULL: Random seed to use in the data split in +#' the estimation of the Stacking Weights when \code{modelWeights = "Stack"}. +#' The global seed is reset to the initial value after estimation of the +#' weights, so this option does not interfere with a globally set seed. +#' @param stackingSplits integer or "LOO": When \code{modelWeights = "Stack"}, +#' the Stacking Weights are estimated, which are based on V-fold +#' cross-validation. The stackingSplits argument sets the number V of data +#' splits used in the cross validation. The "LOO" (Leave one out) is a shortcut +#' to setting V equal to the number of observations in the data set. +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @param progressInfo logical. If TRUE, a progressbar is shown when computing +#' bootstrap confidence intervals. +#' @return A list of five elements: Results contain the estimated BMD and BMDL, +#' Boot.samples.used gives the number of boot samples that resulted in +#' succesful estimations and were accordingly used in the estimation of BMDL +#' (and BMDU), Interval gives BMDL and BMDU, which is identical to the +#' confidence interval for the percentile interval approach, SE gives the +#' estimated SE for the "Buckland" method, and modelWeights includes the +#' estimated weights. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @references Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +#' Benchmark Dose Calculation from Epidemiological Data, \emph{Biometrics} +#' \bold{57}, 698--706. +#' +#' Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +#' Data, \emph{Critical Reviews in Toxicology} \bold{32}, 133--153. +#' +#' Baalkilde, J. R., Hansen, N. R., and Jensen, S. M. (2025) Stacking Weights +#' and Model Space Selection in Frequentist Model Averaging for Benchmark Dose +#' Estimation, \emph{Environmetrics} \bold{36(2)}, e70002. +#' @keywords model averaging nonlinear bootstrap +#' @export +#' @examples +#' +#' library(drc) +#' library(drcData) +#' +#' ## Fitting 4 different two-parameter models to binomial data +#' deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial") +#' deguelin.m2 <- drm(r/n~dose, weights=n, data=deguelin, fct=W1.2(), type="binomial") +#' deguelin.m3 <- drm(r/n~dose, weights=n, data=deguelin, fct=W2.2(), type="binomial") +#' deguelin.m4 <- drm(r/n~dose, weights=n, data=deguelin, fct=LN.2(), type="binomial") +#' +#' +#' ## Model averaged BMD for 5% additional risk with estimated background risk +#' ## and BMDL based on Buckland et al. +#' bmdMA(list(deguelin.m1,deguelin.m2,deguelin.m3,deguelin.m4), modelWeights="AIC", 0.05, +#' backgType = "modelBased", def = "additional", +#' type = "Buckland") +#' +#' ## Model averaged BMD for 5% additional risk with estimated background risk +#' ## and BMDL based on an average of the model curves +#' bmdMA(list(deguelin.m1,deguelin.m2,deguelin.m3,deguelin.m4), modelWeights="AIC", 0.05, +#' backgType = "modelBased", def = "additional", +#' type = "curve", bootstrapType = "parametric", bootInterval = "percentile", R=50) +#' +#' +#' ## Fitting 4 different two-parameter models to binomial data +#' ryegrass.m1<-drm(rootl~conc, data=ryegrass, fct=LL.4()) +#' ryegrass.m2<-drm(rootl~conc, data=ryegrass, fct=W1.4()) +#' ryegrass.m3<-drm(rootl~conc, data=ryegrass, fct=W2.4()) +#' ryegrass.m4<-drm(rootl~conc, data=ryegrass, fct=LN.4()) +#' +#' ## Model-averaged BMD and bootstrap BMDL for bmr=5% and using the hybrid approach +#' ## to estimate the background risk. +#' bmdMA(list(ryegrass.m1,ryegrass.m2,ryegrass.m3,ryegrass.m4), modelWeights="AIC", bmr=0.05, +#' backgType = "hybridSD", def = "hybridAdd", type = "bootstrap", +#' bootstrapType = "nonparametric", bootInterval = "percentile", R = 50) +#' +#' +#' ## Model-averaged BMD using the Stacking Weights +#' bmdMA(list(ryegrass.m1,ryegrass.m2,ryegrass.m3,ryegrass.m4), modelWeights="Stack", bmr=0.05, +#' backgType = "hybridSD", def = "hybridAdd", type = "bootstrap", +#' bootstrapType = "nonparametric", bootInterval = "percentile", R = 50) +#' +#' bmdMA <- function(modelList, modelWeights, bmr, backgType = c("modelBased", "absolute", "hybridSD", "hybridPercentile"), backg=NA, diff --git a/R/bmdMACurve.R b/R/bmdMACurve.R index 10ed57d..e95964f 100644 --- a/R/bmdMACurve.R +++ b/R/bmdMACurve.R @@ -1,3 +1,104 @@ +#' Calculate Model-Averaged BMD Curve, helper to bmdMA +#' +#' @description +#' Helper function for `bmdMA` that computes Benchmark Dose (BMD) values using +#' model averaging. The function creates a weighted average of multiple dose-response +#' models and finds the dose corresponding to a specified benchmark response level. +#' +#' @param modelList list; A list of fitted dose-response models from which to compute +#' the model average. Each model should be a fitted object with components +#' including `fct`, `parmMat`, `dataList`, etc. +#' @param modelWeights numeric vector; Weights for model averaging, typically derived +#' from model selection criteria (e.g., AIC weights). Must sum to 1 and have +#' the same length as `modelList` +#' @param bmrScaled0 numeric; The benchmark response level(s) for which to calculate +#' BMD. For single curves, a scalar value; for multiple curves, a vector with +#' length equal to the number of curves +#' @param searchInterval character or numeric; Search interval for root finding. +#' If "dataBased" (default), uses data range with small lower bound adjustment. +#' If numeric, should be a vector of length 2 for single curves, or a matrix +#' with 2 columns for multiple curves specifying `[lower, upper]` bounds +#' +#' @details +#' The function handles two scenarios: +#' +#' **Single Curve Analysis:** +#' Creates a weighted combination of model functions: +#' \deqn{f_{MA}(x) = \sum_{i=1}^{m} w_i \cdot f_i(x)}{f_MA(x) = sum of w_i * f_i(x)} +#' where \eqn{w_i}{w_i} are model weights and \eqn{f_i(x)}{f_i(x)} are individual model functions. +#' +#' **Multiple Curve Analysis:** +#' Computes BMD separately for each curve using the same model averaging approach +#' but applied to curve-specific data and parameters. +#' +#' The BMD is found by solving: +#' \deqn{f_{MA}(BMD) = BMR}{f_MA(BMD) = BMR} +#' using root finding algorithms. +#' +#' **Model Function Construction:** +#' The function dynamically constructs model functions by: +#' \itemize{ +#' \item Extracting function templates from `mtList()` +#' \item Substituting fixed parameters and estimated coefficients +#' \item Handling special cases like Fractional Polynomial models +#' \item Creating weighted combinations of all models +#' } +#' +#' @return An object of class "bmd" containing: +#' \itemize{ +#' \item \strong{Results}: A matrix with BMD values. For single curves, a 1x1 matrix; +#' for multiple curves, an nx1 matrix where n is the number of curves +#' \item \strong{MACurve}: The model-averaged function used for BMD calculation. +#' For single curves, returns the combined function; for multiple curves, returns NULL +#' } +#' +#' @section Search Interval: +#' When `searchInterval = "dataBased"`: +#' \itemize{ +#' \item Lower bound: Second smallest dose value divided by 10,000 +#' \item Upper bound: Maximum dose value in the dataset +#' } +#' +#' Custom intervals can be provided to avoid convergence issues or focus on +#' specific dose ranges of interest. +#' +#' @section Model Support: +#' The function supports various dose-response models including: +#' \itemize{ +#' \item Standard 4-parameter and 5-parameter models +#' \item Fractional Polynomial models (special handling) +#' \item Models with fixed parameters +#' } +#' +#' @note +#' This is primarily an internal helper function for `bmdMA`. Direct usage requires +#' properly formatted model lists and weights. The function assumes all models in +#' `modelList` are compatible and fitted to the same dataset structure. +#' +#' @seealso +#' \code{\link{bmdMA}} for the main model averaging function, +#' \code{\link{uniroot}} for the root finding algorithm used internally +#' +#' @examples +#' \dontrun{ +#' # Typically called internally by bmdMA, but can be used directly: +#' +#' # Assume you have a list of fitted models and weights +#' models <- list(model1, model2, model3) # fitted drc models +#' weights <- c(0.5, 0.3, 0.2) # AIC weights +#' bmr <- 0.1 # 10% benchmark response +#' +#' # Calculate model-averaged BMD +#' result <- bmdMACurve(models, weights, bmr) +#' +#' # Extract BMD value +#' bmd_value <- result$Results[1, 1] +#' +#' # Use the averaged curve function +#' curve_function <- result$MACurve +#' } +#' +#' @export bmdMACurve<-function(modelList,modelWeights,bmrScaled0, searchInterval="dataBased"){ nCurves <- ncol(modelList[[1]]$parmMat) diff --git a/R/bmdOrdinal.R b/R/bmdOrdinal.R index a059145..0a379b1 100644 --- a/R/bmdOrdinal.R +++ b/R/bmdOrdinal.R @@ -1,3 +1,115 @@ +#' Benchmark dose estimation for ordinal dose-response models +#' +#' Estimation of benchmark doses and benchmark dose lower limit from ordinal +#' dose response model fits +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous, quantal, quantal and ordinal dose-response data for a range of +#' dose-response models based on the available definitions of the benchmark +#' dose concepts. +#' +#' Details on the implemented definitions and methods can be found in Crump +#' (2002) +#' +#' @param object object of class \code{drcOrdinal} +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param backgType character string specifying how the background level is +#' specified. The options are "modelBased" and "absolute". +#' +#' "modelBased" - the background level is obtained from the model as the level +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument. +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background risk. +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess", "additional" and "point" are available +#' for ordinal response. +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for binomial, count and +#' continuous response data. +#' @param interval character string specifying the type of confidence interval +#' to use: "delta" (default), "sandwich", "profile" or "bootstrap" +#' +#' "delta" - BMDL is based on the lower limit of a Wald confidence interval +#' based on the delta method +#' +#' "sandwich" - BMDL is based on the lower limit of a Wald confidence interval +#' based on the delta method, where the sandwich covariance matrix is used +#' +#' "bootstrap" - BMDL is based on bmd estimates on resampled data sets. The +#' type of bootstrap applied can be specified by the "bootType" argument. +#' Default is "nonparametric". +#' +#' "none" - No confidence interval is computed. +#' @param level numeric value specifying the levle of the confidence interval +#' underlying BMDL. Default is 0.95 +#' @param R integer specifying the number of data sets resampled from the +#' original data set when computing the confidence interval by bootstrap. +#' @param bootType character string specifying the resampling procedure for the +#' data sets used for bootstrap. +#' +#' "nonparametric" - Bootstrapping is done by sampling with replacement from +#' the original data set. +#' +#' "parametric" - Bootstrapping is done by sampling from a multinomial +#' distribution with probabilites given by the number of observations for each +#' level. If all observations for one group are in the same level, shrinkage is +#' used to avoid that the resampling always produces that particular level. In +#' this case data is sampled from a multinomial distribution with probabilities +#' (1/|K|^2)/(N_i + 1/|K|) for the levels with 0 observations, and (N_i + +#' 1/|K|^2)/(N_i + 1/|K|), where N_i is the number of observatiions for the +#' particular group, and |K| is the number of levels. +#' +#' "model" - New data sets are resampled from the fitted model. +#' +#' "hierarchical" - If the experiment design is hierarchical (i.e. observations +#' are grouped according to a categorical variable, for instance litter), a +#' special resampling procedure is suggested (Blessinger 2020) +#' +#' All resampling is done within the dose values. +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @param progressInfo logical. If TRUE, a progressbar is displayed when +#' calculating bootstrap confidence intervals +#' @return A list of four elements: Results contain the estimated BMD and BMDL, +#' interval gives the lower (BMDL) and upper (BMDU) end of the confidence +#' interval of BMD. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @references Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +#' Benchmark Dose Calculation from Epidemiological Data, \emph{Biometrics} +#' \bold{57}, 698--706. +#' +#' Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +#' Data, \emph{Critical Reviews in Toxicology} \bold{32}, 133--153. +#' +#' Blessinger, T. D., Euling, S. Y., Wang, L., Hogan, K. A., Cai, C., +#' Klinefelter, G., Saillenfait, A.M. (2020) \emph{Environment International} +#' \bold{134} +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' data(guthion) +#' +#' guthionS <- subset(guthion, trt == "S") +#' +#' guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"), +#' weights = "total", dose = "dose", data = guthionS, fct = LL.2()) +#' bmdOrdinal(guthionS.LL, bmr = 0.1, backgType = "modelBased", def = "excess", R = 50) +#' +#' @export bmdOrdinal <- function(object, bmr, backgType = c("modelBased", "absolute"), backg = NA, def=c("excess", "additional", "point"), interval = c("delta", "sandwich", "profile", "bootstrap"), level = 0.95, R = 500, bootType = c("nonparametric", "parametric", "model", "hierarchical"), display = TRUE, progressInfo = TRUE){ interval <- match.arg(interval) diff --git a/R/bmdOrdinalDeltaCI.R b/R/bmdOrdinalDeltaCI.R index 5ae560f..76edd64 100644 --- a/R/bmdOrdinalDeltaCI.R +++ b/R/bmdOrdinalDeltaCI.R @@ -145,4 +145,4 @@ # CI <- tmp$confint[1,2:3] # } # CI -# } \ No newline at end of file +# } diff --git a/R/bmdOrdinalMA.R b/R/bmdOrdinalMA.R index dfda41d..5c277bb 100644 --- a/R/bmdOrdinalMA.R +++ b/R/bmdOrdinalMA.R @@ -1,3 +1,109 @@ +#' Benchmark dose estimation for ordinal dose-response models +#' +#' Estimation of benchmark doses and benchmark dose lower limit based on model +#' averaging from a user-defined list of ordinal dose-response model fits +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous, quantal, quantal and ordinal dose-response data for a range of +#' dose-response models based on the available definitions of the benchmark +#' dose concepts. +#' +#' Details on the implemented definitions and methods can be found in Crump +#' (2002) +#' +#' @param modelList A list of ordinal dose-response models of class +#' \code{drcOrdinal} +#' @param modelWeights character string specifying the type of weights used, +#' "AIC" or "BIC", or a numeric vector of the same length as the modelList with +#' user defined weights +#' @param bmr numeric value of benchmark response level for which to calculate +#' the benchmark dose +#' @param backgType character string specifying how the background level is +#' specified. The options are "modelBased" and "absolute". +#' +#' "modelBased" - the background level is obtained from the model as the level +#' for dose 0: p0 = f(0) +#' +#' "absolute" - the background level is specified by the user through the backg +#' argument. +#' @param backg numeric value specifying the background level. Defaults to 0 +#' for "absolute" background risk. +#' @param def character string specifying the definition of the benchmark dose +#' to use in the calculations. "excess", "additional" and "point" are available +#' for ordinal response. +#' +#' "excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +#' binomial response. BMR should be between 0 and 1. +#' +#' "additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +#' response. BMR should be between 0 and 1. +#' +#' "point" - The response level for which to find BMD is directly defined +#' through the BMR level: BMR = f(BMD). Works for binomial, count and +#' continuous response data. +#' @param type specify the model averaging type used for the confidence +#' intervals. Options are "Kang" (confidence intervals computed as weighted +#' averages of individual confidence intervals) and "bootstrap" +#' @param level numeric value specifying the levle of the confidence interval +#' underlying BMDL. Default is 0.95 +#' @param R integer specifying the number of data sets resampled from the +#' original data set when computing the confidence interval by bootstrap. +#' @param bootType character string specifying the resampling procedure for the +#' data sets used for bootstrap. +#' +#' "nonparametric" - Bootstrapping is done by sampling with replacement from +#' the original data set. +#' +#' "parametric" - Bootstrapping is done by sampling from a multinomial +#' distribution with probabilites given by the number of observations for each +#' level. If all observations for one group are in the same level, shrinkage is +#' used to avoid that the resampling always produces that particular level. In +#' this case data is sampled from a multinomial distribution with probabilities +#' (1/|K|^2)/(N_i + 1/|K|) for the levels with 0 observations, and (N_i + +#' 1/|K|^2)/(N_i + 1/|K|), where N_i is the number of observatiions for the +#' particular group, and |K| is the number of levels. +#' +#' All resampling is done within the dose values. +#' @param display logical. If TRUE the results are displayed; otherwise they +#' are not +#' @param progressInfo logical. If TRUE, a progressbar is displayed when +#' calculating bootstrap confidence intervals +#' @return A list of four elements: Results contain the estimated BMD and BMDL, +#' interval gives the lower (BMDL) and upper (BMDU) end of the confidence +#' interval of BMD. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @references Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +#' Benchmark Dose Calculation from Epidemiological Data, \emph{Biometrics} +#' \bold{57}, 698--706. +#' +#' Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +#' Data, \emph{Critical Reviews in Toxicology} \bold{32}, 133--153. +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' data(guthion) +#' +#' guthionS <- subset(guthion, trt == "S") +#' +#' guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"), +#' weights = "total", dose = "dose", data = guthionS, fct = LL.2()) +#' guthionS.LN <- drmOrdinal(levels = c("alive", "moribund", "dead"), +#' weights = "total", dose = "dose", data = guthionS, fct = LN.2()) +#' guthionS.W1 <- drmOrdinal(levels = c("alive", "moribund", "dead"), +#' weights = "total", dose = "dose", data = guthionS, fct = W1.2()) +#' guthionS.W2 <- drmOrdinal(levels = c("alive", "moribund", "dead"), +#' weights = "total", dose = "dose", data = guthionS, fct = W2.2()) +#' +#' bmdOrdinalMA(list(guthionS.LL, guthionS.LN, guthionS.W1, guthionS.W2), +#' modelWeights = "AIC", bmr = 0.1, +#' backgType = "modelBased", def = "excess", type = "Kang") +#' bmdOrdinalMA(list(guthionS.LL, guthionS.LN, guthionS.W1, guthionS.W2), +#' modelWeights = "AIC", bmr = 0.1, +#' backgType = "modelBased", def = "excess", type = "bootstrap", R = 50) +#' @export bmdOrdinalMA <- function(modelList, modelWeights = c("AIC", "BIC"), bmr, backgType = c("modelBased", "absolute"), backg = NA, def = c("excess", "additional", "point"), type = c("bootstrap", "Kang"), level = 0.95, R = 500, bootType = c("nonparametric", "parametric"), display = TRUE, progressInfo = TRUE){ # assertions if(!all(sapply(modelList, function(object) inherits(object, "drcOrdinal")))){ diff --git a/R/bmdProfileCI.R b/R/bmdProfileCI.R index eedbe67..ad132e2 100644 --- a/R/bmdProfileCI.R +++ b/R/bmdProfileCI.R @@ -42,4 +42,4 @@ bmdProfileCI <- function(object, slope, bmr, backgType, backg, # controlSD, upper = grid[which(grid == max(grid[accept])) + 1])$root |> try(silent = TRUE) |> as.numeric() c(BMDL = CIlower, BMDU = CIupper) -} \ No newline at end of file +} diff --git a/R/bmdProfileCIgrid.R b/R/bmdProfileCIgrid.R index 248fc31..1165313 100644 --- a/R/bmdProfileCIgrid.R +++ b/R/bmdProfileCIgrid.R @@ -112,4 +112,4 @@ bmdProfileCIgrid <- function(object, bmr, backgType = c("modelBased", "absolute" CI <- c(BMDL = min(bmdVals, na.rm = TRUE), BMDU = max(bmdVals, na.rm = TRUE)) CI -} \ No newline at end of file +} diff --git a/R/bootDataGen.R b/R/bootDataGen.R index 1c6bb6e..0122313 100644 --- a/R/bootDataGen.R +++ b/R/bootDataGen.R @@ -1,3 +1,121 @@ +#' Generate Bootstrap Data for BMD Analysis +#' +#' @description +#' Helper function for `bmdBoot` that generates bootstrap datasets from fitted +#' dose-response models. Supports multiple bootstrap methods (nonparametric, +#' parametric, and semiparametric) and handles different response types +#' (binomial, continuous, Poisson, negative binomial). +#' +#' @param object A fitted dose-response model object (typically from `drm()`) +#' containing the original data and model specifications +#' @param R integer; Number of bootstrap replicates to generate (default: 1000) +#' @param bootType character; Type of bootstrap resampling method. Options are: +#' \itemize{ +#' \item \code{"nonparametric"}: Resamples observations within dose groups +#' \item \code{"parametric"}: Generates new data from fitted distributions +#' \item \code{"semiparametric"}: Uses fitted values plus resampled residuals +#' } +#' @param aggregated logical; For binomial data, whether to return aggregated +#' (summary) format or expanded (individual observation) format (default: TRUE) +#' +#' @details +#' The function implements different bootstrap strategies based on data type and method: +#' +#' **Nonparametric Bootstrap:** +#' \itemize{ +#' \item \strong{Binomial}: Expands binomial data to individual observations, +#' resamples within dose groups, then optionally re-aggregates +#' \item \strong{Continuous/Count}: Resamples observations within dose groups +#' from the original dataset +#' } +#' +#' **Parametric Bootstrap:** +#' \itemize{ +#' \item \strong{Binomial}: Generates new binomial observations using estimated +#' success probabilities, with continuity correction (adds 0.25/0.5) for +#' boundary cases +#' \item \strong{Continuous}: Generates normal random variables using +#' dose-specific means and standard deviations from original data +#' } +#' +#' **Semiparametric Bootstrap:** +#' \itemize{ +#' \item \strong{Continuous only}: Uses fitted values plus resampled residuals +#' \item \strong{Binomial}: Not supported (throws error) +#' } +#' +#' @return A list of length R containing bootstrap datasets. Each element is a +#' data.frame with the same structure as the original data, containing: +#' \itemize{ +#' \item Dose variable (same name as original) +#' \item Response variable(s) (same name(s) as original) +#' \item For binomial data: number of successes and total observations +#' \item For multi-curve data: curve identifier (if present) +#' } +#' +#' @section Data Type Handling: +#' +#' **Binomial Data:** +#' \itemize{ +#' \item Handles both aggregated (n successes out of N trials) and expanded formats +#' \item Preserves dose group structure during resampling +#' \item Applies continuity correction in parametric bootstrap +#' } +#' +#' **Continuous Data:** +#' \itemize{ +#' \item Maintains dose group structure +#' \item Preserves within-group variability patterns +#' \item Uses original data (`origData`) when available +#' } +#' +#' **Count Data (Poisson/Negative Binomial):** +#' \itemize{ +#' \item Treated similarly to continuous data for nonparametric bootstrap +#' \item Resamples within dose groups +#' } +#' +#' @section Multi-curve Support: +#' The function handles multi-curve dose-response data by preserving curve +#' identifiers during bootstrap resampling, ensuring that the bootstrap samples +#' maintain the original experimental structure. +#' +#' @note +#' This is an internal helper function for `bmdBoot`. It assumes the input object +#' has the standard structure from `drm()` fitting, including components like +#' `data`, `origData`, `call`, `type`, etc. +#' +#' **Important considerations:** +#' \itemize{ +#' \item Semiparametric bootstrap requires model residuals and fitted values +#' \item Parametric bootstrap assumes distributional assumptions are met +#' \item Large R values may require substantial memory for complex datasets +#' } +#' +#' @seealso +#' \code{\link{bmdBoot}} for the main bootstrap BMD function, +#' +#' @examples +#' \dontrun{ +#' # Typically called internally by bmdBoot, but can be used directly: +#' +#' # Fit a dose-response model +#' model <- drm(response/total ~ dose, weights = total, +#' data = binomial_data, fct = LL.4()) +#' +#' # Generate nonparametric bootstrap samples +#' boot_data <- bootDataGen(model, R = 100, bootType = "nonparametric") +#' +#' # Generate parametric bootstrap samples +#' boot_data_param <- bootDataGen(model, R = 100, bootType = "parametric") +#' +#' # For continuous data with semiparametric bootstrap +#' cont_model <- drm(response ~ dose, data = continuous_data, fct = LL.4()) +#' boot_data_semi <- bootDataGen(cont_model, R = 100, bootType = "semiparametric") +#' +#' # Access first bootstrap sample +#' first_sample <- boot_data[[1]] +#' } bootDataGen <- function(object, R=1000, bootType="nonparametric",aggregated=TRUE){ if(bootType=="nonparametric"){ if(object$type=="binomial"){ diff --git a/R/bootDataGenHetVar.R b/R/bootDataGenHetVar.R index 5377550..2f4e4b1 100644 --- a/R/bootDataGenHetVar.R +++ b/R/bootDataGenHetVar.R @@ -47,4 +47,4 @@ bootDataGenHetVar <- function(object, R=1000, bootType=c("nonparametric", "semip } return(tmp.data) -} \ No newline at end of file +} diff --git a/R/bootDataGenOrdinal.R b/R/bootDataGenOrdinal.R index 9594c5f..902337b 100644 --- a/R/bootDataGenOrdinal.R +++ b/R/bootDataGenOrdinal.R @@ -1,6 +1,143 @@ +#' Generate Bootstrap Data for Ordinal Dose-Response Analysis +#' +#' @description +#' Helper function for `bmdOrdinal` and `bmdOrdinalMA` that generates bootstrap +#' datasets from fitted ordinal dose-response models. Supports multiple bootstrap +#' methods tailored for ordinal response data with different resampling strategies. +#' +#' @param object A fitted ordinal dose-response model object containing the original +#' data, model specifications, response levels, and fitted parameters +#' @param R integer; Number of bootstrap replicates to generate (default: 500) +#' @param bootType character; Type of bootstrap resampling method. Options are: +#' \itemize{ +#' \item \code{"nonparametric"}: Resamples individual observations within dose groups +#' \item \code{"parametric"}: Generates new observations using estimated category probabilities +#' \item \code{"model"}: Generates observations using fitted model probabilities +#' \item \code{"hierarchical"}: Hierarchical resampling accounting for block structure +#' } +#' +#' @details +#' The function implements four distinct bootstrap strategies for ordinal data: +#' +#' **Nonparametric Bootstrap:** +#' \itemize{ +#' \item Expands ordinal data to individual observations +#' \item Resamples observations within each original data row +#' \item Maintains the empirical distribution within dose groups +#' \item Most conservative approach, makes no distributional assumptions +#' } +#' +#' **Parametric Bootstrap:** +#' \itemize{ +#' \item Estimates category probabilities from original data +#' \item Applies continuity correction for boundary cases: +#' \deqn{p_{corrected} = \frac{1/K^2}{n + 1/K} \text{ when } p = 0}{p_corrected = (1/K^2)/(n + 1/K) when p = 0} +#' \deqn{p_{corrected} = \frac{n + 1/K^2}{n + 1/K} \text{ when } p = 1}{p_corrected = (n + 1/K^2)/(n + 1/K) when p = 1} +#' where K is the number of response categories and n is the sample size +#' \item Generates new observations using multinomial sampling +#' } +#' +#' **Model-Based Bootstrap:** +#' \itemize{ +#' \item Uses fitted model probabilities (\code{object$pFun}) for each dose +#' \item Generates observations directly from the fitted dose-response relationship +#' \item Assumes the fitted model accurately represents the true relationship +#' } +#' +#' **Hierarchical Bootstrap:** +#' \itemize{ +#' \item Accounts for block/cluster structure in the data +#' \item Requires \code{object$blocks} to be specified +#' \item Uses weighted resampling within dose groups +#' \item Maintains hierarchical correlation structure +#' } +#' +#' @return A list of length R containing bootstrap datasets. Each element is a +#' data.frame with the same structure as the original ordinal data, containing: +#' \itemize{ +#' \item Dose variable (same name as original) +#' \item Count columns for each response category +#' \item For hierarchical: block identifier and total counts +#' \item All columns from original data structure preserved +#' } +#' +#' @section Data Processing: +#' The function uses several data manipulation steps: +#' \itemize{ +#' \item \strong{Expansion}: Converts aggregated ordinal data to individual observations +#' \item \strong{Resampling}: Applies the specified bootstrap method +#' \item \strong{Aggregation}: Converts back to count format using \code{reshape2::dcast} +#' \item \strong{Completion}: Ensures all response categories are present (fills with 0 if missing) +#' } +#' +#' @section Dependencies: +#' This function requires the following packages: +#' \itemize{ +#' \item \code{reshape2}: For data reshaping operations +#' \item \code{dplyr}: For data manipulation (hierarchical bootstrap only) +#' \item \code{tidyr}: For data tidying operations (hierarchical bootstrap only) +#' } +#' +#' The function will stop with an informative error if required packages are not installed. +#' +#' @section Continuity Correction: +#' For parametric bootstrap, when category probabilities are 0 or 1, a continuity +#' correction is applied to prevent degenerate sampling. This ensures all categories +#' have some probability of being selected, improving bootstrap stability. +#' +#' @note +#' This is an internal helper function for ordinal BMD bootstrap procedures. It assumes +#' the input object has the standard structure from ordinal dose-response fitting, +#' including components like \code{data}, \code{levels}, \code{dose}, \code{pFun}, etc. +#' +#' **Method Selection Guidelines:** +#' \itemize{ +#' \item Use \code{"nonparametric"} for robust, assumption-free bootstrap +#' \item Use \code{"parametric"} when sample sizes are small +#' \item Use \code{"model"} to assess model-based uncertainty +#' \item Use \code{"hierarchical"} for clustered/blocked experimental designs +#' } +#' +#' @seealso +#' \code{\link{bmdOrdinal}} for ordinal BMD estimation, +#' \code{\link{bmdOrdinalMA}} for model-averaged ordinal BMD,, +#' \code{\link[reshape2]{dcast}} for data reshaping +#' +#' @examples +#' \dontrun{ +#' # Typically called internally, but can be used directly: +#' +#' # Assume you have a fitted ordinal model +#' ordinal_model <- fitOrdinalModel(response ~ dose, data = ordinal_data) +#' +#' # Generate nonparametric bootstrap samples +#' boot_data_np <- bootDataGenOrdinal(ordinal_model, R = 100, +#' bootType = "nonparametric") +#' +#' # Generate parametric bootstrap samples +#' boot_data_param <- bootDataGenOrdinal(ordinal_model, R = 100, +#' bootType = "parametric") +#' +#' # Generate model-based bootstrap samples +#' boot_data_model <- bootDataGenOrdinal(ordinal_model, R = 100, +#' bootType = "model") +#' +#' # For hierarchical data with blocks +#' boot_data_hier <- bootDataGenOrdinal(ordinal_model, R = 100, +#' bootType = "hierarchical") +#' +#' # Access first bootstrap sample +#' first_sample <- boot_data_np[[1]] +#' head(first_sample) +#' } bootDataGenOrdinal <- function(object, R = 500, bootType = c("nonparametric", "parametric", "model", "hierarchical")){ bootType <- match.arg(bootType) - + ## avoiding global binding of variables issues + variable <- NULL + row.num <- NULL + value <- NULL + row.orig <- NULL + rm(list=c("variable", "row.num", "value", "row.orig")) if(!requireNamespace("reshape2")){ stop('package "reshape2" must be installed to use bootstrapping with ordinal dose-response model') } @@ -82,6 +219,8 @@ bootDataGenOrdinal <- function(object, R = 500, bootType = c("nonparametric", "p } resample_fun <- function(levels, dose, weights, blocks, data){ + name <- NULL + rm(list("name")) data %>% dplyr::mutate(row.orig = 1:n()) %>% dplyr::group_by(.data[[dose]]) %>% diff --git a/R/coef.drcHetVar.R b/R/coef.drcHetVar.R index 9cb2bcb..032786a 100644 --- a/R/coef.drcHetVar.R +++ b/R/coef.drcHetVar.R @@ -1,7 +1,61 @@ +#' Extract Coefficients from Heteroscedastic Dose-Response Models +#' +#' @description +#' S3 method to extract coefficients from fitted heteroscedastic dose-response models. +#' This method extends the generic `coef()` function to handle `drcHetVar` objects, +#' which contain both dose-response curve parameters and variance model parameters. +#' +#' @param object An object of class "drcHetVar" containing a fitted heteroscedastic +#' dose-response model with separate curve and variance parameters +#' @param ... Additional arguments (currently unused but included for S3 method consistency) +#' +#' @details +#' Heteroscedastic dose-response models fit two components simultaneously: +#' \itemize{ +#' \item \strong{Curve parameters}: Describe the dose-response relationship +#' (e.g., slope, inflection point, asymptotes) +#' \item \strong{Variance parameters}: Model how the response variance changes +#' with dose or fitted values +#' } +#' +#' This method combines both parameter sets into a single named vector for easy +#' access and interpretation. Parameter names are prefixed to distinguish between +#' the two model components: +#' \itemize{ +#' \item \code{"Curve:"} prefix for dose-response curve parameters +#' \item \code{"Sigma:"} prefix for variance model parameters +#' } +#' +#' @return A named numeric vector containing all model parameters: +#' \itemize{ +#' \item Curve parameters with names prefixed by "Curve:" +#' \item Variance parameters with names prefixed by "Sigma:" +#' } +#' +#' @note +#' This method assumes the `drcHetVar` object contains: +#' \itemize{ +#' \item \code{curvePar}: Named vector of curve parameters +#' \item \code{sigmaPar}: Named vector of variance parameters +#' } +#' +#' The original parameter names from the fitting procedure are preserved but +#' prefixed for clarity. +#' +#' @seealso +#' \code{\link{coef}} for the generic coefficient extraction function, +#' +#' @examples +#' \dontrun{ +#' # Assuming you have a fitted heteroscedastic model +#' } +#' +#' @method coef drcHetVar +#' @export coef.drcHetVar <- function(object, ...){ curvePar <- object$curvePar names(curvePar) <- paste0("Curve:", names(curvePar)) sigmaPar <- object$sigmaPar names(sigmaPar) <- paste0("Sigma:", names(sigmaPar)) c(curvePar, sigmaPar) -} \ No newline at end of file +} diff --git a/R/drmHetVar.R b/R/drmHetVar.R index 25ebf0e..28605a7 100644 --- a/R/drmHetVar.R +++ b/R/drmHetVar.R @@ -1,3 +1,75 @@ +#' Dose response modeling with heterogeneous variance +#' +#' Fit a dose-response model with heterogeneous variance dependending on dose +#' level. +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' REFERENCES TO BE ADDED/WRITTEN +#' +#' @param formula formula for the dose-response relationship +#' @param var.formula one-sided formula specifying the dependance of the dose +#' values and/or the fitted values on the point-wise standard error +#' @param data data.frame containing the observations +#' @param fct a list with three or more elements specifying the non-linear +#' function, the accompanying self starter function, the names of the parameter +#' in the non-linear function and, optionally, the first and second derivatives +#' as well as information used for calculation of ED values. Currently +#' available functions include, among others, the four- and five-parameter +#' log-logistic models LL.4, LL.5 and the Weibull model W1.4. Use +#' drc::getMeanFunctions for a full list. +#' @param curveStart numerical of length equal to the number of parameters for +#' the curve. Starting values for the curve parameters (optional). +#' @return dose-response model with a heterogeneous variance structure of class +#' \code{drcHetVar}. +#' +#' The primary objective is to use this model for benchmark dose estimation +#' based on the hybrid method with a heterogeneous variance structure. This can +#' be done using the \code{bmdHetVar} function. +#' +#' A plot method is available, which can be useful for assessing the fit of the +#' variance structure. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' library(bmd) +#' # install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT. +#' +#' # ryegrass data +#' set.seed(123) +#' ryegrass.LL.4.hetVar <- drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), +#' data = ryegrass, fct = LL.4()) +#' plot(ryegrass.LL.4.hetVar) +#' bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1, +#' def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE) +#' bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1, +#' def = "hybridExc", R = 50, level = 0.95, +#' bootType = "parametric", progressInfo = TRUE, display = TRUE) # parametric bootstrap +#' +#' # barley data +#' set.seed(123) +#' barley.LL.4.hetVar <- drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), data = barley, fct = LL.4()) +#' plot(barley.LL.4.hetVar) +#' +#' # GiantKelp data +#' set.seed(123) +#' GiantKelp.LL.4.hetVarSq <- drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2), +#' data = GiantKelp, fct = LL.4()) +#' plot(GiantKelp.LL.4.hetVarSq) +#' +#' GiantKelp.LL.4.hetVarLogSq <- drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2), +#' data = GiantKelp, fct = LL.4()) +#' plot(GiantKelp.LL.4.hetVarLogSq) +#' +#' +#' +#' @export drmHetVar <- function(formula, var.formula, data, fct, curveStart = NULL) { call <- match.call() @@ -119,4 +191,4 @@ drmHetVar <- function(formula, var.formula, data, fct, curveStart = NULL) { class(object) <- c("drcHetVar", "drc") return(object) -} \ No newline at end of file +} diff --git a/R/drmMMRE.R b/R/drmMMRE.R index bee7a26..a41af51 100644 --- a/R/drmMMRE.R +++ b/R/drmMMRE.R @@ -1,6 +1,64 @@ +#' Dose response modeling with hierarchical variance structure +#' +#' Fits a meta-analytic hierarchical dose-response model. +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' Fitting the meta-analytic model relies on a multivariate meta-analytic model +#' provided by the function \code{rma.mv} in the "metafor" package, which can +#' be installed by running \code{remotes::install_github("wviechtb/metafor")} +#' +#' Viechtbauer, W. (2010). Conducting meta-analyses in R with the metafor +#' package. Journal of Statistical Software, 36(3), 1-48. +#' doi:10.18637/jss.v036.i03 +#' +#' @param formula a symbolic description of the model to be fit of the form +#' 'response ~ dose' +#' @param exp_id the name of the column in the data set that specifies the +#' hierarchical structure of the data +#' @param data a data frame containing the variables in the model. +#' @param fct a list with three or more elements specifying the non-linear +#' function, the accompanying self starter function, the names of the parameter +#' in the non-linear function and, optionally, the first and second derivatives +#' as well as information used for calculation of ED values. Currently +#' available functions include, among others, the four- and five-parameter +#' log-logistic models LL.4, LL.5 and the Weibull model W1.4. Use +#' drc::getMeanFunctions for a full list. +#' @param type a character string specifying the distribution of the data. The +#' default is "continuous", corresponding to assuming a normal distribution. +#' "binary" imply a binomial distribution. +#' @return meta-analytic dose-response model with a hierarchical variance +#' structure of class \code{drcMMRE}. +#' +#' The primary objective is to use this model for benchmark dose estimation +#' based on dose-response data with a heterogeneous variance structure. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' library(metafor) +#' library(bmd) +#' +#' set.seed(1) +#' data0 <- data.frame(x = rep(drcData::ryegrass$conc, 2), +#' y = rep(drcData::ryegrass$rootl, 2) + +#' c(rnorm(n = nrow(drcData::ryegrass), mean = 2, sd = 0.5), +#' rnorm(n = nrow(drcData::ryegrass), mean = 2.7, sd = 0.7)), +#' EXP_ID = rep(as.character(1:2), each = nrow(drcData::ryegrass))) +#' +#' modMMRE <- drmMMRE(y~x, exp_id = EXP_ID, data = data0, fct = LL.4()) +#' bmd(modMMRE, bmr = 0.1, backgType = "modelBased", def = "relative") +#' +#' @export drmMMRE <- function(formula, exp_id, data, fct, type = c("continuous", "binomial")){ call_expr <- match.call() - + Estimate <- NULL # to avoid global binding of variables issues + rm(list="Estimate") # assertions if (!inherits(formula, "formula")) { stop("Argument 'formula' must be a formula.") @@ -103,7 +161,21 @@ drmMMRE <- function(formula, exp_id, data, fct, type = c("continuous", "binomial object } - +#' Extract Variance-Covariance Matrix from drcMMRE Objects +#' +#' @description +#' S3 method to extract the variance-covariance matrix from fitted drcMMRE objects +#' by delegating to the underlying model-averaged model. +#' +#' @param object An object of class "drcMMRE" +#' @param ... Additional arguments (currently unused) +#' +#' @return The variance-covariance matrix of the model parameters. +#' +#' @seealso \code{\link{vcov}} for the generic function +#' +#' @method vcov drcMMRE +#' @export vcov.drcMMRE <- function(object, ...){ vcov(object$MV_MA_model) } diff --git a/R/drmOrdinal.R b/R/drmOrdinal.R index 08a711d..76127e6 100644 --- a/R/drmOrdinal.R +++ b/R/drmOrdinal.R @@ -1,3 +1,48 @@ +#' Fitting ordinal dose-response models +#' +#' A model fitting function for analysis of ordinal dose-response data. +#' +#' This functions fits a dose-response model for ordinal dose-response data by +#' fitting a series of binomial dose-response models. +#' +#' @param levels a character vector of the levels of the response variable in +#' increasing order, as they appear in the supplied data set +#' @param dose a character string specifying the column with the dose values in +#' the supplied data set +#' @param weights a character string specifying the column containing the +#' number of observations pr. group +#' @param blocks a character string specifying the column containing the blocks +#' of the experiment, if available (optional) +#' @param data a dataframe containing the observations +#' @param fct a list with three or more elements specifying the non-linear +#' function, the accompanying self starter function, the names of the parameter +#' in the non-linear function and, optionally, the first and second derivatives +#' as well, for the individual fitted curves. For more information see the help +#' page for the "drm" function in the "drc" package. Currently available +#' functions for ordinal dose-response models include, among others, the +#' log-logistic models \code{\link[drc]{LL.4}}, the log-normal model +#' \code{\link[drc]{LN.4}} and the two Weibull models \code{\link[drc]{W1.4}} +#' and \code{\link[drc]{W2.4}}. Use \code{\link[drc]{getMeanFunctions}} for a +#' full list. +#' @param p.epsilon numeric value specifying the lower bound for the +#' probabilites for each level returned by the function pFun created when +#' fitting the model. Default value is 10^(-16) +#' @return An object of (S3) class 'drcOrdinal'. +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @keywords models nonlinear +#' @examples +#' +#' library(drc) +#' library(drcData) +#' data(guthion) +#' guthionS <- subset(guthion, trt == "S") +#' +#' guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"), weights = "total", +#' dose = "dose", data = guthionS, fct = LL.2()) +#' +#' plot(guthionS.LL, xlim = c(15,55)) # uses ggplot +#' +#' @export drmOrdinal <- function(levels, dose, weights, blocks, data, fct, p.epsilon = 1e-16){ if(missing(blocks)){ blocks = NULL diff --git a/R/expandBinomial.R b/R/expandBinomial.R index 68fe8d7..79d0e6c 100644 --- a/R/expandBinomial.R +++ b/R/expandBinomial.R @@ -1,3 +1,24 @@ +#' Utility function +#' +#' Utility function for expanding binomial data +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' @param data a data.frame +#' @param number the name of the column in the data set containing the number +#' of affected individuals per dose level +#' @param total the name of the column in the data set containing the total +#' number of individuals per dose level +#' @param dose the name of the column in the data set containing the dose +#' values +#' @param curveid the name of the column in the data set specifying the curveid +#' (if available) +#' @return data.frame +#' @author Signe M. Jensen and Jens Riis Baalkilde +#' @keywords models nonlinear expandBinomial <- function(data, number, total, dose, curveid = character(0)){ if(length(curveid) == 0){ df<-data.frame(number = c(rep(rep(1,length(data[,number])), data[,number]), diff --git a/R/getBmrScaledList.R b/R/getBmrScaledList.R index 75f2258..439b008 100644 --- a/R/getBmrScaledList.R +++ b/R/getBmrScaledList.R @@ -270,4 +270,4 @@ getBmrScaledList <- function(object, bmr, backgType = c("modelBased", "absolute" } list(bmrScaledMat = bmrScaledMat, dBmrScaledMat = dBmrScaledMat) -} \ No newline at end of file +} diff --git a/R/getBmrScaledRepar.R b/R/getBmrScaledRepar.R index 277ecc2..d54d8b1 100644 --- a/R/getBmrScaledRepar.R +++ b/R/getBmrScaledRepar.R @@ -179,4 +179,4 @@ getBmrScaledRepar <- function(cdVec, slope, bmr, backgType, } bmrScaled -} \ No newline at end of file +} diff --git a/R/getFctDerivx.R b/R/getFctDerivx.R index 1003f6a..e65fb53 100644 --- a/R/getFctDerivx.R +++ b/R/getFctDerivx.R @@ -9,32 +9,29 @@ getFctDerivx <- function(object){ # Log-logistic if(identical(class(object$fct), "llogistic")){ if(substr(object$fct$name, 3,3) == "."){ - derivx <- function(x, parm) + derivx <- function(dose, parm) # Changed from 'x' to 'dose' { parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE) parmMat[, notFixed] <- parm - # bNeg <- parmMat[, 1] < 0 - # parmMat[bNeg, 1] <- -parmMat[bNeg, 1] - temp1 <- x/parmMat[, 4] + temp1 <- dose/parmMat[, 4] # Changed from 'x' to 'dose' temp2 <- 1 + (temp1)^parmMat[, 1] temp3 <- parmMat[, 5]*(temp2^(parmMat[, 5] - 1))*(parmMat[, 1]/parmMat[, 4])*temp1^(parmMat[, 1] - 1) temp4 <- temp2^(2*parmMat[, 5]) (-(parmMat[, 3] - parmMat[, 2])*temp3)/temp4 retVec <- (-(parmMat[, 3] - parmMat[, 2])*temp3)/temp4 - # retVec[bNeg] <- -retVec[bNeg] retVec } } else if(substr(object$fct$name, 3,3) == "2"){ - derivx <- function(x, parm) + derivx <- function(dose, parm) # Changed from 'x' to 'dose' { parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE) parmMat[, notFixed] <- parm - temp1 <- exp(parmMat[, 1]*(log(x) - parmMat[, 4])) # x/parmMat[, 4] + temp1 <- exp(parmMat[, 1]*(log(dose) - parmMat[, 4])) # Changed from 'x' to 'dose' temp2 <- 1 + temp1 - temp3 <- parmMat[, 5]*(temp2^(parmMat[, 5] - 1))*temp1*parmMat[, 1]/x + temp3 <- parmMat[, 5]*(temp2^(parmMat[, 5] - 1))*temp1*parmMat[, 1]/dose # Changed from 'x' to 'dose' temp4 <- temp2^(2*parmMat[, 5]) (-(parmMat[, 3] - parmMat[, 2])*temp3)/temp4 @@ -52,7 +49,7 @@ getFctDerivx <- function(object){ dFct <- function (dose, b, c, d, e) { .expr1 <- d - c - .expr5 <- b * (log(dose) - transfe(e)) + .expr5 <- b * (log(dose) - log(e)) # Fixed: changed 'transfe(e)' to 'log(e)' .value <- c + .expr1 * pnorm(.expr5) .grad <- array(0, c(length(.value), 1L), list(NULL, c("dose"))) .grad[, "dose"] <- .expr1 * (dnorm(.expr5) * (b * (1/dose))) @@ -65,45 +62,45 @@ getFctDerivx <- function(object){ # Weibull1 if(identical(class(object$fct), "Weibull-1")){ - derivx <- function(x, parm) + derivx <- function(dose, parm) # Changed from 'x' to 'dose' { parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE) parmMat[, notFixed] <- parm .expr1 <- parmMat[, 3] - parmMat[, 2] # d - c - .expr6 <- exp(parmMat[, 1] * (log(x) - log(parmMat[, 4]))) + .expr6 <- exp(parmMat[, 1] * (log(dose) - log(parmMat[, 4]))) # Changed from 'x' to 'dose' .expr8 <- exp(-.expr6) .value <- parmMat[, 2] + .expr1 * .expr8 - .grad <- array(0, c(length(.value), 1L), list(NULL, c("x"))) - .grad[, "x"] <- -(.expr1 * (.expr8 * (.expr6 * (parmMat[, 1] * (1/x))))) + .grad <- array(0, c(length(.value), 1L), list(NULL, c("dose"))) # Changed from 'x' to 'dose' + .grad[, "dose"] <- -(.expr1 * (.expr8 * (.expr6 * (parmMat[, 1] * (1/dose))))) # Changed from 'x' to 'dose' .grad } } # Weibull2 if(identical(class(object$fct), "Weibull-2")){ - derivx <- function(x, parm) + derivx <- function(dose, parm) # Changed from 'x' to 'dose' { parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE) parmMat[, notFixed] <- parm .expr1 <- parmMat[, 3] - parmMat[, 2] - .expr6 <- exp(parmMat[, 1] * (log(x) - log(parmMat[, 4]))) + .expr6 <- exp(parmMat[, 1] * (log(dose) - log(parmMat[, 4]))) # Changed from 'x' to 'dose' .expr8 <- exp(-.expr6) .value <- parmMat[, 2] + .expr1 * (1 - .expr8) - .grad <- array(0, c(length(.value), 1L), list(NULL, c("x"))) - .grad[, "x"] <- .expr1 * (.expr8 * (.expr6 * (parmMat[, 1] * (1/x)))) + .grad <- array(0, c(length(.value), 1L), list(NULL, c("dose"))) # Changed from 'x' to 'dose' + .grad[, "dose"] <- .expr1 * (.expr8 * (.expr6 * (parmMat[, 1] * (1/dose)))) # Changed from 'x' to 'dose' .grad } } if(identical(class(object$fct), "Boltzmann")){ - derivx <- function(x, parm) + derivx <- function(dose, parm) # Changed from 'x' to 'dose' { parmMat <- matrix(parmVec, nrow(parm), numParm, byrow = TRUE) parmMat[, notFixed] <- parm - temp1 <- exp(parmMat[, 1]*(x - parmMat[, 4])) + temp1 <- exp(parmMat[, 1]*(dose - parmMat[, 4])) # Changed from 'x' to 'dose' (-parmMat[, 5]*(parmMat[, 3] - parmMat[, 2])*temp1*parmMat[, 1])/((1 + temp1)^(parmMat[, 5] + 1)) } @@ -149,6 +146,6 @@ getFctDerivx <- function(object){ attr(dFct(dose, parmMat[, 1], parmMat[, 2], parmMat[, 3], parmMat[, 4]), "gradient") } } - + derivx } \ No newline at end of file diff --git a/R/getStackingWeights.R b/R/getStackingWeights.R index 80e006f..41eb0f3 100644 --- a/R/getStackingWeights.R +++ b/R/getStackingWeights.R @@ -200,6 +200,46 @@ getDataSplits <- function(object, nSplits){ splitList } + + +#' Model-average dose-response curves +#' +#' Computing stacking weights. +#' +#' The aim to provide an R package calculating the benchmark dose (BMD) and the +#' lower limit of the corresponding 95\% confidence interval (BMDL) for +#' continuous and quantal dose-response data for a range of dose-response +#' models based on the available definitions of the benchmark dose concepts. +#' +#' Details on the implemented definitions and methods can be found in Crump +#' (2002) +#' +#' @param modelList list of models of class \code{drc} +#' @param nSplits integer. The Stacking Weights are based on V-fold +#' cross-validation. The nSplits argument sets the number V of data splits used +#' in the cross validation. +#' @return numeric +#' @author Jens Riis Baalkilde +#' @keywords models nonlinear model averaging +#' @examples +#' +#' library(bmd) +#' library(drc) +#' library(drcData) +#' +#' # fit models to aconiazide data +#' aconiazide.LL.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LL.3()) +#' aconiazide.LN.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LN.3()) +#' aconiazide.W1.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W1.3()) +#' aconiazide.W2.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W2.3()) +#' +#' getStackingWeights(modelList = list(aconiazide.LL.3, aconiazide.LN.3, +#' aconiazide.W1.3, aconiazide.W2.3)) +#' getStackingWeights(modelList = list(aconiazide.LL.3, aconiazide.LN.3, +#' aconiazide.W1.3, aconiazide.W2.3), +#' nSplits = 7) +#' +#' @export getStackingWeights <- function(modelList, nSplits = 2){ if(!requireNamespace("CVXR")){ stop('package "CVXR" must be installed to estimate stacking weights') diff --git a/R/invBmd.R b/R/invBmd.R index e213a3f..13a1ca3 100644 --- a/R/invBmd.R +++ b/R/invBmd.R @@ -1,3 +1,139 @@ +#' Inverse Regression for Benchmark Dose Calculation +#' +#' @description +#' Helper function for `bmd` that calculates Benchmark Dose (BMD) and confidence +#' intervals using inverse regression. This function handles multiple BMD definitions +#' and background response types by dynamically modifying the dose-response function +#' and its derivatives to solve for the dose corresponding to a specified benchmark response. +#' +#' @param object A fitted dose-response model object containing the model function, +#' derivatives, coefficients, and data information +#' @param bmr numeric; Benchmark response level for which to calculate the BMD +#' @param level numeric; Confidence level for BMD confidence intervals (default: 0.9) +#' @param slope character; Direction of dose-response relationship, either +#' "increasing" or "decreasing" +#' @param backgType character; Type of background response calculation. Options include: +#' "modelBased", "hybridSD", "absolute" +#' @param backg numeric; Background response value (used with certain backgType options). +#' Default: NA +#' @param catLev numeric; Category level for multi-level responses. Default: NA +#' @param extFactor numeric; Extension factor for maximum dose search range (default: 10) +#' @param def character; BMD definition type. Options include: +#' \itemize{ +#' \item "additional"/"added": Additional risk over background +#' \item "excess": Excess risk over background +#' \item "relative": Relative change from background +#' \item "extra": Extra risk (between background and maximum) +#' \item "hybridAdd": Hybrid additional risk using statistical criteria +#' \item "hybridExc": Hybrid excess risk using statistical criteria +#' \item "point": Point estimate (not supported for inverse regression) +#' } +#' @param useSD numeric; Standard deviation value used in hybrid definitions +#' @param sandwich.vcov logical; Whether to use sandwich variance-covariance matrix +#' for robust standard errors (default: FALSE) +#' +#' @details +#' The function implements inverse regression by solving: +#' \deqn{f(BMD) = BMR}{f(BMD) = BMR} +#' where f is the transformed dose-response function based on the specified definition. +#' +#' **BMD Definitions:** +#' +#' **Additional Risk:** \deqn{f(x) = |f_0(0) - f_0(x)|}{f(x) = |f_0(0) - f_0(x)|} +#' +#' **Excess Risk:** \deqn{f(x) = \frac{|f_0(0) - f_0(x)|}{f_0(0)}}{f(x) = |f_0(0) - f_0(x)|/f_0(0)} (decreasing) +#' \deqn{f(x) = \frac{f_0(x) - f_0(0)}{1 - f_0(0)}}{f(x) = (f_0(x) - f_0(0))/(1 - f_0(0))} (increasing) +#' +#' **Relative Risk:** \deqn{f(x) = \frac{|f_0(0) - f_0(x)|}{f_0(0)}}{f(x) = |f_0(0) - f_0(x)|/f_0(0)} +#' +#' **Extra Risk:** \deqn{f(x) = \frac{|f_0(0) - f_0(x)|}{|f_0(0) - f_0(\infty)|}}{f(x) = |f_0(0) - f_0(x)|/|f_0(0) - f_0(infinity)|} +#' +#' **Hybrid Definitions:** Use normal distribution probabilities: +#' \deqn{f(x) = \Phi\left(\frac{f_0(0) - k \cdot SD - f_0(x)}{SD}\right) - (1-\Phi(k))}{f(x) = Phi((f_0(0) - k*SD - f_0(x))/SD) - (1-Phi(k))} +#' where k is the number of standard deviations (default: 2). +#' +#' @return A matrix with 1 row and 3 columns: +#' \itemize{ +#' \item \strong{BMD}: Benchmark dose estimate +#' \item \strong{BMDL}: Lower confidence limit for BMD +#' \item \strong{BMDU}: Upper confidence limit for BMD +#' } +#' +#' If root finding fails for confidence limits, BMDL is set to 0 and BMDU to Inf. +#' +#' @section Function Modification: +#' The function dynamically modifies the model's derivative function to account +#' for different BMD definitions by: +#' \itemize{ +#' \item Parsing the derivative function body +#' \item Adding appropriate transformation terms +#' \item Handling parameter indexing for fixed vs. estimated parameters +#' \item Supporting both 4-parameter and 5-parameter models +#' } +#' +#' @section Confidence Intervals: +#' Confidence intervals are calculated using the delta method: +#' \deqn{CI = BMD \pm t_{\alpha/2} \sqrt{h(BMD)^T \Sigma h(BMD)}}{CI = BMD +/- t * sqrt(h(BMD)' * Sigma * h(BMD))} +#' where h(BMD) is the gradient vector and Σ is the variance-covariance matrix. +#' +#' For continuous data, t-distribution quantiles are used; for other data types, +#' normal distribution quantiles are used. +#' +#' @section Error Handling: +#' The function includes several error checks: +#' \itemize{ +#' \item Stops if "point" definition is used (not supported) +#' \item Stops if hybrid definitions are used without appropriate backgType +#' \item Stops if no background value is provided when required +#' \item Stops if no solution exists for the specified BMR +#' } +#' +#' @note +#' This is an internal helper function for BMD calculation. It assumes the input +#' object has the standard structure from dose-response model fitting, including +#' components like `fct`, `dataList`, `type`, etc. +#' +#' **Important considerations:** +#' \itemize{ +#' \item The search range is limited to `[0, extFactor × max(dose)]` +#' \item Hybrid definitions require careful specification of useSD and backg +#' \item Function modification uses string manipulation and may be sensitive to model structure +#' } +#' +#' @seealso +#' \code{\link{bmd}} for the main BMD calculation function, +#' \code{\link{uniroot}} for the root finding algorithm, +#' \code{\link{vcov}} for variance-covariance matrix extraction, +#' \code{\link[sandwich]{sandwich}} for robust variance estimation +#' +#' @examples +#' \dontrun{ +#' # Typically called internally by bmd(), but can be used directly: +#' # Need to be updated +#' # Fit a dose-response model +#' model <- drm(response ~ dose, data = dose_data, fct = LL.4()) +#' +#' # Calculate BMD for 10% additional risk +#' bmd_result <- invBmd(object = model, +#' bmr = 0.1, +#' level = 0.9, +#' slope = "increasing", +#' def = "additional", +#' useSD = sd(model$data$response)) +#' +#' # Extract results +#' bmd_estimate <- bmd_result[1, "BMD"] +#' bmd_lower <- bmd_result[1, "BMDL"] +#' bmd_upper <- bmd_result[1, "BMDU"] +#' +#' # Using hybrid definition with 1.5 standard deviations +#' bmd_hybrid <- invBmd(object = model, +#' bmr = 0.05, +#' def = "hybridAdd", +#' backgType = "hybridSD", +#' backg = 1.5, +#' useSD = sd(model$data$response)) +#' } invBmd <- function(object, bmr, level=0.9, slope, backgType="modelBased", backg=NA, catLev=NA, extFactor=10, def, useSD=useSD, sandwich.vcov=FALSE){ @@ -559,7 +695,7 @@ invBmd <- function(object, bmr, level=0.9, slope, backgType="modelBased", # g1<-function(x){as.numeric(g(x, matrix(coef(object), 1, length(coef(object)))))} if(sandwich.vcov){ j1<-function(x){sqrt(as.vector(h(x, matrix(coef(object), 1, length(coef(object)))))%*% - sandwich(object)%*% + sandwich::sandwich(object)%*% as.vector(h(x, matrix(coef(object), 1, length(coef(object))))))} } else{ j1<-function(x){sqrt(as.vector(h(x, matrix(coef(object), 1, length(coef(object)))))%*% diff --git a/R/logLik.drcHetVar.R b/R/logLik.drcHetVar.R index 8838022..9cc096b 100644 --- a/R/logLik.drcHetVar.R +++ b/R/logLik.drcHetVar.R @@ -1,11 +1,39 @@ +#' Log-Likelihood Method for drcHetVar Objects +#' +#' Extracts the log-likelihood from drcHetVar model objects. +#' +#' @param object A drcHetVar model object +#' @param ... Additional arguments (not used) +#' +#' @return The log-likelihood value +#' @export logLik.drcHetVar <- function(object, ...){ - object$sumList$numObs/2 * log(2*pi) - object$value/2 } +#' AIC Method for drcHetVar Objects +#' +#' Extracts the AIC from drcHetVar model objects. +#' +#' @param object A drcHetVar model object +#' @param ... Additional arguments (not used) +#' @param k Numeric value for penalty term in AIC calculation (default is 2) +#' +#' @return The log-likelihood value +#' @export AIC.drcHetVar <- function(object, ..., k = 2){ 2*object$sumList$numPar - k*logLik(object) } +#' BIC Method for drcHetVar Objects +#' +#' Extracts the BIC from drcHetVar model objects. +#' +#' @param object A drcHetVar model object +#' @param ... Additional arguments (not used) +#' +#' @return The log-likelihood value +#' @export BIC.drcHetVar <- function(object, ...){ object$sumList$numPar*log(object$sumList$numObs) - 2*logLik(object) } diff --git a/R/logLik.drcOrdinal.R b/R/logLik.drcOrdinal.R index b6eda0e..c6178c0 100644 --- a/R/logLik.drcOrdinal.R +++ b/R/logLik.drcOrdinal.R @@ -1,3 +1,12 @@ +#' Log-Likelihood Method for drcOrdinal Objects +#' +#' Extracts the log-likelihood from drcOrdinal model objects. +#' +#' @param object A drcOrdinal model object +#' @param ... Additional arguments (not used) +#' +#' @return The log-likelihood value +#' @export logLik.drcOrdinal <- function(object, ...){ dots <- list(...) if (!is.null(dots$epsilon)){ diff --git a/R/monotonicityTest.R b/R/monotonicityTest.R index c0edd37..9b69989 100644 --- a/R/monotonicityTest.R +++ b/R/monotonicityTest.R @@ -1,3 +1,51 @@ +#' Test for Monotonicity of Relationship Between Two Variables +#' +#' Conducts a test for monotonicity between a numeric independent variable +#' \code{x} and a numeric dependent variable \code{y} using specified +#' statistical tests. +#' +#' The function tests the monotonicity of the relationship between \code{x} and +#' \code{y} based on the specified test: \itemize{ \item \code{"jonckheere"}: +#' Uses the Jonckheere-Terpstra test to assess monotonic trends. \item +#' \code{"bartholomew"}: Uses Bartholomew's test to assess monotonicity. } +#' +#' The direction of the monotonicity (increasing or decreasing) is determined +#' by the sign of the coefficient from a simple linear model \code{lm(y ~ x)}. +#' +#' @param x A numeric vector or the name of the independent variable (if +#' \code{data} is provided). +#' @param y A numeric vector or the name of the dependent variable (if +#' \code{data} is provided). +#' @param data An optional data frame containing the variables \code{x} and +#' \code{y}. If provided, \code{x} and \code{y} should be column names in +#' \code{data}. +#' @param test A character string specifying the test to use. Must be one of +#' \code{"jonckheere"} (default) or \code{"bartholomew"}. +#' @param level Significance level for the test. Defaults to 0.05. +#' @param ... Additional arguments passed to the underlying test functions. +#' @return A list with the following components: \item{p.value}{The p-value of +#' the test.} \item{acceptMonotonicity}{A logical value indicating whether +#' monotonicity is accepted (\code{TRUE}) or rejected (\code{FALSE}) based on +#' the specified significance level.} +#' @author Jens Riis Baalkilde +#' @seealso \code{.jonckheereTest}, \code{.bartholomewTest} +#' @references A. R. Jonckheere (1954). "A Distribution-Free k-Sample Test +#' Against Ordered Alternatives." D. J. Bartholomew (1961). "Ordered tests in +#' the analysis of variance." OECD (2006). Rapport No. 54, Annexes. +#' @keywords monotonicity, trend test +#' @examples +#' +#' # Example with custom data +#' x <- c(1, 2, 3, 4, 5) +#' y <- c(2, 4, 6, 8, 10) +#' result <- monotonicityTest(x, y, test = "jonckheere") +#' print(result) +#' +#' data <- data.frame(x = c(1, 2, 3, 4, 5), y = c(10, 9, 8, 7, 6)) +#' result <- monotonicityTest("conc", "rootl", data = drcData::ryegrass, test = "bartholomew") +#' print(result) +#' +#' @export monotonicityTest <- function(x, y, data, test = c("jonckheere", "bartholomew"), level = 0.05, ...){ # , "drc", "quad" if(!missing(data)){ x <- data[[x]] diff --git a/R/plot.bmd.R b/R/plot.bmd.R index cbb194f..03b14c8 100644 --- a/R/plot.bmd.R +++ b/R/plot.bmd.R @@ -1,3 +1,42 @@ +#' Plotting method for benchmark doses modeling object +#' +#' \code{plot.bmd} displays benchmark dose values with options to plot +#' confidence intervals as well. +#' +#' This function is a simple function to plot benchmark dose values along with +#' the fitted curve. +#' +#' @aliases plot.bmd +#' @param x an object of class 'bmd'. +#' @param ... arguments to be passed on to \code{plot.drc}, if \code{add = +#' FALSE} +#' @param interval option to plot only the lower limit of the confidence +#' interval for the benchmark dose ("BMDL", default), both limit of the +#' confidence interval ("twosided"), or no confidence interval ("none"). +#' @return Creates a plot. No value returned. +#' @author Jens Riis Baalkilde. +#' @keywords ggplot +#' @export +#' @examples +#' +#' library(drc) +#' library(drcData) +#' +#' ## Fitting model and calculating BMD. +#' model <- drm(rootl ~ conc, data = ryegrass, fct = LL.4()) +#' bmd0 <- bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative") +#' +#' ## Plotting +#' plot(bmd0) +#' +#' # Plot both limits of confidence interval +#' plot(bmd0, interval = "twosided") +#' +#' # Pass argument to plot.bmd to plot confidence band around curve +#' plot(bmd0, type = "confidence") +#' +#' +#' plot.bmd <- function(x, ..., interval = c("BMDL", "twosided", "none")){ object <- x model <- object$model diff --git a/R/plot.drcHetVar.R b/R/plot.drcHetVar.R index cafc325..3f2ad6c 100644 --- a/R/plot.drcHetVar.R +++ b/R/plot.drcHetVar.R @@ -1,3 +1,12 @@ +#' Plot Method for drcHetVar Objects +#' +#' Plots the fitted dose-response curve for drcHetVar model objects. +#' +#' @param x A drcHetVar model object +#' @param ... Additional graphical parameters passed to plot +#' +#' @return Invisibly returns the x object +#' @export plot.drcHetVar <- function(x, ...){ object <- x dots <- list(...) @@ -6,7 +15,8 @@ plot.drcHetVar <- function(x, ...){ } else { gridsize <- 300 } - + sigma0 <- NULL ## avoiding global binding issues + rm(list="sigma0") # Add assertion of gridExtra if(!requireNamespace("gridExtra")){ stop('package "gridExtra" must be installed to plot drcHetVar object') @@ -57,4 +67,4 @@ plot.drcHetVar <- function(x, ...){ (gridExtra::grid.arrange(p1, p2)) invisible(list(p1,p2)) -} \ No newline at end of file +} diff --git a/R/plot.drcOrdinal.R b/R/plot.drcOrdinal.R index cf9c7ed..abbdde2 100644 --- a/R/plot.drcOrdinal.R +++ b/R/plot.drcOrdinal.R @@ -1,9 +1,24 @@ + +#' Plot Method for drcOrdinal Objects +#' +#' Plots the fitted dose-response curve for drcOrdinal model objects. +#' +#' @param x A drcOrdinal model object +#' @param ... Additional graphical parameters passed to plot +#' +#' @return Invisibly returns the x object +#' @export plot.drcOrdinal <- function(x, ...){ object <- x dots <- list(...) col_pal <- dots$col_pal xlim <- dots$xlim - + ## avoiding global binding of variables issues + name <- NULL + value <- NULL + dose <- NULL + prop <- NULL + rm(list=c("name", "value", "dose", "prop")) if(!requireNamespace("scales")){ stop('package "scales" must be installed to plot drcOrdinal object') } @@ -20,8 +35,8 @@ plot.drcOrdinal <- function(x, ...){ plotData <- tidyr::pivot_longer(object$data, cols = object$levels) %>% #-c(object$dose, object$weights)) %>% dplyr::mutate(dose = eval(parse(text=object$dose)), - cat = factor(name, levels = object$levels), - prop = value/eval(parse(text=object$weights))) + cat = factor(name, levels = object$levels), + prop = value/eval(parse(text=object$weights))) plot <- ggplot2::ggplot(plotData) + ggplot2::geom_col(aes(x = dose, y = prop, fill = cat), alpha = 0.5) + diff --git a/R/print.bmd.R b/R/print.bmd.R index a495841..b5cf362 100644 --- a/R/print.bmd.R +++ b/R/print.bmd.R @@ -1,3 +1,13 @@ +#' Print Method for bmd Objects +#' +#' Prints a summary of a bmd model object. +#' +#' @param x A bmd model object +#' @param ... Additional arguments (not used) +#' @param digits Number of significant digits to use for printing values +#' +#' @return Invisibly returns the x object +#' @export "print.bmd" <- function(x, ..., digits = max(3, getOption("digits") - 3)) { object <- x @@ -13,4 +23,4 @@ cat("\n") invisible(object) -} \ No newline at end of file +} diff --git a/R/print.bmdHetVar.R b/R/print.bmdHetVar.R index 065455b..bfd3210 100644 --- a/R/print.bmdHetVar.R +++ b/R/print.bmdHetVar.R @@ -1,3 +1,13 @@ +#' Print Method for drcHetVar Objects +#' +#' Prints a summary of a drcHetVar model object. +#' +#' @param x A drcHetVar model object +#' @param ... Additional arguments (not used) +#' @param digits Number of significant digits to use for printing values +#' +#' @return Invisibly returns the x object +#' @export "print.bmdHetVar" <- function(x, ..., digits = max(3, getOption("digits") - 3)) { object <- x @@ -13,4 +23,4 @@ cat("\n") invisible(object) -} \ No newline at end of file +} diff --git a/R/print.bmdOrdinal.R b/R/print.bmdOrdinal.R index a7357b8..4a12f55 100644 --- a/R/print.bmdOrdinal.R +++ b/R/print.bmdOrdinal.R @@ -1,3 +1,13 @@ +#' Print Method for bmdOrdinalr Objects +#' +#' Prints a summary of a bmdOrdinal model object. +#' +#' @param x A bmdOrdinal model object +#' @param ... Additional arguments (not used) +#' @param digits Number of significant digits to use for printing values +#' +#' @return Invisibly returns the x object +#' @export print.bmdOrdinal <- function(x, ..., digits = max(3, getOption("digits") - 3)) { object <- x @@ -13,4 +23,4 @@ print.bmdOrdinal <- function(x, ..., digits = max(3, getOption("digits") - 3)) cat("\n") invisible(object) -} \ No newline at end of file +} diff --git a/R/print.drcHetVar.R b/R/print.drcHetVar.R index 81a14c1..6040736 100644 --- a/R/print.drcHetVar.R +++ b/R/print.drcHetVar.R @@ -1,3 +1,13 @@ +#' Print Method for drcHetVar Objects +#' +#' Prints a summary of a drcHetVar model object. +#' +#' @param x A drcHetVar model object +#' @param ... Additional arguments (not used) +#' @param digits Number of significant digits to use for printing values +#' +#' @return Invisibly returns the x object +#' @export print.drcHetVar <- function(x, ..., digits = max(3, getOption("digits") - 3)){ object <- x classList <- class(object) @@ -17,4 +27,4 @@ print.drcHetVar <- function(x, ..., digits = max(3, getOption("digits") - 3)){ # END invisible(object) -} \ No newline at end of file +} diff --git a/R/print.drcMMRE.R b/R/print.drcMMRE.R index f139a66..14a1817 100644 --- a/R/print.drcMMRE.R +++ b/R/print.drcMMRE.R @@ -1,3 +1,13 @@ +#' Print Method for drcMMRE Objects +#' +#' Prints a summary of a drcMMRE model object. +#' +#' @param x A drcMMRE model object +#' @param ... Additional arguments (not used) +#' @param digits Number of significant digits to use for printing values +#' +#' @return Invisibly returns the x object +#' @export print.drcMMRE <- function (x, ..., digits = max(3, getOption("digits") - 3)) { object <- x @@ -14,4 +24,4 @@ print.drcMMRE <- function (x, ..., digits = max(3, getOption("digits") - 3)) } cat("\n") invisible(object) -} \ No newline at end of file +} diff --git a/R/print.drcOrdinal.R b/R/print.drcOrdinal.R index c7cfdf5..cfa8354 100644 --- a/R/print.drcOrdinal.R +++ b/R/print.drcOrdinal.R @@ -1,3 +1,13 @@ +#' Print Method for drcOrdinal Objects +#' +#' Prints a summary of a drcOrdinal model object. +#' +#' @param x A drcOrdinal model object +#' @param ... Additional arguments (not used) +#' @param digits Number of significant digits to use for printing values +#' +#' @return Invisibly returns the x object +#' @export print.drcOrdinal <- function(x, ..., digits = max(3, getOption("digits") - 3)) { object <- x diff --git a/R/qplotBmd.R b/R/qplotBmd.R index 85947b3..270467b 100644 --- a/R/qplotBmd.R +++ b/R/qplotBmd.R @@ -1,3 +1,43 @@ +#' Plotting benchmark doses using ggplot2 +#' +#' \code{qplotBmd} displays benchmark dose values with options to plot +#' confidence intervals as well using \code{ggplot2}. +#' +#' This function is a simple function to plot benchmark dose values +#' +#' @param x an object of class 'bmd'. +#' @param ... arguments to be passed on to qplotDrc, if \code{add = FALSE} +#' @param interval option to plot only the lower limit of the confidence +#' interval for the benchmark dose ("BMDL", default), both limit of the +#' confidence interval ("twosided"), or no confidence interval ("none"). +#' @param col logical. If TRUE then multiple curves specified by "curveid" in +#' the dose-response model are distinguised by colours rather than point shapes +#' and line types +#' @param add logical. If TRUE then the functions returns a list of plot layers +#' to be added to an already existing ggplot. +#' @return A \code{ggplot} object. If the option \code{add} is used, a list of +#' \code{ggplot} layers is returned. +#' @author Jens Riis Baalkilde. +#' @keywords ggplot +#' @examples +#' +#' library(drc) +#' library(drcData) +#' +#' ## Fitting model and calculating BMD. +#' model <- drm(rootl ~ conc, data = ryegrass, fct = LL.4()) +#' bmd0 <- bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative") +#' +#' # Plot +#' qplotBmd(bmd0, interval = "twosided", add = FALSE) +#' +#' qplotDrc(model,type="confidence") + +#' qplotBmd(bmd0, interval = "twosided", add = TRUE) +#' +#' qplotBmd(bmd0, interval = "twosided", add = FALSE) +#' +#' +#' @export qplotBmd <- function(x, ..., interval = c("BMDL", "twosided", "none"), col = FALSE, add = FALSE){ object <- x diff --git a/R/qplotDrc.R b/R/qplotDrc.R index c9a2feb..9428557 100644 --- a/R/qplotDrc.R +++ b/R/qplotDrc.R @@ -1,9 +1,137 @@ +#' Plotting fitted dose-response curves using ggplot2 +#' +#' \code{qplotDrc} displays fitted curves and observations in the same plot +#' window, distinguishing between curves by different plot symbols and line +#' types or colours using \code{ggplot2}. +#' +#' This function largely seeks to mimic the behaviour of the \code{plot} method +#' for the \code{drc} package using the \code{ggplot2} package for plotting. +#' +#' The use of \code{xlim} allows changing the range of the x axis, +#' extrapolating the fitted dose-response curves. Note that changing the range +#' on the x axis may also entail a change of the range on the y axis. +#' +#' See \code{\link{colors}} for the available colours. +#' +#' Suitable labels are automatically provided. +#' +#' The model-based standard errors used for the error bars are calculated as +#' the fitted value plus/minus the estimated error times the 1-(alpha/2) +#' quantile in the t distribution with degrees of freedom equal to the residual +#' degrees of freedom for the model (or using a standard normal distribution in +#' case of binomial and poisson data), where alpha=1-confidence.level. The +#' standard errors are obtained using the predict method with the arguments +#' interval = "confidence" and level=confidence.level. +#' +#' @param x an object of class 'drc'. +#' @param add logical. If TRUE then the functions returns a list of plot layers +#' to be added to an already existing ggplot. +#' @param level vector of curve levels to plot. To plot only the curves +#' specified by their names. +#' @param type a character string specifying how to plot the data. There are +#' currently 5 options: "average" (averages and fitted curve(s); default), +#' "none" (only the fitted curve(s)), "obs" (only the data points), "all" (all +#' data points and fitted curve(s)), "bars" (averages and fitted curve(s) with +#' model-based standard errors (see Details)), and "confidence" (confidence +#' bands for fitted curve(s)). +#' @param gridsize numeric. Number of points in the grid used for plotting the +#' fitted curves. +#' @param xtrans Transformation to use on the x-axis. The default is +#' "pesudo_log", which is a logarithmic transformation with a smooth transition +#' to 0. Other options include (among others) "log" and "identity". Can be +#' overridden by adding a scale using the \code{scale_x_continuous} function. +#' @param xlab an optional label for the x axis. +#' @param xlim a numeric vector of length two, containing the lower and upper +#' limit for the x axis. +#' @param ytrans Transformation to use on the y-axis. The default is no +#' transformation. Other options include (among others) "pseudo_log" and "log" +#' and. Can be overridden by adding a scale using the \code{scale_y_continuous} +#' function. +#' @param ylab an optional label for the y axis. +#' @param ylim a numeric vector of length two, containing the lower and upper +#' limit for the y axis. +#' @param col logical. If TRUE default ggplot colours are used, can be +#' overridden by \code{scale_color_manual}. If FALSE (default) no colours are +#' used. +#' @param normal logical. If TRUE the plot of the normalized data and fitted +#' curves are shown (for details see Weimer et al. (2012) for details). +#' @param normRef numeric specifying the reference for the normalization +#' (default is 1). +#' @param confidence.level confidence level for error bars and confidence +#' bands. Defaults to 0.95. +#' @return A \code{ggplot} object. If the option \code{add} is used, a list of +#' \code{ggplot} layers is returned. +#' @author Jens Riis Baalkilde. Based on \code{plot.drc} by Christian Ritz and +#' Jens C. Streibig with Contributions from Xiaoyan Wang and Greg Warnes. +#' @references Weimer, M., Jiang, X., Ponta, O., Stanzel, S., Freyberger, A., +#' Kopp-Schneider, A. (2012) The impact of data transformations on +#' concentration-response modeling. \emph{Toxicology Letters}, \bold{213}, +#' 292--298. +#' @keywords ggplot +#' @examples +#' +#' library(drc) +#' library(drcData) +#' library(ggplot2) +#' +#' ## Fitting models to be plotted below +#' ryegrass.m1 <- drm(rootl~conc, data = ryegrass, fct = LL.4()) +#' ryegrass.m2 <- drm(rootl~conc, data = ryegrass, fct = LL.3()) # lower limit fixed at 0 +#' +#' ## Plotting observations and fitted curve for the first model +#' p <- qplotDrc(ryegrass.m1) +#' p +#' +#' ## Add confidence region for the first model. +#' p + qplotDrc(ryegrass.m1, type="confidence", add = TRUE)$confBandLayer +#' +#' ## Plot both models +#' p + qplotDrc(ryegrass.m2, add = TRUE)$curveLayer +#' +#' ## Fitting model to be plotted below +#' spinach.m1 <- drm(SLOPE~DOSE, CURVE, data = spinach, fct = LL.4()) +#' +#' ## Plot with no colours +#' qplotDrc(spinach.m1) +#' +#' ## Plot with default colours +#' qplotDrc(spinach.m1, col = TRUE) +#' +#' ## Plot with specified colours +#' qplotDrc(spinach.m1, col = TRUE) + +#' scale_color_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod", +#' "darkslategray4", "plum4")) +#' +#' ## Plot of curves 1 and 2 only +#' qplotDrc(spinach.m1, level = c(1,4)) +#' +#' ## Plot with confidence regions +#' qplotDrc(spinach.m1, col = TRUE, type = "confidence") +#' +#' ## Plot points and add confidence regions. Confidence regions are coloured by the "fill" aesthetic. +#' ## Customising the x scale by adding a new scale. +#' qplotDrc(spinach.m1, col = TRUE, type = "confidence") + +#' qplotDrc(spinach.m1, col = TRUE, type = "average", add = TRUE)$obsLayer + +#' scale_color_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod", +#' "darkslategray4", "plum4"))+ +#' scale_fill_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod", +#' "darkslategray4", "plum4")) + +#' scale_x_continuous(trans = scales:::pseudo_log_trans(sigma = 0.2, base = exp(1))) +#' +#' +#' @export qplotDrc <- function(x, add = FALSE, level = NULL, type = c("average", "all", "bars", "none", "obs", "confidence"), gridsize = 250, xtrans = "pseudo_log", xlab, xlim, ytrans = NULL, ylab, ylim, col = FALSE, normal = FALSE, normRef = 1, confidence.level = 0.95){ object <- x type <- match.arg(type) + ### Avoiding global variable binding problems + normalizeLU <- NULL + Lower <- NULL + Upper <- NULL + y <- NULL + rm(list=(c("normalizeLU", "Lower", "Upper","y"))) ## Determining logarithmic scales if ((xtrans == "log") || (xtrans == "pseudo_log")) @@ -275,3 +403,9 @@ qplotDrc <- function(x, add = FALSE, level = NULL, type = c("average", "all", "b obsLayer = obsLayer) } } + + +getLU <- function(object){ + ## using the drc internal function + eval(parse(text = "drc:::getLU(object))")) +} diff --git a/R/shirleyTest.R b/R/shirleyTest.R index c6fb520..98cd458 100644 --- a/R/shirleyTest.R +++ b/R/shirleyTest.R @@ -117,4 +117,4 @@ dist = "t'", model = DAT) class(ans) <- "osrt" return(ans) -} \ No newline at end of file +} diff --git a/R/trendTest.R b/R/trendTest.R index 622ebfa..86990ae 100644 --- a/R/trendTest.R +++ b/R/trendTest.R @@ -1,3 +1,58 @@ +#' Test for Trend in Relationship Between Two Variables +#' +#' Conducts a test for trends between a numeric independent variable \code{x} +#' and a numeric dependent variable \code{y} using specified statistical tests. +#' +#' The function tests for a trend in the relationship between \code{x} and +#' \code{y} based on the specified test: \itemize{ \item \code{"william"}: +#' Applies Williams' test to assess trend significance. \item +#' \code{"shirley"}: Uses Shirley's test for trend analysis with ordered +#' alternatives. \item \code{"tukey"}: Implements the Tukey trend test using +#' multiple marginal models. } +#' +#' The direction of the trend (increasing or decreasing) is determined by the +#' slope of the linear model \code{lm(y ~ x)}. +#' +#' @param x A numeric vector or the name of the independent variable (if +#' \code{data} is provided). +#' @param y A numeric vector or the name of the dependent variable (if +#' \code{data} is provided). +#' @param data An optional data frame containing the variables \code{x} and +#' \code{y}. If provided, \code{x} and \code{y} should be column names in +#' \code{data}. +#' @param test A character string specifying the test to use. Must be one of +#' \code{"william"}, \code{"shirley"}, or \code{"tukey"} (default). +#' @param level Significance level for the test. Defaults to 0.05. +#' @return A list with the following components: \item{p.values}{A numeric +#' vector of p-values for the tests (if applicable).} \item{decisions}{A +#' character vector indicating whether the trend is \code{"accept"} or +#' \code{"reject"} based on the test results.} \item{acceptTrend}{A logical +#' value indicating whether a trend is accepted (\code{TRUE}) or rejected +#' (\code{FALSE}) based on the specified significance level.} +#' @author Jens Riis Baalkilde +#' @seealso \code{.williamsTest}, \code{.shirleyTest}, \code{.tukeytrendfit} +#' @references Williams, D. A. (1971). "A test for differences between +#' treatment means when several dose levels are compared with a zero dose +#' control." Biometrics, 27(1), 103-117. Shirley, E. (1977). "A non-parametric +#' equivalent of Williams' test for contrasting increasing dose levels of a +#' treatment." Biometrics, 33(2), 386-389. Schaarschmidt, F. et al. (2021). +#' "The Tukey trend test: Multiplicity adjustment using multiple marginal +#' models" Biometrics, 78(2), 789-797. +#' @keywords trend, statistical test +#' @examples +#' +#' # Example with custom data +#' x <- c(1, 2, 3, 4, 5) +#' y <- c(2, 4, 6, 8, 10) +#' result <- trendTest(x, y, test = "tukey") +#' print(result) +#' +#' # Example with a data frame +#' data <- data.frame(x = c(1, 2, 3, 4, 5), y = c(10, 9, 8, 7, 6)) +#' result <- trendTest("x", "y", data = data, test = "shirley") +#' print(result) +#' +#' @export trendTest <- function(x, y, data, test = c("william", "shirley", "tukey"), level = 0.05){ if(!missing(data)){ x <- data[[x]] @@ -37,4 +92,4 @@ trendTest <- function(x, y, data, test = c("william", "shirley", "tukey"), level } list(p.values = p.values, decisions = decisions, acceptTrend = acceptTrend) -} \ No newline at end of file +} diff --git a/R/tukeytrendfit.R b/R/tukeytrendfit.R index 570f98a..0ee876c 100644 --- a/R/tukeytrendfit.R +++ b/R/tukeytrendfit.R @@ -57,4 +57,4 @@ OUT <- c(list(mmm = MMM, mlf = MLF, df = DF), MODINFO) class(OUT) <- "tukeytrend" return(OUT) -} \ No newline at end of file +} diff --git a/R/williamsTest.R b/R/williamsTest.R index b951eef..179e9fe 100644 --- a/R/williamsTest.R +++ b/R/williamsTest.R @@ -115,4 +115,4 @@ dist = "t'") class(ans) <- "osrt" ans -} \ No newline at end of file +} diff --git a/bmd.Rproj b/bmd.Rproj index c88d76d..929b948 100644 --- a/bmd.Rproj +++ b/bmd.Rproj @@ -1,9 +1,8 @@ Version: 1.0 -ProjectId: 17a33614-0dad-4a73-9ef1-82328c71af7f -RestoreWorkspace: Default -SaveWorkspace: Default -AlwaysSaveHistory: Default +RestoreWorkspace: No +SaveWorkspace: No +AlwaysSaveHistory: No EnableCodeIndexing: Yes UseSpacesForTab: Yes diff --git a/docs/404.html b/docs/404.html new file mode 100644 index 0000000..aea341f --- /dev/null +++ b/docs/404.html @@ -0,0 +1,123 @@ + + +
+ + + + + GNU GENERAL PUBLIC LICENSE
+ Version 3, 29 June 2007
+
+ Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The GNU General Public License is a free, copyleft license for
+software and other kinds of works.
+
+ The licenses for most software and other practical works are designed
+to take away your freedom to share and change the works. By contrast,
+the GNU General Public License is intended to guarantee your freedom to
+share and change all versions of a program--to make sure it remains free
+software for all its users. We, the Free Software Foundation, use the
+GNU General Public License for most of our software; it applies also to
+any other work released this way by its authors. You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+them if you wish), that you receive source code or can get it if you
+want it, that you can change the software or use pieces of it in new
+free programs, and that you know you can do these things.
+
+ To protect your rights, we need to prevent others from denying you
+these rights or asking you to surrender the rights. Therefore, you have
+certain responsibilities if you distribute copies of the software, or if
+you modify it: responsibilities to respect the freedom of others.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must pass on to the recipients the same
+freedoms that you received. You must make sure that they, too, receive
+or can get the source code. And you must show them these terms so they
+know their rights.
+
+ Developers that use the GNU GPL protect your rights with two steps:
+(1) assert copyright on the software, and (2) offer you this License
+giving you legal permission to copy, distribute and/or modify it.
+
+ For the developers' and authors' protection, the GPL clearly explains
+that there is no warranty for this free software. For both users' and
+authors' sake, the GPL requires that modified versions be marked as
+changed, so that their problems will not be attributed erroneously to
+authors of previous versions.
+
+ Some devices are designed to deny users access to install or run
+modified versions of the software inside them, although the manufacturer
+can do so. This is fundamentally incompatible with the aim of
+protecting users' freedom to change the software. The systematic
+pattern of such abuse occurs in the area of products for individuals to
+use, which is precisely where it is most unacceptable. Therefore, we
+have designed this version of the GPL to prohibit the practice for those
+products. If such problems arise substantially in other domains, we
+stand ready to extend this provision to those domains in future versions
+of the GPL, as needed to protect the freedom of users.
+
+ Finally, every program is threatened constantly by software patents.
+States should not allow patents to restrict development and use of
+software on general-purpose computers, but in those that do, we wish to
+avoid the special danger that patents applied to a free program could
+make it effectively proprietary. To prevent this, the GPL assures that
+patents cannot be used to render the program non-free.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ TERMS AND CONDITIONS
+
+ 0. Definitions.
+
+ "This License" refers to version 3 of the GNU General Public License.
+
+ "Copyright" also means copyright-like laws that apply to other kinds of
+works, such as semiconductor masks.
+
+ "The Program" refers to any copyrightable work licensed under this
+License. Each licensee is addressed as "you". "Licensees" and
+"recipients" may be individuals or organizations.
+
+ To "modify" a work means to copy from or adapt all or part of the work
+in a fashion requiring copyright permission, other than the making of an
+exact copy. The resulting work is called a "modified version" of the
+earlier work or a work "based on" the earlier work.
+
+ A "covered work" means either the unmodified Program or a work based
+on the Program.
+
+ To "propagate" a work means to do anything with it that, without
+permission, would make you directly or secondarily liable for
+infringement under applicable copyright law, except executing it on a
+computer or modifying a private copy. Propagation includes copying,
+distribution (with or without modification), making available to the
+public, and in some countries other activities as well.
+
+ To "convey" a work means any kind of propagation that enables other
+parties to make or receive copies. Mere interaction with a user through
+a computer network, with no transfer of a copy, is not conveying.
+
+ An interactive user interface displays "Appropriate Legal Notices"
+to the extent that it includes a convenient and prominently visible
+feature that (1) displays an appropriate copyright notice, and (2)
+tells the user that there is no warranty for the work (except to the
+extent that warranties are provided), that licensees may convey the
+work under this License, and how to view a copy of this License. If
+the interface presents a list of user commands or options, such as a
+menu, a prominent item in the list meets this criterion.
+
+ 1. Source Code.
+
+ The "source code" for a work means the preferred form of the work
+for making modifications to it. "Object code" means any non-source
+form of a work.
+
+ A "Standard Interface" means an interface that either is an official
+standard defined by a recognized standards body, or, in the case of
+interfaces specified for a particular programming language, one that
+is widely used among developers working in that language.
+
+ The "System Libraries" of an executable work include anything, other
+than the work as a whole, that (a) is included in the normal form of
+packaging a Major Component, but which is not part of that Major
+Component, and (b) serves only to enable use of the work with that
+Major Component, or to implement a Standard Interface for which an
+implementation is available to the public in source code form. A
+"Major Component", in this context, means a major essential component
+(kernel, window system, and so on) of the specific operating system
+(if any) on which the executable work runs, or a compiler used to
+produce the work, or an object code interpreter used to run it.
+
+ The "Corresponding Source" for a work in object code form means all
+the source code needed to generate, install, and (for an executable
+work) run the object code and to modify the work, including scripts to
+control those activities. However, it does not include the work's
+System Libraries, or general-purpose tools or generally available free
+programs which are used unmodified in performing those activities but
+which are not part of the work. For example, Corresponding Source
+includes interface definition files associated with source files for
+the work, and the source code for shared libraries and dynamically
+linked subprograms that the work is specifically designed to require,
+such as by intimate data communication or control flow between those
+subprograms and other parts of the work.
+
+ The Corresponding Source need not include anything that users
+can regenerate automatically from other parts of the Corresponding
+Source.
+
+ The Corresponding Source for a work in source code form is that
+same work.
+
+ 2. Basic Permissions.
+
+ All rights granted under this License are granted for the term of
+copyright on the Program, and are irrevocable provided the stated
+conditions are met. This License explicitly affirms your unlimited
+permission to run the unmodified Program. The output from running a
+covered work is covered by this License only if the output, given its
+content, constitutes a covered work. This License acknowledges your
+rights of fair use or other equivalent, as provided by copyright law.
+
+ You may make, run and propagate covered works that you do not
+convey, without conditions so long as your license otherwise remains
+in force. You may convey covered works to others for the sole purpose
+of having them make modifications exclusively for you, or provide you
+with facilities for running those works, provided that you comply with
+the terms of this License in conveying all material for which you do
+not control copyright. Those thus making or running the covered works
+for you must do so exclusively on your behalf, under your direction
+and control, on terms that prohibit them from making any copies of
+your copyrighted material outside their relationship with you.
+
+ Conveying under any other circumstances is permitted solely under
+the conditions stated below. Sublicensing is not allowed; section 10
+makes it unnecessary.
+
+ 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
+
+ No covered work shall be deemed part of an effective technological
+measure under any applicable law fulfilling obligations under article
+11 of the WIPO copyright treaty adopted on 20 December 1996, or
+similar laws prohibiting or restricting circumvention of such
+measures.
+
+ When you convey a covered work, you waive any legal power to forbid
+circumvention of technological measures to the extent such circumvention
+is effected by exercising rights under this License with respect to
+the covered work, and you disclaim any intention to limit operation or
+modification of the work as a means of enforcing, against the work's
+users, your or third parties' legal rights to forbid circumvention of
+technological measures.
+
+ 4. Conveying Verbatim Copies.
+
+ You may convey verbatim copies of the Program's source code as you
+receive it, in any medium, provided that you conspicuously and
+appropriately publish on each copy an appropriate copyright notice;
+keep intact all notices stating that this License and any
+non-permissive terms added in accord with section 7 apply to the code;
+keep intact all notices of the absence of any warranty; and give all
+recipients a copy of this License along with the Program.
+
+ You may charge any price or no price for each copy that you convey,
+and you may offer support or warranty protection for a fee.
+
+ 5. Conveying Modified Source Versions.
+
+ You may convey a work based on the Program, or the modifications to
+produce it from the Program, in the form of source code under the
+terms of section 4, provided that you also meet all of these conditions:
+
+ a) The work must carry prominent notices stating that you modified
+ it, and giving a relevant date.
+
+ b) The work must carry prominent notices stating that it is
+ released under this License and any conditions added under section
+ 7. This requirement modifies the requirement in section 4 to
+ "keep intact all notices".
+
+ c) You must license the entire work, as a whole, under this
+ License to anyone who comes into possession of a copy. This
+ License will therefore apply, along with any applicable section 7
+ additional terms, to the whole of the work, and all its parts,
+ regardless of how they are packaged. This License gives no
+ permission to license the work in any other way, but it does not
+ invalidate such permission if you have separately received it.
+
+ d) If the work has interactive user interfaces, each must display
+ Appropriate Legal Notices; however, if the Program has interactive
+ interfaces that do not display Appropriate Legal Notices, your
+ work need not make them do so.
+
+ A compilation of a covered work with other separate and independent
+works, which are not by their nature extensions of the covered work,
+and which are not combined with it such as to form a larger program,
+in or on a volume of a storage or distribution medium, is called an
+"aggregate" if the compilation and its resulting copyright are not
+used to limit the access or legal rights of the compilation's users
+beyond what the individual works permit. Inclusion of a covered work
+in an aggregate does not cause this License to apply to the other
+parts of the aggregate.
+
+ 6. Conveying Non-Source Forms.
+
+ You may convey a covered work in object code form under the terms
+of sections 4 and 5, provided that you also convey the
+machine-readable Corresponding Source under the terms of this License,
+in one of these ways:
+
+ a) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by the
+ Corresponding Source fixed on a durable physical medium
+ customarily used for software interchange.
+
+ b) Convey the object code in, or embodied in, a physical product
+ (including a physical distribution medium), accompanied by a
+ written offer, valid for at least three years and valid for as
+ long as you offer spare parts or customer support for that product
+ model, to give anyone who possesses the object code either (1) a
+ copy of the Corresponding Source for all the software in the
+ product that is covered by this License, on a durable physical
+ medium customarily used for software interchange, for a price no
+ more than your reasonable cost of physically performing this
+ conveying of source, or (2) access to copy the
+ Corresponding Source from a network server at no charge.
+
+ c) Convey individual copies of the object code with a copy of the
+ written offer to provide the Corresponding Source. This
+ alternative is allowed only occasionally and noncommercially, and
+ only if you received the object code with such an offer, in accord
+ with subsection 6b.
+
+ d) Convey the object code by offering access from a designated
+ place (gratis or for a charge), and offer equivalent access to the
+ Corresponding Source in the same way through the same place at no
+ further charge. You need not require recipients to copy the
+ Corresponding Source along with the object code. If the place to
+ copy the object code is a network server, the Corresponding Source
+ may be on a different server (operated by you or a third party)
+ that supports equivalent copying facilities, provided you maintain
+ clear directions next to the object code saying where to find the
+ Corresponding Source. Regardless of what server hosts the
+ Corresponding Source, you remain obligated to ensure that it is
+ available for as long as needed to satisfy these requirements.
+
+ e) Convey the object code using peer-to-peer transmission, provided
+ you inform other peers where the object code and Corresponding
+ Source of the work are being offered to the general public at no
+ charge under subsection 6d.
+
+ A separable portion of the object code, whose source code is excluded
+from the Corresponding Source as a System Library, need not be
+included in conveying the object code work.
+
+ A "User Product" is either (1) a "consumer product", which means any
+tangible personal property which is normally used for personal, family,
+or household purposes, or (2) anything designed or sold for incorporation
+into a dwelling. In determining whether a product is a consumer product,
+doubtful cases shall be resolved in favor of coverage. For a particular
+product received by a particular user, "normally used" refers to a
+typical or common use of that class of product, regardless of the status
+of the particular user or of the way in which the particular user
+actually uses, or expects or is expected to use, the product. A product
+is a consumer product regardless of whether the product has substantial
+commercial, industrial or non-consumer uses, unless such uses represent
+the only significant mode of use of the product.
+
+ "Installation Information" for a User Product means any methods,
+procedures, authorization keys, or other information required to install
+and execute modified versions of a covered work in that User Product from
+a modified version of its Corresponding Source. The information must
+suffice to ensure that the continued functioning of the modified object
+code is in no case prevented or interfered with solely because
+modification has been made.
+
+ If you convey an object code work under this section in, or with, or
+specifically for use in, a User Product, and the conveying occurs as
+part of a transaction in which the right of possession and use of the
+User Product is transferred to the recipient in perpetuity or for a
+fixed term (regardless of how the transaction is characterized), the
+Corresponding Source conveyed under this section must be accompanied
+by the Installation Information. But this requirement does not apply
+if neither you nor any third party retains the ability to install
+modified object code on the User Product (for example, the work has
+been installed in ROM).
+
+ The requirement to provide Installation Information does not include a
+requirement to continue to provide support service, warranty, or updates
+for a work that has been modified or installed by the recipient, or for
+the User Product in which it has been modified or installed. Access to a
+network may be denied when the modification itself materially and
+adversely affects the operation of the network or violates the rules and
+protocols for communication across the network.
+
+ Corresponding Source conveyed, and Installation Information provided,
+in accord with this section must be in a format that is publicly
+documented (and with an implementation available to the public in
+source code form), and must require no special password or key for
+unpacking, reading or copying.
+
+ 7. Additional Terms.
+
+ "Additional permissions" are terms that supplement the terms of this
+License by making exceptions from one or more of its conditions.
+Additional permissions that are applicable to the entire Program shall
+be treated as though they were included in this License, to the extent
+that they are valid under applicable law. If additional permissions
+apply only to part of the Program, that part may be used separately
+under those permissions, but the entire Program remains governed by
+this License without regard to the additional permissions.
+
+ When you convey a copy of a covered work, you may at your option
+remove any additional permissions from that copy, or from any part of
+it. (Additional permissions may be written to require their own
+removal in certain cases when you modify the work.) You may place
+additional permissions on material, added by you to a covered work,
+for which you have or can give appropriate copyright permission.
+
+ Notwithstanding any other provision of this License, for material you
+add to a covered work, you may (if authorized by the copyright holders of
+that material) supplement the terms of this License with terms:
+
+ a) Disclaiming warranty or limiting liability differently from the
+ terms of sections 15 and 16 of this License; or
+
+ b) Requiring preservation of specified reasonable legal notices or
+ author attributions in that material or in the Appropriate Legal
+ Notices displayed by works containing it; or
+
+ c) Prohibiting misrepresentation of the origin of that material, or
+ requiring that modified versions of such material be marked in
+ reasonable ways as different from the original version; or
+
+ d) Limiting the use for publicity purposes of names of licensors or
+ authors of the material; or
+
+ e) Declining to grant rights under trademark law for use of some
+ trade names, trademarks, or service marks; or
+
+ f) Requiring indemnification of licensors and authors of that
+ material by anyone who conveys the material (or modified versions of
+ it) with contractual assumptions of liability to the recipient, for
+ any liability that these contractual assumptions directly impose on
+ those licensors and authors.
+
+ All other non-permissive additional terms are considered "further
+restrictions" within the meaning of section 10. If the Program as you
+received it, or any part of it, contains a notice stating that it is
+governed by this License along with a term that is a further
+restriction, you may remove that term. If a license document contains
+a further restriction but permits relicensing or conveying under this
+License, you may add to a covered work material governed by the terms
+of that license document, provided that the further restriction does
+not survive such relicensing or conveying.
+
+ If you add terms to a covered work in accord with this section, you
+must place, in the relevant source files, a statement of the
+additional terms that apply to those files, or a notice indicating
+where to find the applicable terms.
+
+ Additional terms, permissive or non-permissive, may be stated in the
+form of a separately written license, or stated as exceptions;
+the above requirements apply either way.
+
+ 8. Termination.
+
+ You may not propagate or modify a covered work except as expressly
+provided under this License. Any attempt otherwise to propagate or
+modify it is void, and will automatically terminate your rights under
+this License (including any patent licenses granted under the third
+paragraph of section 11).
+
+ However, if you cease all violation of this License, then your
+license from a particular copyright holder is reinstated (a)
+provisionally, unless and until the copyright holder explicitly and
+finally terminates your license, and (b) permanently, if the copyright
+holder fails to notify you of the violation by some reasonable means
+prior to 60 days after the cessation.
+
+ Moreover, your license from a particular copyright holder is
+reinstated permanently if the copyright holder notifies you of the
+violation by some reasonable means, this is the first time you have
+received notice of violation of this License (for any work) from that
+copyright holder, and you cure the violation prior to 30 days after
+your receipt of the notice.
+
+ Termination of your rights under this section does not terminate the
+licenses of parties who have received copies or rights from you under
+this License. If your rights have been terminated and not permanently
+reinstated, you do not qualify to receive new licenses for the same
+material under section 10.
+
+ 9. Acceptance Not Required for Having Copies.
+
+ You are not required to accept this License in order to receive or
+run a copy of the Program. Ancillary propagation of a covered work
+occurring solely as a consequence of using peer-to-peer transmission
+to receive a copy likewise does not require acceptance. However,
+nothing other than this License grants you permission to propagate or
+modify any covered work. These actions infringe copyright if you do
+not accept this License. Therefore, by modifying or propagating a
+covered work, you indicate your acceptance of this License to do so.
+
+ 10. Automatic Licensing of Downstream Recipients.
+
+ Each time you convey a covered work, the recipient automatically
+receives a license from the original licensors, to run, modify and
+propagate that work, subject to this License. You are not responsible
+for enforcing compliance by third parties with this License.
+
+ An "entity transaction" is a transaction transferring control of an
+organization, or substantially all assets of one, or subdividing an
+organization, or merging organizations. If propagation of a covered
+work results from an entity transaction, each party to that
+transaction who receives a copy of the work also receives whatever
+licenses to the work the party's predecessor in interest had or could
+give under the previous paragraph, plus a right to possession of the
+Corresponding Source of the work from the predecessor in interest, if
+the predecessor has it or can get it with reasonable efforts.
+
+ You may not impose any further restrictions on the exercise of the
+rights granted or affirmed under this License. For example, you may
+not impose a license fee, royalty, or other charge for exercise of
+rights granted under this License, and you may not initiate litigation
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+any patent claim is infringed by making, using, selling, offering for
+sale, or importing the Program or any portion of it.
+
+ 11. Patents.
+
+ A "contributor" is a copyright holder who authorizes use under this
+License of the Program or a work on which the Program is based. The
+work thus licensed is called the contributor's "contributor version".
+
+ A contributor's "essential patent claims" are all patent claims
+owned or controlled by the contributor, whether already acquired or
+hereafter acquired, that would be infringed by some manner, permitted
+by this License, of making, using, or selling its contributor version,
+but do not include claims that would be infringed only as a
+consequence of further modification of the contributor version. For
+purposes of this definition, "control" includes the right to grant
+patent sublicenses in a manner consistent with the requirements of
+this License.
+
+ Each contributor grants you a non-exclusive, worldwide, royalty-free
+patent license under the contributor's essential patent claims, to
+make, use, sell, offer for sale, import and otherwise run, modify and
+propagate the contents of its contributor version.
+
+ In the following three paragraphs, a "patent license" is any express
+agreement or commitment, however denominated, not to enforce a patent
+(such as an express permission to practice a patent or covenant not to
+sue for patent infringement). To "grant" such a patent license to a
+party means to make such an agreement or commitment not to enforce a
+patent against the party.
+
+ If you convey a covered work, knowingly relying on a patent license,
+and the Corresponding Source of the work is not available for anyone
+to copy, free of charge and under the terms of this License, through a
+publicly available network server or other readily accessible means,
+then you must either (1) cause the Corresponding Source to be so
+available, or (2) arrange to deprive yourself of the benefit of the
+patent license for this particular work, or (3) arrange, in a manner
+consistent with the requirements of this License, to extend the patent
+license to downstream recipients. "Knowingly relying" means you have
+actual knowledge that, but for the patent license, your conveying the
+covered work in a country, or your recipient's use of the covered work
+in a country, would infringe one or more identifiable patents in that
+country that you have reason to believe are valid.
+
+ If, pursuant to or in connection with a single transaction or
+arrangement, you convey, or propagate by procuring conveyance of, a
+covered work, and grant a patent license to some of the parties
+receiving the covered work authorizing them to use, propagate, modify
+or convey a specific copy of the covered work, then the patent license
+you grant is automatically extended to all recipients of the covered
+work and works based on it.
+
+ A patent license is "discriminatory" if it does not include within
+the scope of its coverage, prohibits the exercise of, or is
+conditioned on the non-exercise of one or more of the rights that are
+specifically granted under this License. You may not convey a covered
+work if you are a party to an arrangement with a third party that is
+in the business of distributing software, under which you make payment
+to the third party based on the extent of your activity of conveying
+the work, and under which the third party grants, to any of the
+parties who would receive the covered work from you, a discriminatory
+patent license (a) in connection with copies of the covered work
+conveyed by you (or copies made from those copies), or (b) primarily
+for and in connection with specific products or compilations that
+contain the covered work, unless you entered into that arrangement,
+or that patent license was granted, prior to 28 March 2007.
+
+ Nothing in this License shall be construed as excluding or limiting
+any implied license or other defenses to infringement that may
+otherwise be available to you under applicable patent law.
+
+ 12. No Surrender of Others' Freedom.
+
+ If conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot convey a
+covered work so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you may
+not convey it at all. For example, if you agree to terms that obligate you
+to collect a royalty for further conveying from those to whom you convey
+the Program, the only way you could satisfy both those terms and this
+License would be to refrain entirely from conveying the Program.
+
+ 13. Use with the GNU Affero General Public License.
+
+ Notwithstanding any other provision of this License, you have
+permission to link or combine any covered work with a work licensed
+under version 3 of the GNU Affero General Public License into a single
+combined work, and to convey the resulting work. The terms of this
+License will continue to apply to the part which is the covered work,
+but the special requirements of the GNU Affero General Public License,
+section 13, concerning interaction through a network will apply to the
+combination as such.
+
+ 14. Revised Versions of this License.
+
+ The Free Software Foundation may publish revised and/or new versions of
+the GNU General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+ Each version is given a distinguishing version number. If the
+Program specifies that a certain numbered version of the GNU General
+Public License "or any later version" applies to it, you have the
+option of following the terms and conditions either of that numbered
+version or of any later version published by the Free Software
+Foundation. If the Program does not specify a version number of the
+GNU General Public License, you may choose any version ever published
+by the Free Software Foundation.
+
+ If the Program specifies that a proxy can decide which future
+versions of the GNU General Public License can be used, that proxy's
+public statement of acceptance of a version permanently authorizes you
+to choose that version for the Program.
+
+ Later license versions may give you additional or different
+permissions. However, no additional obligations are imposed on any
+author or copyright holder as a result of your choosing to follow a
+later version.
+
+ 15. Disclaimer of Warranty.
+
+ THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
+APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
+HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
+OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
+THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
+IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
+ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. Limitation of Liability.
+
+ IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
+THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
+GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
+USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
+DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
+PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
+EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
+SUCH DAMAGES.
+
+ 17. Interpretation of Sections 15 and 16.
+
+ If the disclaimer of warranty and limitation of liability provided
+above cannot be given local legal effect according to their terms,
+reviewing courts shall apply local law that most closely approximates
+an absolute waiver of all civil liability in connection with the
+Program, unless a warranty or assumption of liability accompanies a
+copy of the Program in return for a fee.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+state the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ {one line to give the program's name and a brief idea of what it does.}
+ Copyright (C) {year} {name of author}
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+Also add information on how to contact you by electronic and paper mail.
+
+ If the program does terminal interaction, make it output a short
+notice like this when it starts in an interactive mode:
+
+ {project} Copyright (C) {year} {fullname}
+ This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, your program's commands
+might be different; for a GUI interface, you would use an "about box".
+
+ You should also get your employer (if you work as a programmer) or school,
+if any, to sign a "copyright disclaimer" for the program, if necessary.
+For more information on this, and how to apply and follow the GNU GPL, see
+<http://www.gnu.org/licenses/>.
+
+ The GNU General Public License does not permit incorporating your program
+into proprietary programs. If your program is a subroutine library, you
+may consider it more useful to permit linking proprietary applications with
+the library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License. But first, please read
+<http://www.gnu.org/philosophy/why-not-lgpl.html>.
+
+
+ basic-bmd-functions.Rmd
+library(bmd)This vignette demonstrates the usage of functions related to basic +bmd functions .
+
+
+
+
+
+library(drc)
+
+library(drcData)
+
+
+
+## Fitting log-logistic two-parameter model to binomial data
+
+deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial")
+
+
+
+## BMD for 5% additional risk with estimated background risk
+
+bmd(deguelin.m1, 0.05, backgType = "modelBased", def = "additional")
+
+
+
+## BMD for 10% additional risk with 2% background risk
+
+bmd(deguelin.m1, 0.1, backg = 0.02 , backgType = "absolute", def = "additional")
+
+
+
+## BMD for 5% excess risk and background 0
+
+bmd(deguelin.m1, 0.05, backg = 0, backgType = "absolute", def = "excess")
+
+
+
+## Dose resulting in 12% risk
+
+bmd(deguelin.m1, 0.12, def = "point")
+
+
+
+## Benchmark doses for a continuous response
+
+ryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+
+
+
+## BMD as the dose resulting in a 5% change relative to the mean background level
+
+bmd(ryegrass.m1, 0.05, backgType = "modelBased", def = "relative", display = TRUE)
+
+
+
+## BMD using the hybrid method, background risk is 2 SD, hybrid definition using excess risk
+
+bmd(ryegrass.m1, 0.05, backg = 2, backgType = "hybridSD", def = "hybridAdd", display = TRUE)
+
+## Data on root length in ryegrass after exposure to ferulic acid
+
+require(drc)
+
+require(drcData)
+
+data(ryegrass)
+
+
+
+ryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+
+
+
+## BMD using the hybrid method, background risk is 2 SD, hybrid definition using excess risk
+
+bmdBoot(ryegrass.m1, 0.05, backgType = "hybridSD", def = "hybridAdd", R = 50)
+
+
+
+## BMD from the same definitions but using parametric bootstrap
+
+bmdBoot(ryegrass.m1, 0.05, backgType = "hybridSD", def = "hybridAdd", bootType="parametric",R = 50)
+bmd_Package.Rmd
+library(drcData)
+library(drc)
+#> Warning: package 'drc' was built under R version 4.4.2
+#> Loading required package: MASS
+#>
+#> 'drc' has been loaded.
+#> Please cite R and 'drc' if used for a publication,
+#> for references type 'citation()' and 'citation('drc')'.
+#>
+#> Attaching package: 'drc'
+#> The following objects are masked from 'package:drcData':
+#>
+#> auxins, nasturtium
+#> The following objects are masked from 'package:stats':
+#>
+#> gaussian, getInitial
+library(bmd)This R package focuses on Benchmark Dose (BMD) modeling, which is +commonly used in toxicology and risk assessment to determine the dose of +a substance that corresponds to a specific level of response or risk. +The package provides a comprehensive range of functionalities. It +supports various model types, confidence interval methods, and model +averaging approaches.
+bmdMA()
+drcOrdinal)drcHetVar)drcMMRE)qplotDrc,
+qplotBmd)The package follows a workflow typically seen in dose-response +analysis:
+drm(), drcOrdinal(), drcHetVar(),
+or drcMMRE()
+bmd() or
+specialized functions like bmdOrdinal(),
+bmdHetVar()
+bmdMA() if
+multiple models are consideredtrendTest() or
+monotonicityTest()
+
+# Fit dose-response model
+
+data("secalonic")
+model <- drm(rootl ~ dose, data = secalonic, fct = LL.4())
+## model <- drm(response ~ dose, data = mydata, fct = LL.4())
+
+# Calculate BMD
+bmd_result <- bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative", interval = "profile")
+#> BMD BMDL
+#> 0.035362 0.02619523
+
+# Plot result
+plot(bmd_result)
+## note that ggplot2 style plot can be generated using qplot function
+## qplotBmd(bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative", display = FALSE)) # display = FALSE hides output from bmd function
+# Fit multiple models for model averaging
+
+# Apply model averaging (if multiple models are fitted)
+model1 <- model
+model2 <- drm(rootl ~ dose, data = secalonic, fct = LN.3())
+model3 <- drm(rootl ~ dose, data = secalonic, fct = LN.4())
+model_list <- list(model1, model2, model3)
+bmd_ma <- bmdMA(model_list, modelWeights = "AIC", backgType = "modelBased", bmr = 0.1,
+ def = "relative" , type = "bootstrap")
+#> Performing bootstrap
+#> | | | 0% | | | 1% | |= | 1% | |= | 2% | |== | 2% | |== | 3% | |== | 4% | |=== | 4% | |=== | 5% | |==== | 5% | |==== | 6% | |===== | 6% | |===== | 7% | |===== | 8% | |====== | 8% | |====== | 9% | |======= | 9% | |======= | 10% | |======= | 11% | |======== | 11% | |======== | 12% | |========= | 12% | |========= | 13% | |========= | 14% | |========== | 14% | |========== | 15% | |=========== | 15% | |=========== | 16% | |============ | 16% | |============ | 17% | |============ | 18% | |============= | 18% | |============= | 19% | |============== | 19% | |============== | 20% | |============== | 21% | |=============== | 21% | |=============== | 22% | |================ | 22% | |================ | 23% | |================ | 24% | |================= | 24% | |================= | 25% | |================== | 25% | |================== | 26% | |=================== | 26% | |=================== | 27% | |=================== | 28% | |==================== | 28% | |==================== | 29% | |===================== | 29% | |===================== | 30% | |===================== | 31% | |====================== | 31% | |====================== | 32% | |======================= | 32% | |======================= | 33% | |======================= | 34% | |======================== | 34% | |======================== | 35% | |========================= | 35% | |========================= | 36% | |========================== | 36% | |========================== | 37% | |========================== | 38% | |=========================== | 38% | |=========================== | 39% | |============================ | 39% | |============================ | 40% | |============================ | 41% | |============================= | 41% | |============================= | 42% | |============================== | 42% | |============================== | 43% | |============================== | 44% | |=============================== | 44% | |=============================== | 45% | |================================ | 45% | |================================ | 46% | |================================= | 46% | |================================= | 47% | |================================= | 48% | |================================== | 48% | |================================== | 49% | |=================================== | 49% | |=================================== | 50% | |=================================== | 51% | |==================================== | 51% | |==================================== | 52% | |===================================== | 52% | |===================================== | 53% | |===================================== | 54% | |====================================== | 54% | |====================================== | 55% | |======================================= | 55% | |======================================= | 56% | |======================================== | 56% | |======================================== | 57% | |======================================== | 58% | |========================================= | 58% | |========================================= | 59% | |========================================== | 59% | |========================================== | 60% | |========================================== | 61% | |=========================================== | 61% | |=========================================== | 62% | |============================================ | 62% | |============================================ | 63% | |============================================ | 64% | |============================================= | 64% | |============================================= | 65% | |============================================== | 65% | |============================================== | 66% | |=============================================== | 66% | |=============================================== | 67% | |=============================================== | 68% | |================================================ | 68% | |================================================ | 69% | |================================================= | 69% | |================================================= | 70% | |================================================= | 71% | |================================================== | 71% | |================================================== | 72% | |=================================================== | 72% | |=================================================== | 73% | |=================================================== | 74% | |==================================================== | 74% | |==================================================== | 75% | |===================================================== | 75% | |===================================================== | 76% | |====================================================== | 76% | |====================================================== | 77% | |====================================================== | 78% | |======================================================= | 78% | |======================================================= | 79% | |======================================================== | 79% | |======================================================== | 80% | |======================================================== | 81% | |========================================================= | 81% | |========================================================= | 82% | |========================================================== | 82% | |========================================================== | 83% | |========================================================== | 84% | |=========================================================== | 84% | |=========================================================== | 85% | |============================================================ | 85% | |============================================================ | 86% | |============================================================= | 86% | |============================================================= | 87% | |============================================================= | 88% | |============================================================== | 88% | |============================================================== | 89% | |=============================================================== | 89% | |=============================================================== | 90% | |=============================================================== | 91% | |================================================================ | 91% | |================================================================ | 92% | |================================================================= | 92% | |================================================================= | 93% | |================================================================= | 94% | |================================================================== | 94% | |================================================================== | 95% | |=================================================================== | 95% | |=================================================================== | 96% | |==================================================================== | 96% | |==================================================================== | 97% | |==================================================================== | 98% | |===================================================================== | 98% | |===================================================================== | 99% | |======================================================================| 99% | |======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> 0.03492014 0.02809378
+print(bmd_ma)
+#> $Results
+#> BMD_MA BMDL_MA
+#> 0.03492014 0.02809378
+#>
+#> $Boot.samples.used
+#> [1] 1000
+#>
+#> $interval
+#> BMDL_MA BMDU_MA
+#> 0.02809378 0.03730574
+#>
+#> $SE
+#> SE
+#> NA
+#>
+#> $modelWeights
+#> [1] 0.3117292 0.4709065 0.2173643
+#>
+#> attr(,"class")
+#> [1] "bmd"model-averaging.Rmd
+library(bmd)bmdMA function
+
+
+
+
+
+library(drc)
+
+library(drcData)
+
+
+
+## Fitting 4 different two-parameter models to binomial data
+
+deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial")
+
+deguelin.m2 <- drm(r/n~dose, weights=n, data=deguelin, fct=W1.2(), type="binomial")
+
+deguelin.m3 <- drm(r/n~dose, weights=n, data=deguelin, fct=W2.2(), type="binomial")
+
+deguelin.m4 <- drm(r/n~dose, weights=n, data=deguelin, fct=LN.2(), type="binomial")
+
+
+
+
+
+## Model averaged BMD for 5% additional risk with estimated background risk
+
+## and BMDL based on Buckland et al.
+
+bmdMA(list(deguelin.m1,deguelin.m2,deguelin.m3,deguelin.m4), modelWeights="AIC", 0.05,
+
+ backgType = "modelBased", def = "additional",
+
+ type = "Buckland")
+
+
+
+## Model averaged BMD for 5% additional risk with estimated background risk
+
+## and BMDL based on an average of the model curves
+
+bmdMA(list(deguelin.m1,deguelin.m2,deguelin.m3,deguelin.m4), modelWeights="AIC", 0.05,
+
+ backgType = "modelBased", def = "additional",
+
+ type = "curve", bootstrapType = "parametric", bootInterval = "percentile", R=50)
+
+
+
+
+
+## Fitting 4 different two-parameter models to binomial data
+
+ryegrass.m1<-drm(rootl~conc, data=ryegrass, fct=LL.4())
+
+ryegrass.m2<-drm(rootl~conc, data=ryegrass, fct=W1.4())
+
+ryegrass.m3<-drm(rootl~conc, data=ryegrass, fct=W2.4())
+
+ryegrass.m4<-drm(rootl~conc, data=ryegrass, fct=LN.4())
+
+
+
+## Model-averaged BMD and bootstrap BMDL for bmr=5% and using the hybrid approach
+
+## to estimate the background risk.
+
+bmdMA(list(ryegrass.m1,ryegrass.m2,ryegrass.m3,ryegrass.m4), modelWeights="AIC", bmr=0.05,
+
+ backgType = "hybridSD", def = "hybridAdd", type = "bootstrap",
+
+ bootstrapType = "nonparametric", bootInterval = "percentile", R = 50)
+
+
+
+
+
+## Model-averaged BMD using the Stacking Weights
+
+bmdMA(list(ryegrass.m1,ryegrass.m2,ryegrass.m3,ryegrass.m4), modelWeights="Stack", bmr=0.05,
+
+ backgType = "hybridSD", def = "hybridAdd", type = "bootstrap",
+
+ bootstrapType = "nonparametric", bootInterval = "percentile", R = 50)
+
+
+
+
+
+
+library(bmd)
+
+library(drc)
+
+library(drcData)
+
+library(ggplot2)
+
+
+
+# fit models to aconiazide data
+
+aconiazide.LL.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LL.3())
+
+aconiazide.LN.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LN.3())
+
+aconiazide.W1.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W1.3())
+
+aconiazide.W2.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W2.3())
+
+
+
+# plot the MA curve
+
+plot(aconiazide.LL.3, type = "obs")
+
+curve(
+
+ MACurve(x, modelList = list(aconiazide.LL.3, aconiazide.LN.3,aconiazide.W1.3, aconiazide.W2.3),
+
+ modelWeights = "AIC"),
+
+ add = TRUE)
+
+
+
+# or plot using ggplot2
+
+qplotDrc(aconiazide.LL.3, type = "obs") +
+
+ geom_function(fun = function(x){
+
+ MACurve(x, modelList = list(aconiazide.LL.3, aconiazide.LN.3,
+
+ aconiazide.W1.3, aconiazide.W2.3),
+
+ modelWeights = "AIC")
+
+ )
+
+
+getStackingWeights(modelList = list(aconiazide.LL.3, aconiazide.LN.3,
+
+ aconiazide.W1.3, aconiazide.W2.3))
+
+getStackingWeights(modelList = list(aconiazide.LL.3, aconiazide.LN.3,
+
+ aconiazide.W1.3, aconiazide.W2.3),
+
+ nSplits = 7)
+ specialized-models.Rmd
+library(bmd)
+
+
+
+
+library(drc)
+#> Warning: package 'drc' was built under R version 4.4.2
+#> Loading required package: MASS
+#>
+#> 'drc' has been loaded.
+#> Please cite R and 'drc' if used for a publication,
+#> for references type 'citation()' and 'citation('drc')'.
+#>
+#> Attaching package: 'drc'
+#> The following objects are masked from 'package:stats':
+#>
+#> gaussian, getInitial
+
+library(drcData)
+#>
+#> Attaching package: 'drcData'
+#> The following objects are masked from 'package:drc':
+#>
+#> auxins, nasturtium
+
+data(guthion)
+
+guthionS <- subset(guthion, trt == "S")
+
+
+
+guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"), weights = "total",
+
+ dose = "dose", data = guthionS, fct = LL.2())
+
+
+
+plot(guthionS.LL, xlim = c(15,55)) # uses ggplot
+
+
+bmdOrdinal(guthionS.LL, bmr = 0.1, backgType = "modelBased", def = "excess", R = 50)
+#> BMD BMDL
+#> moribund+dead 20.50104 17.11484
+#> dead 20.59249 16.69573
+
+
+
+
+library(drc)
+
+library(drcData)
+
+data(guthion)
+
+
+
+guthionS <- subset(guthion, trt == "S")
+
+
+
+guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+
+ weights = "total", dose = "dose", data = guthionS, fct = LL.2())
+
+guthionS.LN <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+
+ weights = "total", dose = "dose", data = guthionS, fct = LN.2())
+
+guthionS.W1 <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+
+ weights = "total", dose = "dose", data = guthionS, fct = W1.2())
+
+guthionS.W2 <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+
+ weights = "total", dose = "dose", data = guthionS, fct = W2.2())
+
+
+
+bmdOrdinalMA(list(guthionS.LL, guthionS.LN, guthionS.W1, guthionS.W2),
+
+ modelWeights = "AIC", bmr = 0.1,
+
+ backgType = "modelBased", def = "excess", type = "Kang")
+
+bmdOrdinalMA(list(guthionS.LL, guthionS.LN, guthionS.W1, guthionS.W2),
+
+ modelWeights = "AIC", bmr = 0.1,
+
+ backgType = "modelBased", def = "excess", type = "bootstrap", R = 50)
+
+
+
+
+library(drc)
+
+library(drcData)
+
+library(bmd)
+
+# install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT.
+
+
+
+# ryegrass data
+
+set.seed(123)
+
+ryegrass.LL.4.hetVar <- drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2),
+
+ data = ryegrass, fct = LL.4())
+
+plot(ryegrass.LL.4.hetVar)
+
+bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1,
+
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+
+bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1,
+
+ def = "hybridExc", R = 50, level = 0.95,
+
+ bootType = "parametric", progressInfo = TRUE, display = TRUE) # parametric bootstrap
+
+
+
+# barley data
+
+set.seed(123)
+
+barley.LL.4.hetVar <- drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), data = barley, fct = LL.4())
+
+plot(barley.LL.4.hetVar)
+
+
+
+# GiantKelp data
+
+set.seed(123)
+
+GiantKelp.LL.4.hetVarSq <- drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2),
+
+ data = GiantKelp, fct = LL.4())
+
+plot(GiantKelp.LL.4.hetVarSq)
+
+
+
+GiantKelp.LL.4.hetVarLogSq <- drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2),
+
+ data = GiantKelp, fct = LL.4())
+
+plot(GiantKelp.LL.4.hetVarLogSq)
+
+
+
+
+
+
+
+
+
+library(drc)
+
+library(drcData)
+
+library(bmd)
+
+# install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT.
+
+
+
+# ryegrass data
+
+set.seed(123)
+
+ryegrass.hetVar.list <- list(
+
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = LL.4()),
+
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = LN.4()),
+
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = W1.4()),
+
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = W2.4()))
+
+bmdHetVarMA(ryegrass.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridPercentile",
+
+ backg = 0.1, def = "hybridExc", R = 100, level = 0.95)
+#> Performing bootstrap
+#> | | | 0% | |= | 1% | |= | 2% | |== | 3% | |=== | 4% | |==== | 5% | |==== | 6% | |===== | 7% | |====== | 8% | |====== | 9% | |======= | 10% | |======== | 11% | |======== | 12% | |========= | 13% | |========== | 14% | |========== | 15% | |=========== | 16% | |============ | 17% | |============= | 18% | |============= | 19% | |============== | 20% | |=============== | 21% | |=============== | 22% | |================ | 23% | |================= | 24% | |================== | 25% | |================== | 26% | |=================== | 27% | |==================== | 28% | |==================== | 29% | |===================== | 30% | |====================== | 31% | |====================== | 32% | |======================= | 33% | |======================== | 34% | |======================== | 35% | |========================= | 36% | |========================== | 37% | |=========================== | 38% | |=========================== | 39% | |============================ | 40% | |============================= | 41% | |============================= | 42% | |============================== | 43% | |=============================== | 44% | |================================ | 45% | |================================ | 46% | |================================= | 47% | |================================== | 48% | |================================== | 49% | |=================================== | 50% | |==================================== | 51% | |==================================== | 52% | |===================================== | 53% | |====================================== | 54% | |====================================== | 55% | |======================================= | 56% | |======================================== | 57% | |========================================= | 58% | |========================================= | 59% | |========================================== | 60% | |=========================================== | 61% | |=========================================== | 62% | |============================================ | 63% | |============================================= | 64% | |============================================== | 65% | |============================================== | 66% | |=============================================== | 67% | |================================================ | 68% | |================================================ | 69% | |================================================= | 70% | |================================================== | 71% | |================================================== | 72% | |=================================================== | 73% | |==================================================== | 74% | |==================================================== | 75% | |===================================================== | 76% | |====================================================== | 77% | |======================================================= | 78% | |======================================================= | 79% | |======================================================== | 80% | |========================================================= | 81% | |========================================================= | 82% | |========================================================== | 83% | |=========================================================== | 84% | |============================================================ | 85% | |============================================================ | 86% | |============================================================= | 87% | |============================================================== | 88% | |============================================================== | 89% | |=============================================================== | 90% | |================================================================ | 91% | |================================================================ | 92% | |================================================================= | 93% | |================================================================== | 94% | |================================================================== | 95% | |=================================================================== | 96% | |==================================================================== | 97% | |===================================================================== | 98% | |===================================================================== | 99% | |======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 1.093996 0.7095869
+
+bmdHetVarMA(ryegrass.hetVar.list, modelWeights = c(0.4, 0.2, 0.1, 0.3), bmr = 0.1,
+
+ backgType = "hybridPercentile", backg = 0.1,
+
+ def = "hybridExc", R = 50, level = 0.95) # user-defined weights
+#> Performing bootstrap
+#> | | | 0% | |= | 2% | |=== | 4% | |==== | 6% | |====== | 8% | |======= | 10% | |======== | 12% | |========== | 14% | |=========== | 16% | |============= | 18% | |============== | 20% | |=============== | 22% | |================= | 24% | |================== | 26% | |==================== | 28% | |===================== | 30% | |====================== | 32% | |======================== | 34% | |========================= | 36% | |=========================== | 38% | |============================ | 40% | |============================= | 42% | |=============================== | 44% | |================================ | 46% | |================================== | 48% | |=================================== | 50% | |==================================== | 52% | |====================================== | 54% | |======================================= | 56% | |========================================= | 58% | |========================================== | 60% | |=========================================== | 62% | |============================================= | 64% | |============================================== | 66% | |================================================ | 68% | |================================================= | 70% | |================================================== | 72% | |==================================================== | 74% | |===================================================== | 76% | |======================================================= | 78% | |======================================================== | 80% | |========================================================= | 82% | |=========================================================== | 84% | |============================================================ | 86% | |============================================================== | 88% | |=============================================================== | 90% | |================================================================ | 92% | |================================================================== | 94% | |=================================================================== | 96% | |===================================================================== | 98% | |======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 0.964126 0.7893021
+
+
+
+# barley data
+
+set.seed(123)
+
+barley.hetVar.list <- list(drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2),
+
+ data = barley, fct = LL.4()),
+
+ drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2),
+
+ data = barley, fct = W2.4()))
+
+bmdHetVarMA(barley.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridSD", backg = 2,
+
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+#> Performing bootstrap
+#> | | | 0% | |= | 2% | |=== | 4% | |==== | 6% | |====== | 8% | |======= | 10% | |======== | 12% | |========== | 14% | |=========== | 16% | |============= | 18% | |============== | 20% | |=============== | 22% | |================= | 24% | |================== | 26% | |==================== | 28% | |===================== | 30% | |====================== | 32% | |======================== | 34% | |========================= | 36% | |=========================== | 38% | |============================ | 40% | |============================= | 42% | |=============================== | 44% | |================================ | 46% | |================================== | 48% | |=================================== | 50% | |==================================== | 52% | |====================================== | 54% | |======================================= | 56% | |========================================= | 58% | |========================================== | 60% | |=========================================== | 62% | |============================================= | 64% | |============================================== | 66% | |================================================ | 68% | |================================================= | 70% | |================================================== | 72% | |==================================================== | 74% | |===================================================== | 76% | |======================================================= | 78% | |======================================================== | 80% | |========================================================= | 82% | |=========================================================== | 84% | |============================================================ | 86% | |============================================================== | 88% | |=============================================================== | 90% | |================================================================ | 92% | |================================================================== | 94% | |=================================================================== | 96% | |===================================================================== | 98% | |======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 218.9167 151.2401
+
+
+
+# GiantKelp data
+
+set.seed(123)
+
+GiantKelp.hetVar.list <- list(
+
+ drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2), data = GiantKelp, fct = LL.4()),
+
+ drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2), data = GiantKelp, fct = LL.4()))
+
+bmdHetVarMA(GiantKelp.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridSD",
+
+ backg = 1, def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE,
+
+ display = TRUE)
+#> Performing bootstrap
+#> | | | 0% | |= | 2% | |=== | 4% | |==== | 6% | |====== | 8% | |======= | 10% | |======== | 12% | |========== | 14% | |=========== | 16% | |============= | 18% | |============== | 20% | |=============== | 22% | |================= | 24% | |================== | 26% | |==================== | 28% | |===================== | 30% | |====================== | 32% | |======================== | 34% | |========================= | 36% | |=========================== | 38% | |============================ | 40% | |============================= | 42% | |=============================== | 44% | |================================ | 46% | |================================== | 48% | |=================================== | 50% | |==================================== | 52% | |====================================== | 54% | |======================================= | 56% | |========================================= | 58% | |========================================== | 60% | |=========================================== | 62% | |============================================= | 64% | |============================================== | 66% | |================================================ | 68% | |================================================= | 70% | |================================================== | 72% | |==================================================== | 74% | |===================================================== | 76% | |======================================================= | 78% | |======================================================== | 80% | |========================================================= | 82% | |=========================================================== | 84% | |============================================================ | 86% | |============================================================== | 88% | |=============================================================== | 90% | |================================================================ | 92% | |================================================================== | 94% | |=================================================================== | 96% | |===================================================================== | 98% | |======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 4.073336 0.6266271
+
+
+
+
+
+library(drc)
+
+library(drcData)
+
+library(metafor)
+#> Warning: package 'metafor' was built under R version 4.4.2
+#> Loading required package: Matrix
+#> Loading required package: metadat
+#> Warning: package 'metadat' was built under R version 4.4.2
+#> Loading required package: numDeriv
+#>
+#> Loading the 'metafor' package (version 4.6-0). For an
+#> introduction to the package please type: help(metafor)
+
+library(bmd)
+
+
+
+set.seed(1)
+
+data0 <- data.frame(x = rep(drcData::ryegrass$conc, 2),
+
+ y = rep(drcData::ryegrass$rootl, 2) +
+
+ c(rnorm(n = nrow(drcData::ryegrass), mean = 2, sd = 0.5),
+
+ rnorm(n = nrow(drcData::ryegrass), mean = 2.7, sd = 0.7)),
+
+ EXP_ID = rep(as.character(1:2), each = nrow(drcData::ryegrass)))
+
+
+
+modMMRE <- drmMMRE(y~x, exp_id = EXP_ID, data = data0, fct = LL.4())
+
+bmd(modMMRE, bmr = 0.1, backgType = "modelBased", def = "relative")
+#> BMD BMDL
+#> 1.669136 1.316628statistical-tests.Rmd
+library(bmd)This vignette demonstrates the usage of functions related to +statistical tests.
+
+
+
+
+
+# Example with custom data
+
+x <- c(1, 2, 3, 4, 5)
+
+y <- c(2, 4, 6, 8, 10)
+
+result <- monotonicityTest(x, y, test = "jonckheere")
+
+print(result)
+#> $p.value
+#> [1] 0.007152939
+#>
+#> $acceptMonotonicity
+#> [1] TRUE
+
+
+
+data <- data.frame(x = c(1, 2, 3, 4, 5), y = c(10, 9, 8, 7, 6))
+
+result <- monotonicityTest("conc", "rootl", data = drcData::ryegrass, test = "bartholomew")
+#> Loading required namespace: isotone
+
+print(result)
+#> $p.value
+#> [1] 0
+#>
+#> $acceptMonotonicity
+#> [1] TRUE
+
+# Example with custom data
+
+x <- c(1, 2, 3, 4, 5)
+
+y <- c(2, 4, 6, 8, 10)
+
+result <- trendTest(x, y, test = "tukey")
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(x): essentially perfect fit: summary may be unreliable
+#> Warning in summary.lm(x): essentially perfect fit: summary may be unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(object, ...): essentially perfect fit: summary may be
+#> unreliable
+#> Warning in summary.lm(model): essentially perfect fit: summary may be
+#> unreliable
+
+print(result)
+#> $p.values
+#> xari: xari xord: xord xarilog: xarilog
+#> 0.000000e+00 0.000000e+00 2.093881e-13
+#>
+#> $decisions
+#> xari: xari xord: xord xarilog: xarilog
+#> "accept" "accept" "accept"
+#>
+#> $acceptTrend
+#> [1] TRUE
+
+
+
+# Example with a data frame
+
+data <- data.frame(x = c(1, 2, 3, 4, 5), y = c(10, 9, 8, 7, 6))
+
+result <- trendTest("x", "y", data = data, test = "shirley")
+
+print(result)
+#> $p.values
+#> NULL
+#>
+#> $decisions
+#> ctr
+#> mu1 "reject"
+#> mu2 "reject"
+#> mu3 "reject"
+#> mu4 "accept"
+#>
+#> $acceptTrend
+#> [1] TRUEutilities.Rmd
+library(bmd)Utility functions included in the package bmd are:
+“PAV”, “expandBinomial”, “bootDataGen”, “BCa”
visualization.Rmd
+library(bmd)Visualization functions included in the bmd package are:
+“qplotDrc”, “qplotBmd”, “plot.bmd”.
+library(drc)
+#> Warning: package 'drc' was built under R version 4.4.2
+#> Loading required package: MASS
+#>
+#> 'drc' has been loaded.
+#> Please cite R and 'drc' if used for a publication,
+#> for references type 'citation()' and 'citation('drc')'.
+#>
+#> Attaching package: 'drc'
+#> The following objects are masked from 'package:stats':
+#>
+#> gaussian, getInitial
+
+library(drcData)
+#>
+#> Attaching package: 'drcData'
+#> The following objects are masked from 'package:drc':
+#>
+#> auxins, nasturtium
+
+
+
+## Fitting model and calculating BMD.
+
+model <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+
+bmd0 <- bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative")
+#> BMD BMDL
+#> 1.499026 1.169727
+
+
+
+## Plotting
+
+plot(bmd0)
+
+
+
+# Plot both limits of confidence interval
+
+plot(bmd0, interval = "twosided")
+
+
+
+# Pass argument to plot.bmd to plot confidence band around curve
+
+plot(bmd0, type = "confidence")
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+# Plot
+
+qplotBmd(bmd0, interval = "twosided", add = FALSE)
+
+
+
+qplotDrc(model,type="confidence") +
+
+ qplotBmd(bmd0, interval = "twosided", add = TRUE)
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+
+qplotBmd(bmd0, interval = "twosided", add = FALSE)
+
+library(drc)
+
+library(drcData)
+
+library(ggplot2)
+
+
+
+## Fitting models to be plotted below
+
+ryegrass.m1 <- drm(rootl~conc, data = ryegrass, fct = LL.4())
+
+ryegrass.m2 <- drm(rootl~conc, data = ryegrass, fct = LL.3()) # lower limit fixed at 0
+
+
+
+## Plotting observations and fitted curve for the first model
+
+p <- qplotDrc(ryegrass.m1)
+
+p
+
+
+
+## Add confidence region for the first model.
+
+p + qplotDrc(ryegrass.m1, type="confidence", add = TRUE)$confBandLayer
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+
+## Plot both models
+
+p + qplotDrc(ryegrass.m2, add = TRUE)$curveLayer
+
+
+
+## Fitting model to be plotted below
+
+spinach.m1 <- drm(SLOPE~DOSE, CURVE, data = spinach, fct = LL.4())
+
+
+
+## Plot with no colours
+
+qplotDrc(spinach.m1)
+
+
+
+## Plot with default colours
+
+qplotDrc(spinach.m1, col = TRUE)
+
+
+
+## Plot with specified colours
+
+qplotDrc(spinach.m1, col = TRUE) +
+
+ scale_color_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod",
+
+ "darkslategray4", "plum4"))

+
+
+
+## Plot with confidence regions
+
+qplotDrc(spinach.m1, col = TRUE, type = "confidence")
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+
+## Plot points and add confidence regions. Confidence regions are coloured by the "fill" aesthetic.
+
+## Customising the x scale by adding a new scale.
+
+qplotDrc(spinach.m1, col = TRUE, type = "confidence") +
+
+ qplotDrc(spinach.m1, col = TRUE, type = "average", add = TRUE)$obsLayer +
+
+ scale_color_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod",
+
+ "darkslategray4", "plum4"))+
+
+ scale_fill_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod",
+
+ "darkslategray4", "plum4")) +
+
+ scale_x_continuous(trans = scales:::pseudo_log_trans(sigma = 0.2, base = exp(1)))
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning in (tquan * sqrt(varVal + sumObjRV)) * c(-1, 1): Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Scale for x is already present.
+#> Adding another scale for x, which will replace the existing scale.
This is an R package for benchmark dose (BMD) estimation, which expands upon the functionality of the drc package.
+This package is currently maintained by Jens Riis Baalkilde and Signe Marie Jensen, Department of Plant and Environmental Sciences, University of Copenhagen.
+Install the bmd package from GitHub. The bmd package works best with the drc package installed from GitHub as well.
+
+install.packages("devtools")
+devtools::install_github("DoseResponse/drcData")
+devtools::install_github("DoseResponse/drc")
+devtools::install_github("DoseResponse/bmd")The bmd package is a natural extension of the drc package. Key features of the bmd package includes:
+In the following it is demonstrated how to use the functions in the bmd package on two data sets with a continuous response variable and one data set with a quantal response.
+First, the data set from the drcData package is loaded, and a dose-response model is fitted.
+
+data("secalonic")
+secalonic.LL.4 <- drm(rootl ~ dose, data = secalonic, fct = LL.4())Users familiar with the drc package already know how straight-forward it is to plot dose-response models using the plot() function. The qplotDrc() function in the bmd package mimics the same functionality based on ggplot2.
+
+plot(secalonic.LL.4, main = "Secalonic model plotted by basic R plotting")

Similar to the old method of plotting dose-response curves, qplotDrc() features several options for customisation.
+
+qplotDrc(secalonic.LL.4, type = "all")
+qplotDrc(secalonic.LL.4, type = "obs")
+qplotDrc(secalonic.LL.4, type = "bars")
+qplotDrc(secalonic.LL.4, type = "confidence")
A wide range of BMD definitions are implemented in the bmd package. In the following, the BMD and BMDL based on the “relative risk” definition recommended by EFSA, with a BMR = 10% are computed.
+
+bmd(secalonic.LL.4, bmr = 0.1, backgType = "modelBased", def = "relative")The default interval is a Wald type confidence interval. If a profile likelihood confidence interval is preferred, this can be specified by the “interval” argument.
+
+bmd(secalonic.LL.4, bmr = 0.1, backgType = "modelBased", def = "relative", interval = "profile")The current state-of-the-art definition of the BMD is the hybrid definition. In the following, the BMD and BMDL based on the “excess risk” definition based on the hybrid method with BMR = 10%, and adverse background level set to the estimated background level minus 1SD is calculated.
+
+bmd(secalonic.LL.4, bmr = 0.1, backgType = "hybridSD", backg = 1, def = "hybridExc")For technical reasons, profile intervals for BMD estimates based on the hybrid method, are not currently available.
+The qplotBmd() function ca be used to plot BMD along with the dose-response curve.
+
+qplotBmd(bmd(secalonic.LL.4, bmr = 0.1, backgType = "modelBased", def = "relative", display = FALSE)) # display = FALSE hides output from bmd function
An additional set of dose-response models are fitted.
+
+secalonic.LL.3 <- drm(rootl ~ dose, data = secalonic, fct = LL.3())
+secalonic.LN.3 <- drm(rootl ~ dose, data = secalonic, fct = LN.3())
+secalonic.LN.4 <- drm(rootl ~ dose, data = secalonic, fct = LN.4())
+secalonic.W1.3 <- drm(rootl ~ dose, data = secalonic, fct = W1.3())
+secalonic.W1.4 <- drm(rootl ~ dose, data = secalonic, fct = W1.4())
+secalonic.W2.3 <- drm(rootl ~ dose, data = secalonic, fct = W2.3())
+secalonic.W2.4 <- drm(rootl ~ dose, data = secalonic, fct = W2.4())
+
+secalonic.modelList <- list(secalonic.LL.3, secalonic.LL.4, secalonic.LN.3, secalonic.LN.4,
+ secalonic.W1.3, secalonic.W1.4, secalonic.W2.3, secalonic.W2.4)BMD can now be estimated by MA by using the function bmdMA. Type of model weights need to be specified as well as MA type.
+
+bmdMA(secalonic.modelList, modelWeights = "AIC", type = "Buckland", bmr = 0.1, backgType = "modelBased", def = "relative")
+set.seed(123)
+bmdMA(secalonic.modelList, modelWeights = "AIC", type = "bootstrap", bmr = 0.1, backgType = "modelBased", def = "relative", R = 500, progressInfo = FALSE)
+bmdMA(secalonic.modelList, modelWeights = "AIC", type = "Buckland", bmr = 0.1, backgType = "hybridSD", def = "hybridExc", backg = 1)An experiment was conducted where some pots were treated with the herbicide Bentazone, and other pots were treated with Glyphosate. A model with separate curves for each herbicide is fitted as follows.
+
+data("S.alba.comp")
+S.alba.comp.LL.4 <- drm(drymatter ~ dose, curveid = herbicide, data = S.alba.comp, fct = LL.4())To plot the function, qplotDrc can be used:
+
+qplotDrc(S.alba.comp.LL.4)
+qplotDrc(S.alba.comp.LL.4, col = TRUE, type = "confidence") +
+ qplotDrc(S.alba.comp.LL.4, col = TRUE, type = "obs", add = TRUE)$obsLayer
This also illustrates how qplotDrc() can be layered to produce custom plots, by using the argument “add = TRUE”, and choosing either the layer of observations (“obsLayer”), the layer with the dose-response curve (“curveLayer”), or the layer with the confidence band around the curves (“confBandLayer”).
+ +20 animals were exposed to 4 doses of an unknown substance, 5 animals per dose. The number of dead animals for each dose were recorded. In the following, the data is loaded, and a 2-parameter is fitted to the data. Subsequently, a plot of the resulting dose-response curve is created using qplotDrc().
+
+data("acute.inh")
+acute.inh.LL.2 <- drm(num.dead/total ~ dose, weights = total, data = acute.inh, fct = LL.2(), type = "binomial")
+
+qplotDrc(acute.inh.LL.2)
For binomial response data, the “excess” and “additional” BMD definitions are available. When the background response is , they are identical:
+
+bmd(acute.inh.LL.2, bmr = 0.1, backgType = "modelBased", def = "additional")
+bmd(acute.inh.LL.2, bmr = 0.1, backgType = "modelBased", def = "excess")
+qplotBmd(bmd(acute.inh.LL.2, bmr = 0.1, backgType = "modelBased", def = "additional", display = FALSE)) +
+ ggplot2::scale_x_continuous(limits = c(0,2100), trans = scales::transform_pseudo_log(2000))## Scale for x is already present.
+## Adding another scale for x, which will replace the existing scale.
AIC.drcHetVar.RdS3 method
+# S3 method for class 'drcHetVar'
+AIC(object, ..., k = 2)AIC.drcOrdinal.RdS3 method
+# S3 method for class 'drcOrdinal'
+AIC(object, ..., k = 2)BCa.RdHelp funtion to bmdBoot
+BCa(obs, data, bootSample, bootjack, level)BIC.drcHetVar.RdS3 method
+# S3 method for class 'drcHetVar'
+BIC(object, ...)BIC.drcOrdinal.RdS3 method
+# S3 method for class 'drcOrdinal'
+BIC(object, ...)MACurve.RdComputing weighted average response estimates across multiple dose-response +curves.
+MACurve(x, modelList, modelWeights, stackingSeed = 1, stackingSplits = 2)a vector of dose values for which the weighted average of response +estimates are to be computed
list of models of class drc
character string specifying the type of weights used, +"AIC", "BIC" or "Stack", or a vector of the same length as the modelList +with user defined weights
integer or NULL: Random seed to use in the data split in
+the estimation of the Stacking Weights, when modelWeights = "Stack".
+The global seed is reset to the initial value after estimation of the
+weights, so this option does not interfere with a globally set seed.
integer or "LOO": When modelWeights = "Stack",
+the Stacking Weights are estimated, which are based on V-fold
+cross-validation. The stackingSplits argument sets the number V of data
+splits used in the cross validation. The "LOO" (Leave one out) is a shortcut
+to setting V equal to the number of observations in the data set.
numeric
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+Details on the implemented definitions and methods can be found in Crump +(2002)
+
+library(bmd)
+library(drc)
+library(drcData)
+library(ggplot2)
+
+# fit models to aconiazide data
+aconiazide.LL.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LL.3())
+aconiazide.LN.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LN.3())
+aconiazide.W1.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W1.3())
+aconiazide.W2.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W2.3())
+
+# plot the MA curve
+plot(aconiazide.LL.3, type = "obs")
+curve(
+ MACurve(x, modelList = list(aconiazide.LL.3, aconiazide.LN.3,aconiazide.W1.3, aconiazide.W2.3),
+ modelWeights = "AIC"),
+ add = TRUE)
+
+
+# or plot using ggplot2
+qplotDrc(aconiazide.LL.3, type = "obs") +
+ geom_function(fun = function(x){
+ MACurve(x, modelList = list(aconiazide.LL.3, aconiazide.LN.3,
+ aconiazide.W1.3, aconiazide.W2.3),
+ modelWeights = "AIC")
+ })
+
+
+PAV.RdThe function monotonizes a sequence of probabilities or means based on the +pool-adjacent-violators algorithm.
+PAV(formula, data, type)an object of class "formula" expressing dose-response +relationship. Details of model specification are given under 'Details'
data frame containing the variables in the formula
character string specifying the type of data used in the model, +"continuous" or "binomial" or "Poisson"
A vector containing the monotonized sequence.
+For details on how the pool-adjacent-violators algorithm is defined see +Silvapulle and Sen (2004).
+Formula should be specified as in the form number/total ~ dose for binomial +data and response ~ for continuous data.
+Silvapulle, M. J. and Sen, P. K. (2004). Constrained statistical +inference: order, inequality, and shape constraints. New York: John Wiley & +Sons.
+bmd-package.RdA package for benchmark dose modeling in toxicology and risk assessment
+bmd.RdEstimation of benchmark doses and benchmark dose lower limit from dose +response model fits
+bmd(
+ object,
+ bmr,
+ backgType = c("modelBased", "absolute", "hybridSD", "hybridPercentile"),
+ backg = NA,
+ controlSD = NA,
+ def = c("excess", "additional", "relative", "extra", "added", "hybridExc", "hybridAdd",
+ "point"),
+ respTrans = c("none", "log", "sqrt"),
+ interval = c("delta", "sandwich", "inv", "profile", "profileGrid"),
+ sandwich.vcov = FALSE,
+ display = TRUE,
+ level = 0.95,
+ profileGridSize = NA,
+ profileProgressInfo = TRUE
+)object of class drc
numeric value of benchmark response level for which to calculate +the benchmark dose
character string specifying how the background level is +specified. For binomial data the options are "modelBased" and "absolute". +For continuous data the options are "modelBased","absolute", "hybridSD" and +"hybridPercentile". For count data (Poisson, negbin1 or negbin2) the options +are "modelBased" and "absolute".
+"modelBased" - the background level is obtained from the model as the level +for dose 0: p0 = f(0)
+"absolute" - the background level is specified by the user through the backg +argument: p0 = backg for binomial response and for the "relative", "extra" +and "added" definition for continuous or count response data. p0 = 1 - +phi((back - f(0))/sigma) for "hybridExc" and "hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +function and sigma is the SD for the control group.
+"hybridPercentile" - the background risk is specified by the user in terms +of percentile from the control group distribution (assuming a normal +distribution). p0 = 1 - phi((x0 - f(0))/sigma) = 1 - backg. where x0 is +the level for which the response is considered adverse, phi is the normal +distribution function and sigma is the SD for the control group
+If not specified, it will be set to "modelBased" for all def excluding +"hybridExc" and "hybridAdd", for these the default is "hybridSD".
numeric value specifying the background level. Defaults to 0 +for "absolute" background risk for binomial response (1 for decreasing +dose-response models), 2 SD for "hybridSD" background and 0.9 for +"hybridPercentile"
numeric value specifying the standard deviation of the +control group (used in the hybrid approach). If not specified the SD for the +control group will be estimated as the square root of the residual variance +(assuming variance homogeneity).
character string specifying the definition of the benchmark dose +to use in the calculations. "excess", "additional" and "point" are for +binomial response. "relative", "extra", "added", "hybridExc" (excess +hybrid), "hybridAdd" (additional hybrid), and "point" are for continuous +response. "relative", "extra", and "point" are for count response data.
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for binomial, count and +continuous response data
+"relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for +continuous and count response data
+"extra" - BMR is defined as: BMR = (f(BMD) - p0)/(f(Inf) - p0). Works for +continuous and count response data
+"added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +response
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +(1- p0), where x0 is the level for which the response is considered adverse, +phi is the normal distribution function and sigma is the SD for the control +group. Works for continuous response
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +where x0 is the level for which the response is considered adverse, phi is +the normal distribution function and sigma is the SD for the control group. +Works for continuous response
if the dose-response model is fitted with a transformed +response, specifying this option ensures that the background level for the +BMD is computed on the original scale. Options include "none" (default), +"log" (natural logarithm) and "sqrt"(square root).
character string specifying the type of confidence interval +to use: "delta" (default), "inv", "profile" or "profileGrid"
+"delta" - BMDL is based on the lower limit of a Wald confidence interval +based on the delta method
+"inv" - BMDL is based on inverse regression, that is the dose associated +with the upper limit of the pointwise confidence interval of the +dose-response curve. Currently not available for a transformed response +variable.
+"profile" - A profile confidence interval is computed by reparametrising the
+model. Only available for backgType in ("modelBased", "absolute"),
+def in ("excess", "additional","relative", "extra", "point") and
+dose-response models with model functions of types Log-Logistic, Log-Normal
+and Weibull 1 and 2. The limits of the confidence interval are searched for
+within a grid of size specified by the profileGridSize argument,
+however the values of the confidence interval are not limited to the values
+on the grid.
"profileGrid" - A profile confidence interval is computed by creating a
+multi-dimensional grid of parameter values for the model. Then, a confidence
+region for the parameters in the model is estimated, and the BMD is
+estimated for all combinations of parameter values within the region. The
+interval for the BMD is then computed as the minimum and maximum values of
+BMD values within the region. Note that for models with several parameters
+(3-5), is might take a while to compute the confidence interval using this
+method. The number of grid points for each parameter can be specified by the
+profileGridSize argument.
logical. If TRUE BMDL is based on confidence intervals +based on robust standard errors from the sandwich covariance matrix
logical. If TRUE the results are displayed; otherwise they +are not
numeric value specifying the levle of the confidence interval +underlying BMDL. Default is 0.95
integer specifying the number of grid points used for
+each parameter, when interval is either "profile" or
+"profileGridSearch". Defaults to 20 if not specified.
logical. If TRUE, progress info is be printed
+while computed profile confidence intervals using the profileGrid
+method. Default is TRUE.
A list of four elements: Results contain the estimated BMD and BMDL, +bmrScaled is the response value corresponding to the BMD, interval gives the +lower (BMDL) and upper (BMDU) end of the confidence interval of BMD, SE +gives the standard error of BMD.
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+Details on the implemented definitions and methods can be found in Crump +(2002)
+Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +Benchmark Dose Calculation from Epidemiological Data, Biometrics +57, 698–706.
+Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +Data, Critical Reviews in Toxicology 32, 133–153.
+
+library(drc)
+#> Warning: package 'drc' was built under R version 4.4.2
+#> Loading required package: MASS
+#>
+#> 'drc' has been loaded.
+#> Please cite R and 'drc' if used for a publication,
+#> for references type 'citation()' and 'citation('drc')'.
+#>
+#> Attaching package: 'drc'
+#> The following objects are masked from 'package:stats':
+#>
+#> gaussian, getInitial
+library(drcData)
+#>
+#> Attaching package: 'drcData'
+#> The following objects are masked from 'package:drc':
+#>
+#> auxins, nasturtium
+
+## Fitting log-logistic two-parameter model to binomial data
+deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial")
+
+## BMD for 5% additional risk with estimated background risk
+bmd(deguelin.m1, 0.05, backgType = "modelBased", def = "additional")
+#> BMD BMDL
+#> 2.176587 1.353876
+
+## BMD for 10% additional risk with 2% background risk
+bmd(deguelin.m1, 0.1, backg = 0.02 , backgType = "absolute", def = "additional")
+#> BMD BMDL
+#> 3.558084 2.515197
+
+## BMD for 5% excess risk and background 0
+bmd(deguelin.m1, 0.05, backg = 0, backgType = "absolute", def = "excess")
+#> BMD BMDL
+#> 2.176587 1.353876
+
+## Dose resulting in 12% risk
+bmd(deguelin.m1, 0.12, def = "point")
+#> BMD BMDL
+#> 3.558084 2.515197
+
+## Benchmark doses for a continuous response
+ryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+
+## BMD as the dose resulting in a 5% change relative to the mean background level
+bmd(ryegrass.m1, 0.05, backgType = "modelBased", def = "relative", display = TRUE)
+#> BMD BMDL
+#> 1.165279 0.8372753
+
+## BMD using the hybrid method, background risk is 2 SD, hybrid definition using excess risk
+bmd(ryegrass.m1, 0.05, backg = 2, backgType = "hybridSD", def = "hybridAdd", display = TRUE)
+#> BMD BMDL
+#> 1.041279 0.7106359
+
+
+bmdBoot.RdThe function estimates BMD and BMDL using bootstrap based on parametric +dose-response models.
+bmdBoot(
+ object,
+ bmr,
+ R = 1000,
+ bootType = "nonparametric",
+ bmdType = "orig",
+ backgType = c("modelBased", "absolute", "hybridSD", "hybridPercentile"),
+ backg = NA,
+ controlSD = NA,
+ def = c("excess", "additional", "relative", "extra", "added", "hybridExc", "hybridAdd",
+ "point"),
+ respTrans = c("none", "log", "sqrt"),
+ bootInterval = c("percentile", "BCa"),
+ display = TRUE,
+ level = 0.95
+)object of class drc
numeric value of benchmark response level for which to calculate +the benchmark dose
number of bootstrap samples. Default is 1000
character string specifying type of bootstrap used. +"nonparametric" (default), "semiparametric" or "parametric". "Semiparametric +is only available for continuous data and "nonparametric" is at present the +only option for count data. See details below
Type of estimate for BMD. Default is "orig" the bmd estimate +from the original data set. Other choices are "mean" - the mean of the +bootstrap estimates, or "median" - the median of the bootstrap estimates
character string specifying how the background level is +specified. For binomial and count data the options are "modelBased" and +"absolute". For continuous data the options are "modelBased", "absolute", +"hybridSD" and "hybridPercentile"
+"modelBased" - the background level is obtained from the model as the level +for dose 0: p0 = f(0)
+"absolute" - the background level is specified by the user through the backg +argument: p0 = backg for binomial response and for the "relative", "extra" +and "added" definition for continuous response. p0 = 1 - phi((back - +f(0))/sigma) for "hybridExc" and "hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +function and sigma is the SD for the control group. "hybridPercentile" - +the background risk is specified by the user in terms of percentile from the +control group distribution (assuming a normal distribution). p0 = 1 - +phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +response is considered adverse, phi is the normal distribution function and +sigma is the SD for the control group
numeric value specifying the background level. Defaults to 0 +for "absolute" background level for binomial response (1 for decreasing +dose-response models), 2 SD for "hybridSD" background and 0.9 for +"hybridpercentile"
numeric value specifying the standard deviation of the +control group (used in the hybrid approach). If not specified the SD for the +control group will be estimated as the square root of the residual variance +(assuming variance homogeneity).
character string specifying the definition of the benchmark dose +to use in the calculations. "excess" , "additional" and "point" are for +binomial response whereas "relative", "extra", "added", "hybridExc" (excess +hybrid), "hybridAdd" (additional hybrid), and "point" are for continuous +response. "relative", "extra", and "point" are for count response data.
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for binomial, count and +continuous response
+"relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for count and +continuous response
+"extra" - BMR is defined as: BMR = (f(BMD) - p0)/(f(Inf) - p0). Works for +count and continuous response
+"added" - BMR is defined as: BMR= f(BMD) + p0. Works for count and +continuous response
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +(1- p0), where x0 is the level for which the response is considered adverse, +phi is the normal distribution function and sigma is the SD for the control +group. Works for continuous response
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +where x0 is the level for which the response is considered adverse, phi is +the normal distribution function and sigma is the SD for the control group. +Works for continuous response
if the dose-response model is fitted with a transformed +response, specifying this option ensures that the background level for the +BMD is computed on the original scale. Options include "none" (default), +"log" (natural logarithm) and "sqrt"(square root).
character string indicating type of bootstrap interval +used for estimating BMDL. "Percentile" (default) or "BCa" (Bias corrected +and adjusted)
logical. If TRUE the results are displayed; otherwise they +are not
numeric value specifying the levle of the confidence interval +underlying BMDL. Default is 0.95
A list of three elements: Results contain the estimated BMD and +BMDL, bootEst is a vector af all of the estimated BMD values from each +bootstrap sample, Interval gives BMDL and BMDU, which is identical to the +confidence interval for the percentile interval approach.
+BMDL is defined as the 5th percentile in the bootstrap distribution.
+Bootstrapping with the argument boot = "nonparametric" is done by sampling +with replacement from the original data set. Bootstrapping with the argument +boot = "parametric" is done by sampling from norm(mean(Y_i),sd(Y_0)), +assuming equal variance between groups, in case of continuous data. For +binomial data, each bootstrap data set is sampled from binom(N_i,Y_i/N_i). +In case of Y_i = 0 or Y_i = N_i shrinkage is used to avoid that the +resampling always produces 0 or 1, respectively. In this case data is +sampled from binom(N_i,(Y_i+1/4)/(N_i+1/2)). Bootstrapping with argument +boot = "semiparametric" is done by sampling with replacement from the +residuals.
+All sampling is made within dose groups.
+
+## Data on root length in ryegrass after exposure to ferulic acid
+require(drc)
+require(drcData)
+data(ryegrass)
+
+ryegrass.m1 <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+
+## BMD using the hybrid method, background risk is 2 SD, hybrid definition using excess risk
+bmdBoot(ryegrass.m1, 0.05, backgType = "hybridSD", def = "hybridAdd", R = 50)
+#> BMD BMDL
+#> 1.041279 0.8640942
+
+## BMD from the same definitions but using parametric bootstrap
+bmdBoot(ryegrass.m1, 0.05, backgType = "hybridSD", def = "hybridAdd", bootType="parametric",R = 50)
+#> BMD BMDL
+#> 1.041279 0.7704424
+
+bmdHetVar.RdEstimation of benchmark doses and benchmark dose lower limit based on the +hybrid method from dose response model fits with the option to specify a +heterogeneous variance structure, where the variance depends on the dose +level and/or the fitted values
+dose-response model with a heterogeneous variance structure of
+class drcHetVar
numeric value of benchmark response level for which to calculate +the benchmark dose
character string specifying how the background level is +specified. The options are "absolute", "hybridSD" and "hybridPercentile".
+"absolute" - the background level is specified by the user through the backg +argument: p0 = 1 - phi((back - f(0))/sigma(0)) for "hybridExc" and +"hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma(0) + +f(0)) - f(0))/sigma(0)) = 1 - phi(backg), where phi is the normal +distribution function and sigma(0) is the SD for the control group.
+"hybridPercentile" - the background risk is specified by the user in terms +of percentile from the control group distribution (assuming a normal +distribution). p0 = 1 - phi((x0 - f(0))/sigma(0)) = 1 - backg. where x0 is +the level for which the response is considered adverse, phi is the normal +distribution function and sigma(0) is the SD for the control group
numeric value specifying the background level. Defaults to 2 SD +for "hybridSD" background and 0.9 for "hybridPercentile"
character string specifying the definition of the benchmark dose +to use in the calculations. "hybridExc" (excess hybrid), "hybridAdd" +(additional hybrid), available.
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma(BMD)) - +p0)/ (1- p0), where x0 is the level for which the response is considered +adverse, phi is the normal distribution function and sigma(BMD) is the SD at +the benchmark dose.
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma(BMD)) - +p0, where x0 is the level for which the response is considered adverse, phi +is the normal distribution function and sigma(BMD) is the SD at the +benchmark dose.
character string specifying the type of confidence interval +to use: "boot" (default) or "none"
+"boot" - BMDL is based on percentile bootstrapping.
+"none" - no confidence interval is computed.
number of bootstrap samples. Ignored if interval = "none"
numeric value specifying the levle of the confidence interval +underlying BMDL. Default is 0.95
character string specifying the type of bootstrap samples. +Options are "nonparametric" (observations are drawn without replacement from +the original data set), "semi-parametric" (standardised residuals are drawn +with replacement and subsequently rescaled according to the model) and +"parametric" (new observations are simulated from the distribution given by +the fitted model).
logical. If TRUE, progress info is be printed while +bootstrap confidence intervals are estimated. Default is TRUE.
logical. If TRUE the results are displayed; otherwise they +are not
A list of five elements: Results contain the estimated BMD and BMDL, +bmrScaled is the response value corresponding to the BMD, interval gives the +lower (BMDL) and upper (BMDU) end of the confidence interval of BMD
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+REFERENCES TO BE ADDED/WRITTEN
+
+library(drc)
+library(drcData)
+library(bmd)
+# install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT.
+
+# ryegrass data
+set.seed(123)
+ryegrass.LL.4.hetVar <- drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2),
+ data = ryegrass, fct = LL.4())
+plot(ryegrass.LL.4.hetVar)
+#> Loading required namespace: gridExtra
+
+bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1,
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE,
+ display = TRUE) # increase R
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 0.823838 0.5889243
+bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1,
+ def = "hybridExc", R = 50, level = 0.95,
+ bootType = "parametric", progressInfo = TRUE, display = TRUE) # parametric bootstrap
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 0.823838 0.4823374
+
+# barley data
+set.seed(123)
+barley.LL.4.hetVar <- drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), data = barley, fct = LL.4())
+plot(barley.LL.4.hetVar)
+
+bmdHetVar(barley.LL.4.hetVar, bmr = 0.1, backgType = "hybridSD", backg = 1,
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 218.0105 123.6738
+
+# GiantKelp data
+set.seed(123)
+GiantKelp.LL.4.hetVarSq <- drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2),
+ data = GiantKelp, fct = LL.4())
+plot(GiantKelp.LL.4.hetVarSq)
+
+bmdHetVar(GiantKelp.LL.4.hetVarSq, bmr = 0.1, backgType = "hybridSD", backg = 1,
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 3.045686 0.404048
+
+GiantKelp.LL.4.hetVarLogSq <- drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2),
+ data = GiantKelp, fct = LL.4())
+plot(GiantKelp.LL.4.hetVarLogSq)
+
+bmdHetVar(GiantKelp.LL.4.hetVarLogSq, bmr = 0.1, backgType = "hybridSD", backg = 1,
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 4.412019 0.4280083
+
+bmdHetVarMA.RdEstimation of benchmark doses and benchmark dose lower limit based on the +hybrid method from a list of dose response model fits with the option to +specify a heterogeneous variance structure, where the variance depends on +the dose level and/or the fitted values
+a list of dose-response models with a heterogeneous
+variance structure of class drcHetVar
character string specifying the type of weights used, +"AIC" or "BIC", or a numeric vector of the same length as the modelList with +user defined weights
numeric value of benchmark response level for which to calculate +the benchmark dose
character string specifying how the background level is +specified. The options are "absolute", "hybridSD" and "hybridPercentile".
+"absolute" - the background level is specified by the user through the backg +argument: p0 = 1 - phi((back - f(0))/sigma(0)) for "hybridExc" and +"hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma(0) + +f(0)) - f(0))/sigma(0)) = 1 - phi(backg), where phi is the normal +distribution function and sigma(0) is the SD for the control group.
+"hybridPercentile" - the background risk is specified by the user in terms +of percentile from the control group distribution (assuming a normal +distribution). p0 = 1 - phi((x0 - f(0))/sigma(0)) = 1 - backg. where x0 is +the level for which the response is considered adverse, phi is the normal +distribution function and sigma(0) is the SD for the control group
numeric value specifying the background level. Defaults to 2 SD +for "hybridSD" background and 0.9 for "hybridPercentile"
character string specifying the definition of the benchmark dose +to use in the calculations. "hybridExc" (excess hybrid), "hybridAdd" +(additional hybrid), available.
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma(BMD)) - +p0)/ (1- p0), where x0 is the level for which the response is considered +adverse, phi is the normal distribution function and sigma(BMD) is the SD at +the benchmark dose.
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma(BMD)) - +p0, where x0 is the level for which the response is considered adverse, phi +is the normal distribution function and sigma(BMD) is the SD at the +benchmark dose.
character string specifying the type of confidence interval +to use: "boot" (default) or "none"
+"boot" - BMDL is based on nonparametric percentile bootstrapping.
+"none" - no confidence interval is computed.
number of bootstrap samples. Ignored if interval = "none"
numeric value specifying the levle of the confidence interval +underlying BMDL. Default is 0.95
logical. If TRUE, progress info is be printed while +bootstrap confidence intervals are estimated. Default is TRUE.
logical. If TRUE the results are displayed; otherwise they +are not
A list of four elements: Results contain the estimated BMD and BMDL, +Boot.samples.used gives the number of boot samples that resulted in +succesful estimations and were accordingly used in the estimation of BMDL +(and BMDU), Interval gives BMDL and BMDU, which is identical to the +confidence interval for the percentile interval approach, and modelWeights +includes the estimated weights.
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+REFERENCES TO BE ADDED/WRITTEN
+
+library(drc)
+library(drcData)
+library(bmd)
+# install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT.
+
+# ryegrass data
+set.seed(123)
+ryegrass.hetVar.list <- list(
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = LL.4()),
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = LN.4()),
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = W1.4()),
+ drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2), data = ryegrass, fct = W2.4()))
+bmdHetVarMA(ryegrass.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridPercentile",
+ backg = 0.1, def = "hybridExc", R = 100, level = 0.95)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 1%
|
|= | 2%
|
|== | 3%
|
|=== | 4%
|
|==== | 5%
|
|==== | 6%
|
|===== | 7%
|
|====== | 8%
|
|====== | 9%
|
|======= | 10%
|
|======== | 11%
|
|======== | 12%
|
|========= | 13%
|
|========== | 14%
|
|========== | 15%
|
|=========== | 16%
|
|============ | 17%
|
|============= | 18%
|
|============= | 19%
|
|============== | 20%
|
|=============== | 21%
|
|=============== | 22%
|
|================ | 23%
|
|================= | 24%
|
|================== | 25%
|
|================== | 26%
|
|=================== | 27%
|
|==================== | 28%
|
|==================== | 29%
|
|===================== | 30%
|
|====================== | 31%
|
|====================== | 32%
|
|======================= | 33%
|
|======================== | 34%
|
|======================== | 35%
|
|========================= | 36%
|
|========================== | 37%
|
|=========================== | 38%
|
|=========================== | 39%
|
|============================ | 40%
|
|============================= | 41%
|
|============================= | 42%
|
|============================== | 43%
|
|=============================== | 44%
|
|================================ | 45%
|
|================================ | 46%
|
|================================= | 47%
|
|================================== | 48%
|
|================================== | 49%
|
|=================================== | 50%
|
|==================================== | 51%
|
|==================================== | 52%
|
|===================================== | 53%
|
|====================================== | 54%
|
|====================================== | 55%
|
|======================================= | 56%
|
|======================================== | 57%
|
|========================================= | 58%
|
|========================================= | 59%
|
|========================================== | 60%
|
|=========================================== | 61%
|
|=========================================== | 62%
|
|============================================ | 63%
|
|============================================= | 64%
|
|============================================== | 65%
|
|============================================== | 66%
|
|=============================================== | 67%
|
|================================================ | 68%
|
|================================================ | 69%
|
|================================================= | 70%
|
|================================================== | 71%
|
|================================================== | 72%
|
|=================================================== | 73%
|
|==================================================== | 74%
|
|==================================================== | 75%
|
|===================================================== | 76%
|
|====================================================== | 77%
|
|======================================================= | 78%
|
|======================================================= | 79%
|
|======================================================== | 80%
|
|========================================================= | 81%
|
|========================================================= | 82%
|
|========================================================== | 83%
|
|=========================================================== | 84%
|
|============================================================ | 85%
|
|============================================================ | 86%
|
|============================================================= | 87%
|
|============================================================== | 88%
|
|============================================================== | 89%
|
|=============================================================== | 90%
|
|================================================================ | 91%
|
|================================================================ | 92%
|
|================================================================= | 93%
|
|================================================================== | 94%
|
|================================================================== | 95%
|
|=================================================================== | 96%
|
|==================================================================== | 97%
|
|===================================================================== | 98%
|
|===================================================================== | 99%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 1.093996 0.7095869
+bmdHetVarMA(ryegrass.hetVar.list, modelWeights = c(0.4, 0.2, 0.1, 0.3), bmr = 0.1,
+ backgType = "hybridPercentile", backg = 0.1,
+ def = "hybridExc", R = 50, level = 0.95) # user-defined weights
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 0.964126 0.7893021
+
+# barley data
+set.seed(123)
+barley.hetVar.list <- list(drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2),
+ data = barley, fct = LL.4()),
+ drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2),
+ data = barley, fct = W2.4()))
+bmdHetVarMA(barley.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridSD", backg = 2,
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 218.9167 151.2401
+
+# GiantKelp data
+set.seed(123)
+GiantKelp.hetVar.list <- list(
+ drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2), data = GiantKelp, fct = LL.4()),
+ drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2), data = GiantKelp, fct = LL.4()))
+bmdHetVarMA(GiantKelp.hetVar.list, modelWeights = "AIC", bmr = 0.1, backgType = "hybridSD",
+ backg = 1, def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE,
+ display = TRUE)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> [1,] 4.073336 0.6266271
+
+bmdIso.RdThe function monotonizes the sequence of response values based on the +pool-adjacent violators algorithm and based on these use linear +interpolating splines to build an isotonic regression model. From this model +a benchmark dose is estimated.
+an object of class "formula" expressing the dose-response +relationship. Details of model specification are given under 'Details'
data frame containing the variables in the model
character string specifying the type of data used in the model. +"continuous", "binomial" or "Poisson"
numeric value of benchmark response level for which to calculate +the benchmark dose
background probability for hybrid definitions
character string specifying how the background level is +specified. For binomial data the options are "modelBased" and "absolute". +For continuous data the options are "absolute", "hybridSD" and +"hybridPercentile"
+"modelBased" - the background level is obtained from the model as the level +for dose 0: p0 = f(0)
+"absolute" - the background level is specified by the user through the backg +argument: p0 = backg for binomial response and for the "relative" and +"added" definition for continuous response. p0 = 1 - phi((back - +f(0))/sigma) for "hybridExc" and "hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +function and sigma is the SD for the control group. "hybridPercentile" - +the background risk is specified by the user in terms of percentile from the +control group distribution (assuming a normal distribution). p0 = 1 - +phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +response is considered adverse, phi is the normal distribution function and +sigma is the SD for the control group
numeric value specifying the background level. Defaults to 0 +for "absolute" background risk for binomial response (1 for decreasing +dose-response models), 2 SD for "hybridSD" background and 0.9 for +"hybridpercentile"
character string specifying the definition of the benchmark dose +to use in the calculations. "excess", "additional" and "point" are for +binomial response whereas "relative", "added", "hybridExc" (excess hybrid), +"hybridAdd" (additional hybrid), and "point" are for continuous response. +"relative", "extra", and "point" are for count response data.
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for binomial, count and +continuous response
+"relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for count and +continuous response
+"added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +response
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +(1- p0), where x0 is the level for which the response is considered adverse, +phi is the normal distribution function and sigma is the SD for the control +group. Works for continuous response
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +where x0 is the level for which the response is considered adverse, phi is +the normal distribution function and sigma is the SD for the control group. +Works for continuous response
logical. If TRUE the results are displayed; otherwise they +are not
A matrix with two columns, one containing BMD and the other +containing BMDL.
+Formula should be specified as in the form number/total ~ dose for binomial +data. For details about the use of isotonic regression for BMD estimation +see Piegorsch et al. (20014) and Lin et al. (2015).
+Piegorsch, W. W., Xiong, H., Bhattacharya, R. N., & Lin, L. +(2014). Benchmark dose analysis via nonparametric regression modeling. Risk +Analysis, 34(1), 135-151
+Lin, L., Piegorsch, W. W. and Bhattacharya R. (2015). Nonparametric +benchmark dose estimation with continuous dose-response data. Scandinavian +Journal of Statistics, 42, 713-731
+
+## Data on tumor incidence in rats after exposure to formaldehyde, from Piegorsch et al. (2014)
+formaldehyde <- data.frame(conc = c(0.0, 0.7, 2.0, 6.0, 10.0, 15.0),
+ tumor.incidence = c(0, 0, 0, 3, 21, 150),
+ total = c(122, 27, 126, 113, 34, 182))
+
+# Estimating BMD from isotonic regression using excess risk definition and a BMR=0.1
+bmdIso(tumor.incidence/total ~ conc,
+ data=formaldehyde,
+ type="binomial",
+ bmr=0.1,
+ backgType = "modelBased",
+ def = "excess")
+#> [1] 6.49705
+
+
+## Data on root length in ryegrass after exposure to ferulic acid
+require(drc)
+require(drcData)
+data(ryegrass)
+
+# As isotonic regression only wors for increasing dose-response relationship
+# the association is turned
+ryegrass1<-ryegrass
+ryegrass1$rootl<-100-ryegrass1$rootl
+
+# Estimating BMD from isotonic regression using relative risk definition
+# and a BMR=0.05
+bmdIso(rootl ~ conc,
+ data=ryegrass1,
+ type="continuous",
+ bmr=0.05,
+ backgType = "modelBased",
+ def = "relative")
+#> [1] 3.682826
+bmdIsoBoot.RdThe function estimates BMD and BMDL using bootstrap based on isotonic +regression.
+an object of class "formula" expressing dose-response +relationship. Details of model specification are given under 'Details'
data frame containing the variables in the model
character string specifying the type of data used in the model. +"continuous" or "binomial" or "Poisson"
numeric value of benchmark response level for which to calculate +the benchmark dose
number of bootstrap samples
character string specifying type of bootstrap used. "resample" +or "pseudorandom". Only option for count data is "resample"
character string specifying how the background level is +specified. For binomial data the options are "modelBased" and "absolute". +For continuous data the options are "modelBased", "absolute", "hybridSD" and +"hybridPercentile"
+"modelBased" - the background level is obtained from the model as the level +for dose 0: p0 = f(0)
+"absolute" - the background level is specified by the user through the backg +argument: p0 = backg for binomial response and for the "relative" and +"added" definition for continuous response. p0 = 1 - phi((back - +f(0))/sigma) for "hybridExc" and "hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +function and sigma is the SD for the control group. "hybridPercentile" - +the background risk is specified by the user in terms of percentile from the +control group distribution (assuming a normal distribution). p0 = 1 - +phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +response is considered adverse, phi is the normal distribution function and +sigma is the SD for the control group
numeric value specifying the background level. Defaults to 0 +for "absolute" background risk for binomial response (1 for decreasing +dose-response models), 2 SD for "hybridSD" background and 0.9 for +"hybridpercentile"
character string specifying the definition of the benchmark dose +to use in the calculations. "excess", "additional" and "point" are for +binomial response whereas "relative", "added", "hybridExc" (excess hybrid), +"hybridAdd" (additional hybrid), and "point" are for continuous response. +"relative", "extra", and "point" are for count response data.
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for binomial, count and +continuous response
+"relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for count and +continuous response
+"added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +response
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +(1- p0), where x0 is the level for which the response is considered adverse, +phi is the normal distribution function and sigma is the SD for the control +group. Works for continuous response
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +where x0 is the level for which the response is considered adverse, phi is +the normal distribution function and sigma is the SD for the control group. +Works for continuous response
A matrix with two columns, one containing BMD and the other +containing BMDL.
+BMD and BMDL is defined as the median and the 5th percentile in the +bootstrap distribution, respectively.
+Formula should be specified as in the form number/total ~ dose for binomial +data.
+Bootstrapping with the argument boot = "resample" is done by sampling with +replacement from the original data set. Bootstrapping with the argument boot += "pseudorandom" is done by sampling from norm(mean(Y_i),sd(Y_0)), assuming +equal variance between groups, in case of continuous data. For binomial +data, each bootstrap data set is sampled from binom(N_i,Y_i/N_i). In case of +Y_i = 0 or Y_i = N_i shrinkage is used to avoid that the resampling always +produces 0 or 1, respectively. In this case data is sampled from +binom(N_i,(Y_i+1/3)/(N_i+1/3)).
+All sampling is made within dose groups.
+For details about the use of isotonic regression for BMD estimation see +Piegorsch et al. (20014) and Lin et al. (2015).
+Piegorsch, W. W., Xiong, H., Bhattacharya, R. N., & Lin, L. +(2014). Benchmark dose analysis via nonparametric regression modeling. Risk +Analysis, 34(1), 135-151
+Lin, L., Piegorsch, W. W. and Bhattacharya R. (2015). Nonparametric +benchmark dose estimation with continuous dose-response data. Scandinavian +Journal of Statistics, 42, 713-731
+
+## Data on tumor incidence in rats after exposure to formaldehyde, from Piegorsch et al. (2014)
+formaldehyde <- data.frame(conc = c(0.0, 0.7, 2.0, 6.0, 10.0, 15.0),
+ tumor.incidence = c(0, 0, 0, 3, 21, 150),
+ total = c(122, 27, 126, 113, 34, 182))
+
+# BMD and BMDL from isotonic regression using excess risk definition and a BMR=0.1
+bmdIsoBoot(tumor.incidence/total ~ conc,
+ data=formaldehyde,
+ type="binomial",
+ bmr=0.1,
+ backgType = "modelBased",
+ def = "excess")
+#>
+#>
+#> BMD BMDL
+#> 6.49705 6.322712
+
+
+## Data on root length in ryegrass after exposure to ferulic acid
+require(drc)
+data(ryegrass)
+
+# As isotonic regression only wors for increasing dose-response relationship
+# the association is turned
+ryegrass1<-ryegrass
+ryegrass1$rootl<-100-ryegrass1$rootl
+
+# Estimating BMD from isotonic regression using relative risk definition and a BMR=0.05
+bmdIsoBoot(rootl ~ conc,
+ data=ryegrass1,
+ type="continuous",
+ bmr=0.05,
+ backgType = "modelBased",
+ def = "relative", R = 100)
+#>
+#>
+#> BMD BMDL
+#> 3.682826 3.249387
+
+bmdMA.RdEstimation of benchmark doses and benchmark dose lower limit based on model +averaging from a user-defined list of dose response model fits
+bmdMA(
+ modelList,
+ modelWeights,
+ bmr,
+ backgType = c("modelBased", "absolute", "hybridSD", "hybridPercentile"),
+ backg = NA,
+ def = c("excess", "additional", "relative", "extra", "added", "hybridExc", "hybridAdd",
+ "point"),
+ respTrans = c("none", "log", "sqrt"),
+ interval = c("delta", "sandwich", "inv", "profile"),
+ type = c("curve", "bootstrap", "Kang", "Buckland"),
+ bootstrapType = c("nonparametric", "parametric"),
+ R = 1000,
+ bootInterval = "percentile",
+ level = 0.95,
+ stackingSeed = NULL,
+ stackingSplits = 2,
+ display = TRUE,
+ progressInfo = TRUE
+)list of models of class drc
character string specifying the type of weights used, +"AIC", "BIC" or "Stack" (Baalkilde, J. R., Hansen, N. R., and Jensen, S. M., +2025), or a vector of the same length as the modelList with user defined +weights
numeric value of benchmark response level for which to calculate +the benchmark dose
character string specifying how the background level is +specified. For binomial data the options are "modelBased" and "absolute". +For continuous data the options are "absolute", "hybridSD" and +"hybridPercentile"
+"modelBased" - the background risk is obtained from the model as the risk +for dose 0: p0 = f(0)
+"absolute" - the background risk is specified by the user through the backg +argument: p0 = backg for binomial response and for the "relative", "extra" +and "added" definition for continuous response. p0 = 1 - phi((back - +f(0))/sigma) for "hybridExc" and "hybridAdd" definitions.
+"hybridSD" - the background risk is specified by the user in terms of number +of SDs from the mean of the control group. p0 = 1 - phi(((backg*sigma + +f(0)) - f(0))/sigma) = 1 - phi(backg), where phi is the normal distribution +function and sigma is the SD for the control group. "hybridPercentile" - +the background risk is specified by the user in terms of percentile from the +control group distribution (assuming a normal distribution). p0 = 1 - +phi((x0 - f(0))/sigma) = 1 - backg. where x0 is the level for which the +response is considered adverse, phi is the normal distribution function and +sigma is the SD for the control group
numeric value specifying the background level. Defaults to 0 +for "absolute" background risk for binomial response (1 for decreasing +dose-response models), 2 SD for "hybridSD" background and 0.9 for +"hybridpercentile"
character string specifying the definition of the benchmark dose +to use in the calculations. "excess" , "additional" and "point" are for +binomial response whereas "relative", "extra", "added", "hybridExc" (excess +hybrid), "hybridAdd" (additional hybrid), and "point" are for continuous +response
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for both binomial and continuous +response
+"relative" - BMR is defined as: BMR = (f(BMD) - p0)/p0. Works for +continuous response
+"extra" - BMR is defined as: BMR = (f(BMD) - p0)/(f(Inf) - p0). Works for +continuous response
+"added" - BMR is defined as: BMR= f(BMD) + p0. Works for continuous +response
+"hybridExc" - BMR is defined as: BMR = (1 - phi((x0 - f(BMD))/sigma) - p0)/ +(1- p0), where x0 is the level for which the response is considered adverse, +phi is the normal distribution function and sigma is the SD for the control +group. Works for continuous response
+"hybridAdd" - BMR is defined as: BMR = 1 - phi((x0 - f(BMD))/sigma) - p0, +where x0 is the level for which the response is considered adverse, phi is +the normal distribution function and sigma is the SD for the control group. +Works for continuous response
if the dose-response model is fitted with a transformed +response, specifying this option ensures that the background level for the +BMD is computed on the original scale. Options include "none" (default), +"log" (natural logarithm) and "sqrt"(square root).
character string specifying the type of confidence interval +to use for the individual models (no effect when type = "bootstrap" or +"curve"): "delta" (default), "sandwich", "inv" or "profile"
+"delta" - BMDL is based on the lower limit of a Wald confidence interval +based on the delta method
+"sandwich" - BMDL is based on the lower limit of a Wald confidence interval +based on the delta method where the sandwich covariance matrix is used
+"inv" - BMDL is based on inverse regression, that is the dose associated +with the upper limit of the point wise confidence interval of the +dose-response curve. Not possible if type = "Buckland"
+"profile" - BMDL is based on the lower limit of a profile likelihood +confidence interval. Not possible if type = "Buckland"
character string specifying how to estimate BMD and BMDL: +"curve", "bootstrap", "Kang" or "Buckland"
+"curve" -
+"bootstrap" -
+"Kang" -
+"Buckland" -
character string indicating type of bootstrap sampling +to be used if type="bootstrap" or "curve". "nonparametric" (default), or +"parametric" (see details)
number of bootstrap samples to use. Default is 1000
character string indicating how to estimate the +bootstrap confidence intervals used to find BMDL type="bootstrap". +"percentile" (default) or "BCa" (Bias corrected and adjusted)
numeric value specifying the level of the confidence interval +underlying BMDL. Default is 0.95. Note that the full CI is also computed. +The full CI has level 1-2*(1-level)
integer or NULL: Random seed to use in the data split in
+the estimation of the Stacking Weights when modelWeights = "Stack".
+The global seed is reset to the initial value after estimation of the
+weights, so this option does not interfere with a globally set seed.
integer or "LOO": When modelWeights = "Stack",
+the Stacking Weights are estimated, which are based on V-fold
+cross-validation. The stackingSplits argument sets the number V of data
+splits used in the cross validation. The "LOO" (Leave one out) is a shortcut
+to setting V equal to the number of observations in the data set.
logical. If TRUE the results are displayed; otherwise they +are not
logical. If TRUE, a progressbar is shown when computing +bootstrap confidence intervals.
A list of five elements: Results contain the estimated BMD and BMDL, +Boot.samples.used gives the number of boot samples that resulted in +succesful estimations and were accordingly used in the estimation of BMDL +(and BMDU), Interval gives BMDL and BMDU, which is identical to the +confidence interval for the percentile interval approach, SE gives the +estimated SE for the "Buckland" method, and modelWeights includes the +estimated weights.
+This package project is still under development. The aim to provide an R +package calculating the benchmark dose (BMD) and the lower limit of the +corresponding 95% confidence interval (BMDL) for continuous and quantal +dose-response data for a range of dose-response model based on the available +definitions of the benchmark dose concepts.
+Details on the implemented definitions and methods can be found in Crump +(2002)
+Bootstrapping with the argument boot = "nonparametric" is done by sampling +with replacement from the original data set. Bootstrapping with the argument +boot = "parametric" is done by sampling from norm(mean(Y_i),sd(Y_0)), +assuming equal variance between groups, in case of continuous data. For +binomial data, each bootstrap data set is sampled from binom(N_i,Y_i/N_i). +In case of Y_i = 0 or Y_i = N_i shrinkage is used to avoid that the +resampling always produces 0 or 1, respectively. In this case data is +sampled from binom(N_i,(Y_i+1/3)/(N_i+1/3)).
+All sampling is made within dose groups.
+Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +Benchmark Dose Calculation from Epidemiological Data, Biometrics +57, 698–706.
+Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +Data, Critical Reviews in Toxicology 32, 133–153.
+Baalkilde, J. R., Hansen, N. R., and Jensen, S. M. (2025) Stacking Weights +and Model Space Selection in Frequentist Model Averaging for Benchmark Dose +Estimation, Environmetrics 36(2), e70002.
+
+library(drc)
+library(drcData)
+
+## Fitting 4 different two-parameter models to binomial data
+deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial")
+deguelin.m2 <- drm(r/n~dose, weights=n, data=deguelin, fct=W1.2(), type="binomial")
+deguelin.m3 <- drm(r/n~dose, weights=n, data=deguelin, fct=W2.2(), type="binomial")
+deguelin.m4 <- drm(r/n~dose, weights=n, data=deguelin, fct=LN.2(), type="binomial")
+
+
+## Model averaged BMD for 5% additional risk with estimated background risk
+## and BMDL based on Buckland et al.
+bmdMA(list(deguelin.m1,deguelin.m2,deguelin.m3,deguelin.m4), modelWeights="AIC", 0.05,
+ backgType = "modelBased", def = "additional",
+ type = "Buckland")
+#> BMD_MA BMDL_MA
+#> 1.357897 0.5643594
+
+## Model averaged BMD for 5% additional risk with estimated background risk
+## and BMDL based on an average of the model curves
+bmdMA(list(deguelin.m1,deguelin.m2,deguelin.m3,deguelin.m4), modelWeights="AIC", 0.05,
+ backgType = "modelBased", def = "additional",
+ type = "curve", bootstrapType = "parametric", bootInterval = "percentile", R=50)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> 1.338646 0.5943252
+
+
+## Fitting 4 different two-parameter models to binomial data
+ryegrass.m1<-drm(rootl~conc, data=ryegrass, fct=LL.4())
+ryegrass.m2<-drm(rootl~conc, data=ryegrass, fct=W1.4())
+ryegrass.m3<-drm(rootl~conc, data=ryegrass, fct=W2.4())
+ryegrass.m4<-drm(rootl~conc, data=ryegrass, fct=LN.4())
+
+## Model-averaged BMD and bootstrap BMDL for bmr=5% and using the hybrid approach
+## to estimate the background risk.
+bmdMA(list(ryegrass.m1,ryegrass.m2,ryegrass.m3,ryegrass.m4), modelWeights="AIC", bmr=0.05,
+ backgType = "hybridSD", def = "hybridAdd", type = "bootstrap",
+ bootstrapType = "nonparametric", bootInterval = "percentile", R = 50)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> 1.179957 0.9312072
+
+
+## Model-averaged BMD using the Stacking Weights
+bmdMA(list(ryegrass.m1,ryegrass.m2,ryegrass.m3,ryegrass.m4), modelWeights="Stack", bmr=0.05,
+ backgType = "hybridSD", def = "hybridAdd", type = "bootstrap",
+ bootstrapType = "nonparametric", bootInterval = "percentile", R = 50)
+#> Loading required namespace: CVXR
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> 1.313847 0.7801128
+
+
+bmdMACurve.RdHelp funtion to bmdMA
+bmdMACurve(modelList, modelWeights, bmrScaled0, searchInterval = "dataBased")bmdOrdinal.RdEstimation of benchmark doses and benchmark dose lower limit from ordinal +dose response model fits
+bmdOrdinal(
+ object,
+ bmr,
+ backgType = c("modelBased", "absolute"),
+ backg = NA,
+ def = c("excess", "additional", "point"),
+ interval = c("delta", "sandwich", "profile", "bootstrap"),
+ level = 0.95,
+ R = 500,
+ bootType = c("nonparametric", "parametric", "model", "hierarchical"),
+ display = TRUE,
+ progressInfo = TRUE
+)object of class drcOrdinal
numeric value of benchmark response level for which to calculate +the benchmark dose
character string specifying how the background level is +specified. The options are "modelBased" and "absolute".
+"modelBased" - the background level is obtained from the model as the level +for dose 0: p0 = f(0)
+"absolute" - the background level is specified by the user through the backg +argument.
numeric value specifying the background level. Defaults to 0 +for "absolute" background risk.
character string specifying the definition of the benchmark dose +to use in the calculations. "excess", "additional" and "point" are available +for ordinal response.
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for binomial, count and +continuous response data.
character string specifying the type of confidence interval +to use: "delta" (default), "sandwich", "profile" or "bootstrap"
+"delta" - BMDL is based on the lower limit of a Wald confidence interval +based on the delta method
+"sandwich" - BMDL is based on the lower limit of a Wald confidence interval +based on the delta method, where the sandwich covariance matrix is used
+"bootstrap" - BMDL is based on bmd estimates on resampled data sets. The +type of bootstrap applied can be specified by the "bootType" argument. +Default is "nonparametric".
+"none" - No confidence interval is computed.
numeric value specifying the levle of the confidence interval +underlying BMDL. Default is 0.95
integer specifying the number of data sets resampled from the +original data set when computing the confidence interval by bootstrap.
character string specifying the resampling procedure for the +data sets used for bootstrap.
+"nonparametric" - Bootstrapping is done by sampling with replacement from +the original data set.
+"parametric" - Bootstrapping is done by sampling from a multinomial +distribution with probabilites given by the number of observations for each +level. If all observations for one group are in the same level, shrinkage is +used to avoid that the resampling always produces that particular level. In +this case data is sampled from a multinomial distribution with probabilities +(1/|K|^2)/(N_i + 1/|K|) for the levels with 0 observations, and (N_i + +1/|K|^2)/(N_i + 1/|K|), where N_i is the number of observatiions for the +particular group, and |K| is the number of levels.
+"model" - New data sets are resampled from the fitted model.
+"hierarchical" - If the experiment design is hierarchical (i.e. observations +are grouped according to a categorical variable, for instance litter), a +special resampling procedure is suggested (Blessinger 2020)
+All resampling is done within the dose values.
logical. If TRUE the results are displayed; otherwise they +are not
logical. If TRUE, a progressbar is displayed when +calculating bootstrap confidence intervals
A list of four elements: Results contain the estimated BMD and BMDL, +interval gives the lower (BMDL) and upper (BMDU) end of the confidence +interval of BMD.
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous, quantal, quantal and ordinal dose-response data for a range of +dose-response models based on the available definitions of the benchmark +dose concepts.
+Details on the implemented definitions and methods can be found in Crump +(2002)
+Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +Benchmark Dose Calculation from Epidemiological Data, Biometrics +57, 698–706.
+Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +Data, Critical Reviews in Toxicology 32, 133–153.
+Blessinger, T. D., Euling, S. Y., Wang, L., Hogan, K. A., Cai, C., +Klinefelter, G., Saillenfait, A.M. (2020) Environment International +134
+
+library(drc)
+library(drcData)
+data(guthion)
+
+guthionS <- subset(guthion, trt == "S")
+
+guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+ weights = "total", dose = "dose", data = guthionS, fct = LL.2())
+bmdOrdinal(guthionS.LL, bmr = 0.1, backgType = "modelBased", def = "excess", R = 50)
+#> BMD BMDL
+#> moribund+dead 20.50104 17.11484
+#> dead 20.59249 16.69573
+
+bmdOrdinalMA.RdEstimation of benchmark doses and benchmark dose lower limit based on model +averaging from a user-defined list of ordinal dose-response model fits
+bmdOrdinalMA(
+ modelList,
+ modelWeights = c("AIC", "BIC"),
+ bmr,
+ backgType = c("modelBased", "absolute"),
+ backg = NA,
+ def = c("excess", "additional", "point"),
+ type = c("bootstrap", "Kang"),
+ level = 0.95,
+ R = 500,
+ bootType = c("nonparametric", "parametric"),
+ display = TRUE,
+ progressInfo = TRUE
+)A list of ordinal dose-response models of class
+drcOrdinal
character string specifying the type of weights used, +"AIC" or "BIC", or a numeric vector of the same length as the modelList with +user defined weights
numeric value of benchmark response level for which to calculate +the benchmark dose
character string specifying how the background level is +specified. The options are "modelBased" and "absolute".
+"modelBased" - the background level is obtained from the model as the level +for dose 0: p0 = f(0)
+"absolute" - the background level is specified by the user through the backg +argument.
numeric value specifying the background level. Defaults to 0 +for "absolute" background risk.
character string specifying the definition of the benchmark dose +to use in the calculations. "excess", "additional" and "point" are available +for ordinal response.
+"excess" - BMR is defined as: BMR = (f(BMD) - p0)/(1 - p0). Works for +binomial response. BMR should be between 0 and 1.
+"additional" - BMR is defined as: BMR = f(BMD) - p0. Works for binomial +response. BMR should be between 0 and 1.
+"point" - The response level for which to find BMD is directly defined +through the BMR level: BMR = f(BMD). Works for binomial, count and +continuous response data.
specify the model averaging type used for the confidence +intervals. Options are "Kang" (confidence intervals computed as weighted +averages of individual confidence intervals) and "bootstrap"
numeric value specifying the levle of the confidence interval +underlying BMDL. Default is 0.95
integer specifying the number of data sets resampled from the +original data set when computing the confidence interval by bootstrap.
character string specifying the resampling procedure for the +data sets used for bootstrap.
+"nonparametric" - Bootstrapping is done by sampling with replacement from +the original data set.
+"parametric" - Bootstrapping is done by sampling from a multinomial +distribution with probabilites given by the number of observations for each +level. If all observations for one group are in the same level, shrinkage is +used to avoid that the resampling always produces that particular level. In +this case data is sampled from a multinomial distribution with probabilities +(1/|K|^2)/(N_i + 1/|K|) for the levels with 0 observations, and (N_i + +1/|K|^2)/(N_i + 1/|K|), where N_i is the number of observatiions for the +particular group, and |K| is the number of levels.
+All resampling is done within the dose values.
logical. If TRUE the results are displayed; otherwise they +are not
logical. If TRUE, a progressbar is displayed when +calculating bootstrap confidence intervals
A list of four elements: Results contain the estimated BMD and BMDL, +interval gives the lower (BMDL) and upper (BMDU) end of the confidence +interval of BMD.
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous, quantal, quantal and ordinal dose-response data for a range of +dose-response models based on the available definitions of the benchmark +dose concepts.
+Details on the implemented definitions and methods can be found in Crump +(2002)
+Budtz-Jorgensen, E., Keiding, N., and Grandjean, P. (2001) +Benchmark Dose Calculation from Epidemiological Data, Biometrics +57, 698–706.
+Crump, K. (2002) Critical Issues in Benchmark Calculations from Continuous +Data, Critical Reviews in Toxicology 32, 133–153.
+
+library(drc)
+library(drcData)
+data(guthion)
+
+guthionS <- subset(guthion, trt == "S")
+
+guthionS.LL <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+ weights = "total", dose = "dose", data = guthionS, fct = LL.2())
+guthionS.LN <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+ weights = "total", dose = "dose", data = guthionS, fct = LN.2())
+guthionS.W1 <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+ weights = "total", dose = "dose", data = guthionS, fct = W1.2())
+guthionS.W2 <- drmOrdinal(levels = c("alive", "moribund", "dead"),
+ weights = "total", dose = "dose", data = guthionS, fct = W2.2())
+
+bmdOrdinalMA(list(guthionS.LL, guthionS.LN, guthionS.W1, guthionS.W2),
+ modelWeights = "AIC", bmr = 0.1,
+ backgType = "modelBased", def = "excess", type = "Kang")
+#> BMD_MA BMDL_MA
+#> moribund+dead 20.20305 17.45350
+#> dead 20.49732 17.26269
+bmdOrdinalMA(list(guthionS.LL, guthionS.LN, guthionS.W1, guthionS.W2),
+ modelWeights = "AIC", bmr = 0.1,
+ backgType = "modelBased", def = "excess", type = "bootstrap", R = 50)
+#> Loading required namespace: reshape2
+#> Loading required namespace: tidyr
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD_MA BMDL_MA
+#> moribund+dead 20.20305 16.60024
+#> dead 20.49732 16.32929
+bootDataGen.RdHelp funtion to bmdBoot
+bootDataGen(object, R = 1000, bootType = "nonparametric", aggregated = TRUE)bootDataGenOrdinal.RdHelp funtion to bmdOrdinal and bmdOrdinalMA
+bootDataGenOrdinal(
+ object,
+ R = 500,
+ bootType = c("nonparametric", "parametric", "model", "hierarchical")
+)coef.drcHetVar.RdS3 method
+# S3 method for class 'drcHetVar'
+coef(object, ...)drmHetVar.RdFit a dose-response model with heterogeneous variance dependending on dose +level.
+drmHetVar(formula, var.formula, data, fct, curveStart = NULL)formula for the dose-response relationship
one-sided formula specifying the dependance of the dose +values and/or the fitted values on the point-wise standard error
data.frame containing the observations
a list with three or more elements specifying the non-linear +function, the accompanying self starter function, the names of the parameter +in the non-linear function and, optionally, the first and second derivatives +as well as information used for calculation of ED values. Currently +available functions include, among others, the four- and five-parameter +log-logistic models LL.4, LL.5 and the Weibull model W1.4. Use +drc::getMeanFunctions for a full list.
numerical of length equal to the number of parameters for +the curve. Starting values for the curve parameters (optional).
dose-response model with a heterogeneous variance structure of class
+drcHetVar.
The primary objective is to use this model for benchmark dose estimation
+based on the hybrid method with a heterogeneous variance structure. This can
+be done using the bmdHetVar function.
A plot method is available, which can be useful for assessing the fit of the +variance structure.
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+REFERENCES TO BE ADDED/WRITTEN
+
+library(drc)
+library(drcData)
+library(bmd)
+# install.packages("gridExtra") # OPTIONAL - USED FOR PLOTTING A drcHetVar OBJECT.
+
+# ryegrass data
+set.seed(123)
+ryegrass.LL.4.hetVar <- drmHetVar(rootl ~ conc, ~ fitted + I(fitted^2),
+ data = ryegrass, fct = LL.4())
+plot(ryegrass.LL.4.hetVar)
+
+bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1,
+ def = "hybridExc", R = 50, level = 0.95, progressInfo = TRUE, display = TRUE)
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 0.823838 0.5889243
+bmdHetVar(ryegrass.LL.4.hetVar, bmr = 0.1, backgType = "hybridPercentile", backg = 0.1,
+ def = "hybridExc", R = 50, level = 0.95,
+ bootType = "parametric", progressInfo = TRUE, display = TRUE) # parametric bootstrap
+#> Performing bootstrap
+#>
|
| | 0%
|
|= | 2%
|
|=== | 4%
|
|==== | 6%
|
|====== | 8%
|
|======= | 10%
|
|======== | 12%
|
|========== | 14%
|
|=========== | 16%
|
|============= | 18%
|
|============== | 20%
|
|=============== | 22%
|
|================= | 24%
|
|================== | 26%
|
|==================== | 28%
|
|===================== | 30%
|
|====================== | 32%
|
|======================== | 34%
|
|========================= | 36%
|
|=========================== | 38%
|
|============================ | 40%
|
|============================= | 42%
|
|=============================== | 44%
|
|================================ | 46%
|
|================================== | 48%
|
|=================================== | 50%
|
|==================================== | 52%
|
|====================================== | 54%
|
|======================================= | 56%
|
|========================================= | 58%
|
|========================================== | 60%
|
|=========================================== | 62%
|
|============================================= | 64%
|
|============================================== | 66%
|
|================================================ | 68%
|
|================================================= | 70%
|
|================================================== | 72%
|
|==================================================== | 74%
|
|===================================================== | 76%
|
|======================================================= | 78%
|
|======================================================== | 80%
|
|========================================================= | 82%
|
|=========================================================== | 84%
|
|============================================================ | 86%
|
|============================================================== | 88%
|
|=============================================================== | 90%
|
|================================================================ | 92%
|
|================================================================== | 94%
|
|=================================================================== | 96%
|
|===================================================================== | 98%
|
|======================================================================| 100%
+#> BMD BMDL
+#> [1,] 0.823838 0.4823374
+
+# barley data
+set.seed(123)
+barley.LL.4.hetVar <- drmHetVar(weight ~ Dose, ~ fitted + I(fitted^2), data = barley, fct = LL.4())
+plot(barley.LL.4.hetVar)
+
+
+# GiantKelp data
+set.seed(123)
+GiantKelp.LL.4.hetVarSq <- drmHetVar(tubeLength ~ dose, ~ fitted + I(fitted^2),
+ data = GiantKelp, fct = LL.4())
+plot(GiantKelp.LL.4.hetVarSq)
+
+
+GiantKelp.LL.4.hetVarLogSq <- drmHetVar(tubeLength ~ dose, ~ log(dose+1) + I(log(dose+1)^2),
+ data = GiantKelp, fct = LL.4())
+plot(GiantKelp.LL.4.hetVarLogSq)
+
+
+
+
+drmMMRE.RdFits a meta-analytic hierarchical dose-response model.
+drmMMRE(formula, exp_id, data, fct, type = c("continuous", "binomial"))a symbolic description of the model to be fit of the form +'response ~ dose'
the name of the column in the data set that specifies the +hierarchical structure of the data
a data frame containing the variables in the model.
a list with three or more elements specifying the non-linear +function, the accompanying self starter function, the names of the parameter +in the non-linear function and, optionally, the first and second derivatives +as well as information used for calculation of ED values. Currently +available functions include, among others, the four- and five-parameter +log-logistic models LL.4, LL.5 and the Weibull model W1.4. Use +drc::getMeanFunctions for a full list.
a character string specifying the distribution of the data. The +default is "continuous", corresponding to assuming a normal distribution. +"binary" imply a binomial distribution.
meta-analytic dose-response model with a hierarchical variance
+structure of class drcMMRE.
The primary objective is to use this model for benchmark dose estimation +based on dose-response data with a heterogeneous variance structure.
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+Fitting the meta-analytic model relies on a multivariate meta-analytic model
+provided by the function rma.mv in the "metafor" package, which can
+be installed by running remotes::install_github("wviechtb/metafor")
Viechtbauer, W. (2010). Conducting meta-analyses in R with the metafor +package. Journal of Statistical Software, 36(3), 1-48. +doi:10.18637/jss.v036.i03
+
+library(drc)
+library(drcData)
+library(metafor)
+#> Warning: package 'metafor' was built under R version 4.4.2
+#> Loading required package: Matrix
+#> Loading required package: metadat
+#> Warning: package 'metadat' was built under R version 4.4.2
+#> Loading required package: numDeriv
+#>
+#> Loading the 'metafor' package (version 4.6-0). For an
+#> introduction to the package please type: help(metafor)
+library(bmd)
+
+set.seed(1)
+data0 <- data.frame(x = rep(drcData::ryegrass$conc, 2),
+ y = rep(drcData::ryegrass$rootl, 2) +
+ c(rnorm(n = nrow(drcData::ryegrass), mean = 2, sd = 0.5),
+ rnorm(n = nrow(drcData::ryegrass), mean = 2.7, sd = 0.7)),
+ EXP_ID = rep(as.character(1:2), each = nrow(drcData::ryegrass)))
+
+modMMRE <- drmMMRE(y~x, exp_id = EXP_ID, data = data0, fct = LL.4())
+bmd(modMMRE, bmr = 0.1, backgType = "modelBased", def = "relative")
+#> BMD BMDL
+#> 1.669136 1.316628
+
+drmOrdinal.RdA model fitting function for analysis of ordinal dose-response data.
+drmOrdinal(levels, dose, weights, blocks, data, fct, p.epsilon = 1e-16)a character vector of the levels of the response variable in +increasing order, as they appear in the supplied data set
a character string specifying the column with the dose values in +the supplied data set
a character string specifying the column containing the +number of observations pr. group
a character string specifying the column containing the blocks +of the experiment, if available (optional)
a dataframe containing the observations
a list with three or more elements specifying the non-linear
+function, the accompanying self starter function, the names of the parameter
+in the non-linear function and, optionally, the first and second derivatives
+as well, for the individual fitted curves. For more information see the help
+page for the "drm" function in the "drc" package. Currently available
+functions for ordinal dose-response models include, among others, the
+log-logistic models LL.4, the log-normal model
+LN.4 and the two Weibull models W1.4
+and W2.4. Use getMeanFunctions for a
+full list.
numeric value specifying the lower bound for the +probabilites for each level returned by the function pFun created when +fitting the model. Default value is 10^(-16)
An object of (S3) class 'drcOrdinal'.
+This functions fits a dose-response model for ordinal dose-response data by +fitting a series of binomial dose-response models.
+# ADD REFERENCES
+expandBinomial.RdUtility function for expanding binomial data
+expandBinomial(data, number, total, dose, curveid = character(0))a data.frame
the name of the column in the data set containing the number +of affected individuals per dose level
the name of the column in the data set containing the total +number of individuals per dose level
the name of the column in the data set containing the dose +values
the name of the column in the data set specifying the curveid +(if available)
data.frame
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+if (FALSE) { # \dontrun{
+} # }
+
+
+getStackingWeights.RdComputing stacking weights.
+getStackingWeights(modelList, nSplits = 2)numeric
+The aim to provide an R package calculating the benchmark dose (BMD) and the +lower limit of the corresponding 95% confidence interval (BMDL) for +continuous and quantal dose-response data for a range of dose-response +models based on the available definitions of the benchmark dose concepts.
+Details on the implemented definitions and methods can be found in Crump +(2002)
+
+library(bmd)
+library(drc)
+library(drcData)
+
+# fit models to aconiazide data
+aconiazide.LL.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LL.3())
+aconiazide.LN.3 <- drm(weightChange ~ dose,data = aconiazide,fct = LN.3())
+aconiazide.W1.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W1.3())
+aconiazide.W2.3 <- drm(weightChange ~ dose,data= aconiazide,fct = W2.3())
+
+getStackingWeights(modelList = list(aconiazide.LL.3, aconiazide.LN.3,
+ aconiazide.W1.3, aconiazide.W2.3))
+#> [1] 2.221066e-07 1.741480e-07 5.000002e-01 4.999994e-01
+getStackingWeights(modelList = list(aconiazide.LL.3, aconiazide.LN.3,
+ aconiazide.W1.3, aconiazide.W2.3),
+ nSplits = 7)
+#> [1] 3.155175e-08 6.086256e-10 7.142857e-01 2.857143e-01
+
+
+ All functions+ + |
+ |
|---|---|
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +Help funtion to bmdBoot |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +BMD: Benchmark Dose Modeling |
+
| + + | +Benchmark dose estimation |
+
| + + | +Benchmark dose estimation using bootstrap |
+
| + + | +Benchmark dose estimation with heterogeneous variance |
+
| + + | +Benchmark dose estimation with heterogeneous variance based on model averaging (MA) |
+
| + + | +Benchmark dose estimation from isotonic regression |
+
| + + | +Benchmark dose estimation from isotonic regression |
+
| + + | +Model-averaged benchmark dose estimation |
+
| + + | +Help funtion to bmdMA |
+
| + + | +Benchmark dose estimation for ordinal dose-response models |
+
| + + | +Benchmark dose estimation for ordinal dose-response models |
+
| + + | +Help funtion to bmdBoot |
+
| + + | +Help funtion to bmdOrdinal and bmdOrdinalMA |
+
| + + | +S3 method |
+
| + + | +Dose response modeling with heterogeneous variance |
+
| + + | +Dose response modeling with hierarchical variance structure |
+
| + + | +Fitting ordinal dose-response models |
+
| + + | +Utility function |
+
| + + | +Model-average dose-response curves |
+
| + + | +Help funtion to bmd |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +Model-average dose-response curves |
+
| + + | +Test for Monotonicity of Relationship Between Two Variables |
+
| + + | +Pool-adjacent-violators monotonizing |
+
| + + | +Plotting benchmark doses |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +S3 method |
+
| + + | +Plotting benchmark doses using ggplot2 |
+
| + + | +Plotting fitted dose-response curves using ggplot2 |
+
| + + | +Test for Trend in Relationship Between Two Variables |
+
| + + | +S3 method |
+
invBmd.RdHelp funtion to bmd
+invBmd(
+ object,
+ bmr,
+ level = 0.9,
+ slope,
+ backgType = "modelBased",
+ backg = NA,
+ catLev = NA,
+ extFactor = 10,
+ def,
+ useSD = useSD,
+ sandwich.vcov = FALSE
+)logLik.drcHetVar.RdS3 method
+# S3 method for class 'drcHetVar'
+logLik(object, ...)logLik.drcOrdinal.RdS3 method
+# S3 method for class 'drcOrdinal'
+logLik(object, ...)monotonicityTest.RdConducts a test for monotonicity between a numeric independent variable
+x and a numeric dependent variable y using specified
+statistical tests.
monotonicityTest(
+ x,
+ y,
+ data,
+ test = c("jonckheere", "bartholomew"),
+ level = 0.05,
+ ...
+)A numeric vector or the name of the independent variable (if
+data is provided).
A numeric vector or the name of the dependent variable (if
+data is provided).
An optional data frame containing the variables x and
+y. If provided, x and y should be column names in
+data.
A character string specifying the test to use. Must be one of
+"jonckheere" (default) or "bartholomew".
Significance level for the test. Defaults to 0.05.
Additional arguments passed to the underlying test functions.
A list with the following components:
+The p-value of +the test.
A logical value indicating whether
+monotonicity is accepted (TRUE) or rejected (FALSE) based on
+the specified significance level.
The function tests the monotonicity of the relationship between x and
+y based on the specified test:
"jonckheere":
+Uses the Jonckheere-Terpstra test to assess monotonic trends.
"bartholomew": Uses Bartholomew's test to assess monotonicity.
The direction of the monotonicity (increasing or decreasing) is determined
+by the sign of the coefficient from a simple linear model lm(y ~ x).
A. R. Jonckheere (1954). "A Distribution-Free k-Sample Test +Against Ordered Alternatives." D. J. Bartholomew (1961). "Ordered tests in +the analysis of variance." OECD (2006). Rapport No. 54, Annexes.
+.jonckheereTest, .bartholomewTest
+# Example with custom data
+x <- c(1, 2, 3, 4, 5)
+y <- c(2, 4, 6, 8, 10)
+result <- monotonicityTest(x, y, test = "jonckheere")
+print(result)
+#> $p.value
+#> [1] 0.007152939
+#>
+#> $acceptMonotonicity
+#> [1] TRUE
+#>
+
+data <- data.frame(x = c(1, 2, 3, 4, 5), y = c(10, 9, 8, 7, 6))
+result <- monotonicityTest("conc", "rootl", data = drcData::ryegrass, test = "bartholomew")
+#> Loading required namespace: isotone
+print(result)
+#> $p.value
+#> [1] 0
+#>
+#> $acceptMonotonicity
+#> [1] TRUE
+#>
+
+plot.bmd.Rdplot.bmd displays benchmark dose values with options to plot
+confidence intervals as well.
an object of class 'bmd'.
arguments to be passed on to plot.drc, if add =
+FALSE
option to plot only the lower limit of the confidence +interval for the benchmark dose ("BMDL", default), both limit of the +confidence interval ("twosided"), or no confidence interval ("none").
Creates a plot. No value returned.
+This function is a simple function to plot benchmark dose values along with +the fitted curve.
+
+library(drc)
+library(drcData)
+
+## Fitting model and calculating BMD.
+model <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+bmd0 <- bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative")
+#> BMD BMDL
+#> 1.499026 1.169727
+
+## Plotting
+plot(bmd0)
+
+
+# Plot both limits of confidence interval
+plot(bmd0, interval = "twosided")
+
+
+# Pass argument to plot.bmd to plot confidence band around curve
+plot(bmd0, type = "confidence")
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+
+
+plot.drcHetVar.RdS3 method
+# S3 method for class 'drcHetVar'
+plot(x, ...)plot.drcOrdinal.RdS3 method
+# S3 method for class 'drcOrdinal'
+plot(x, ...)qplotBmd.RdqplotBmd displays benchmark dose values with options to plot
+confidence intervals as well using ggplot2.
qplotBmd(
+ x,
+ ...,
+ interval = c("BMDL", "twosided", "none"),
+ col = FALSE,
+ add = FALSE
+)an object of class 'bmd'.
arguments to be passed on to qplotDrc, if add = FALSE
option to plot only the lower limit of the confidence +interval for the benchmark dose ("BMDL", default), both limit of the +confidence interval ("twosided"), or no confidence interval ("none").
logical. If TRUE then multiple curves specified by "curveid" in +the dose-response model are distinguised by colours rather than point shapes +and line types
logical. If TRUE then the functions returns a list of plot layers +to be added to an already existing ggplot.
A ggplot object. If the option add is used, a list of
+ggplot layers is returned.
This function is a simple function to plot benchmark dose values
+
+library(drc)
+library(drcData)
+
+## Fitting model and calculating BMD.
+model <- drm(rootl ~ conc, data = ryegrass, fct = LL.4())
+bmd0 <- bmd(model, bmr = 0.1, backgType = "modelBased", def = "relative")
+#> BMD BMDL
+#> 1.499026 1.169727
+
+# Plot
+qplotBmd(bmd0, interval = "twosided", add = FALSE)
+
+
+qplotDrc(model,type="confidence") +
+ qplotBmd(bmd0, interval = "twosided", add = TRUE)
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+qplotBmd(bmd0, interval = "twosided", add = FALSE)
+
+
+
+qplotDrc.RdqplotDrc displays fitted curves and observations in the same plot
+window, distinguishing between curves by different plot symbols and line
+types or colours using ggplot2.
qplotDrc(
+ x,
+ add = FALSE,
+ level = NULL,
+ type = c("average", "all", "bars", "none", "obs", "confidence"),
+ gridsize = 250,
+ xtrans = "pseudo_log",
+ xlab,
+ xlim,
+ ytrans = NULL,
+ ylab,
+ ylim,
+ col = FALSE,
+ normal = FALSE,
+ normRef = 1,
+ confidence.level = 0.95
+)an object of class 'drc'.
logical. If TRUE then the functions returns a list of plot layers +to be added to an already existing ggplot.
vector of curve levels to plot. To plot only the curves +specified by their names.
a character string specifying how to plot the data. There are +currently 5 options: "average" (averages and fitted curve(s); default), +"none" (only the fitted curve(s)), "obs" (only the data points), "all" (all +data points and fitted curve(s)), "bars" (averages and fitted curve(s) with +model-based standard errors (see Details)), and "confidence" (confidence +bands for fitted curve(s)).
numeric. Number of points in the grid used for plotting the +fitted curves.
Transformation to use on the x-axis. The default is
+"pesudo_log", which is a logarithmic transformation with a smooth transition
+to 0. Other options include (among others) "log" and "identity". Can be
+overridden by adding a scale using the scale_x_continuous function.
an optional label for the x axis.
a numeric vector of length two, containing the lower and upper +limit for the x axis.
Transformation to use on the y-axis. The default is no
+transformation. Other options include (among others) "pseudo_log" and "log"
+and. Can be overridden by adding a scale using the scale_y_continuous
+function.
an optional label for the y axis.
a numeric vector of length two, containing the lower and upper +limit for the y axis.
logical. If TRUE default ggplot colours are used, can be
+overridden by scale_color_manual. If FALSE (default) no colours are
+used.
logical. If TRUE the plot of the normalized data and fitted +curves are shown (for details see Weimer et al. (2012) for details).
numeric specifying the reference for the normalization +(default is 1).
confidence level for error bars and confidence +bands. Defaults to 0.95.
A ggplot object. If the option add is used, a list of
+ggplot layers is returned.
This function largely seeks to mimic the behaviour of the plot method
+for the drc package using the ggplot2 package for plotting.
The use of xlim allows changing the range of the x axis,
+extrapolating the fitted dose-response curves. Note that changing the range
+on the x axis may also entail a change of the range on the y axis.
See colors for the available colours.
Suitable labels are automatically provided.
+The model-based standard errors used for the error bars are calculated as +the fitted value plus/minus the estimated error times the 1-(alpha/2) +quantile in the t distribution with degrees of freedom equal to the residual +degrees of freedom for the model (or using a standard normal distribution in +case of binomial and poisson data), where alpha=1-confidence.level. The +standard errors are obtained using the predict method with the arguments +interval = "confidence" and level=confidence.level.
+Weimer, M., Jiang, X., Ponta, O., Stanzel, S., Freyberger, A., +Kopp-Schneider, A. (2012) The impact of data transformations on +concentration-response modeling. Toxicology Letters, 213, +292–298.
+
+library(drc)
+library(drcData)
+library(ggplot2)
+
+## Fitting models to be plotted below
+ryegrass.m1 <- drm(rootl~conc, data = ryegrass, fct = LL.4())
+ryegrass.m2 <- drm(rootl~conc, data = ryegrass, fct = LL.3()) # lower limit fixed at 0
+
+## Plotting observations and fitted curve for the first model
+p <- qplotDrc(ryegrass.m1)
+p
+
+
+## Add confidence region for the first model.
+p + qplotDrc(ryegrass.m1, type="confidence", add = TRUE)$confBandLayer
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+## Plot both models
+p + qplotDrc(ryegrass.m2, add = TRUE)$curveLayer
+
+
+## Fitting model to be plotted below
+spinach.m1 <- drm(SLOPE~DOSE, CURVE, data = spinach, fct = LL.4())
+
+## Plot with no colours
+qplotDrc(spinach.m1)
+
+
+## Plot with default colours
+qplotDrc(spinach.m1, col = TRUE)
+
+
+## Plot with specified colours
+qplotDrc(spinach.m1, col = TRUE) +
+ scale_color_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod",
+ "darkslategray4", "plum4"))
+
+
+## Plot of curves 1 and 2 only
+qplotDrc(spinach.m1, level = c(1,4))
+
+
+## Plot with confidence regions
+qplotDrc(spinach.m1, col = TRUE, type = "confidence")
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+
+
+## Plot points and add confidence regions. Confidence regions are coloured by the "fill" aesthetic.
+## Customising the x scale by adding a new scale.
+qplotDrc(spinach.m1, col = TRUE, type = "confidence") +
+ qplotDrc(spinach.m1, col = TRUE, type = "average", add = TRUE)$obsLayer +
+ scale_color_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod",
+ "darkslategray4", "plum4"))+
+ scale_fill_manual(values = c("darkolivegreen4", "lightcoral", "goldenrod",
+ "darkslategray4", "plum4")) +
+ scale_x_continuous(trans = scales:::pseudo_log_trans(sigma = 0.2, base = exp(1)))
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Warning: Recycling array of length 1 in array-vector arithmetic is deprecated.
+#> Use c() or as.vector() instead.
+#> Scale for x is already present.
+#> Adding another scale for x, which will replace the existing scale.
+
+
+
+trendTest.RdConducts a test for trends between a numeric independent variable x
+and a numeric dependent variable y using specified statistical tests.
trendTest(x, y, data, test = c("william", "shirley", "tukey"), level = 0.05)A numeric vector or the name of the independent variable (if
+data is provided).
A numeric vector or the name of the dependent variable (if
+data is provided).
An optional data frame containing the variables x and
+y. If provided, x and y should be column names in
+data.
A character string specifying the test to use. Must be one of
+"william", "shirley", or "tukey" (default).
Significance level for the test. Defaults to 0.05.
A list with the following components:
+A numeric +vector of p-values for the tests (if applicable).
A
+character vector indicating whether the trend is "accept" or
+"reject" based on the test results.
A logical
+value indicating whether a trend is accepted (TRUE) or rejected
+(FALSE) based on the specified significance level.
The function tests for a trend in the relationship between x and
+y based on the specified test:
"william":
+Applies Williams' test to assess trend significance.
"shirley": Uses Shirley's test for trend analysis with ordered
+alternatives.
"tukey": Implements the Tukey trend test using
+multiple marginal models.
The direction of the trend (increasing or decreasing) is determined by the
+slope of the linear model lm(y ~ x).
Williams, D. A. (1971). "A test for differences between +treatment means when several dose levels are compared with a zero dose +control." Biometrics, 27(1), 103-117. Shirley, E. (1977). "A non-parametric +equivalent of Williams' test for contrasting increasing dose levels of a +treatment." Biometrics, 33(2), 386-389. Schaarschmidt, F. et al. (2021). +"The Tukey trend test: Multiplicity adjustment using multiple marginal +models" Biometrics, 78(2), 789-797.
+.williamsTest, .shirleyTest, .tukeytrendfit
+# Example with custom data
+x <- c(1, 2, 3, 4, 5)
+y <- c(2, 4, 6, 8, 10)
+result <- trendTest(x, y, test = "tukey")
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+#> Warning: essentially perfect fit: summary may be unreliable
+print(result)
+#> $p.values
+#> xari: xari xord: xord xarilog: xarilog
+#> 0.000000e+00 0.000000e+00 2.084999e-13
+#>
+#> $decisions
+#> xari: xari xord: xord xarilog: xarilog
+#> "accept" "accept" "accept"
+#>
+#> $acceptTrend
+#> [1] TRUE
+#>
+
+# Example with a data frame
+data <- data.frame(x = c(1, 2, 3, 4, 5), y = c(10, 9, 8, 7, 6))
+result <- trendTest("x", "y", data = data, test = "shirley")
+print(result)
+#> $p.values
+#> NULL
+#>
+#> $decisions
+#> ctr
+#> mu1 "reject"
+#> mu2 "reject"
+#> mu3 "reject"
+#> mu4 "accept"
+#>
+#> $acceptTrend
+#> [1] TRUE
+#>
+
+vcov.drcMMRE.RdS3 method
+# S3 method for class 'drcMMRE'
+vcov(object, ...)