% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/lassoinf.R
\name{TruncBivariateNormal}
\alias{TruncBivariateNormal}
\title{TruncBivariateNormal Class}
\description{
Evaluates exact bounds and inference parameters for the selectively truncated bivariate normal distribution.
}
\section{Public fields}{
\if{html}{\out{<div class="r6-fields">}}
\describe{
\item{\code{a_coeff}}{Internal coefficient.}

\item{\code{b_coeff}}{Internal coefficient.}

\item{\code{L}}{Lower bound of the truncation interval.}

\item{\code{U}}{Upper bound of the truncation interval.}

\item{\code{sig_omega}}{Standard deviation of the noise component.}

\item{\code{sig_x}}{Standard deviation of the target statistic.}
}
\if{html}{\out{</div>}}
}
\section{Methods}{
\subsection{Public methods}{
\itemize{
\item \href{#method-TruncBivariateNormal-new}{\code{TruncBivariateNormal$new()}}
\item \href{#method-TruncBivariateNormal-.get_stats}{\code{TruncBivariateNormal$.get_stats()}}
\item \href{#method-TruncBivariateNormal-ccdf}{\code{TruncBivariateNormal$ccdf()}}
\item \href{#method-TruncBivariateNormal-cdf}{\code{TruncBivariateNormal$cdf()}}
\item \href{#method-TruncBivariateNormal-E}{\code{TruncBivariateNormal$E()}}
\item \href{#method-TruncBivariateNormal-Var}{\code{TruncBivariateNormal$Var()}}
\item \href{#method-TruncBivariateNormal-equal_tailed_interval}{\code{TruncBivariateNormal$equal_tailed_interval()}}
\item \href{#method-TruncBivariateNormal-clone}{\code{TruncBivariateNormal$clone()}}
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-new"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-new}{}}}
\subsection{Method \code{new()}}{
Initialize the TruncBivariateNormal object.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$new(
  a_coeff,
  b_coeff,
  L,
  U,
  sig_omega,
  sig_x = 1,
  theta = 0
)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{a_coeff}}{The 'a' coefficient for the conditional statistic.}

\item{\code{b_coeff}}{The 'b' coefficient for the noise statistic.}

\item{\code{L}}{Lower bound of the condition.}

\item{\code{U}}{Upper bound of the condition.}

\item{\code{sig_omega}}{Noise standard deviation.}

\item{\code{sig_x}}{Target statistic standard deviation. Default is 1.0.}

\item{\code{theta}}{True underlying parameter. Default is 0.0.}
}
\if{html}{\out{</div>}}
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-.get_stats"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-.get_stats}{}}}
\subsection{Method \code{.get_stats()}}{
Get the computed statistics given the parameter.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$.get_stats(theta, x = NULL)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{theta}}{True parameter value.}

\item{\code{x}}{Observed value. Default is NULL.}
}
\if{html}{\out{</div>}}
}
\subsection{Returns}{
A list containing the computed stats.
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-ccdf"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-ccdf}{}}}
\subsection{Method \code{ccdf()}}{
Complementary CDF.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$ccdf(theta, x = NULL, gamma = 0)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{theta}}{Parameter.}

\item{\code{x}}{Observed value.}

\item{\code{gamma}}{Ignored.}
}
\if{html}{\out{</div>}}
}
\subsection{Returns}{
The complementary CDF value.
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-cdf"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-cdf}{}}}
\subsection{Method \code{cdf()}}{
Cumulative Distribution Function.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$cdf(theta, x = NULL, gamma = 1)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{theta}}{Parameter.}

\item{\code{x}}{Observed value.}

\item{\code{gamma}}{Ignored.}
}
\if{html}{\out{</div>}}
}
\subsection{Returns}{
The CDF value.
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-E"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-E}{}}}
\subsection{Method \code{E()}}{
Expected value.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$E(theta, func)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{theta}}{Parameter.}

\item{\code{func}}{A function returning identity or x^2.}
}
\if{html}{\out{</div>}}
}
\subsection{Returns}{
Expected value.
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-Var"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-Var}{}}}
\subsection{Method \code{Var()}}{
Variance.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$Var(theta, func)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{theta}}{Parameter.}

\item{\code{func}}{Identity function.}
}
\if{html}{\out{</div>}}
}
\subsection{Returns}{
The conditional variance.
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-equal_tailed_interval"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-equal_tailed_interval}{}}}
\subsection{Method \code{equal_tailed_interval()}}{
Find the equal tailed confidence interval by inverting the CDF.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$equal_tailed_interval(observed, alpha = 0.05, tol = 1e-06)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{observed}}{The observed value.}

\item{\code{alpha}}{Type-I error rate. Default is 0.05.}

\item{\code{tol}}{Tolerance for uniroot.}
}
\if{html}{\out{</div>}}
}
\subsection{Returns}{
A length 2 vector containing the lower and upper bounds.
}
}
\if{html}{\out{<hr>}}
\if{html}{\out{<a id="method-TruncBivariateNormal-clone"></a>}}
\if{latex}{\out{\hypertarget{method-TruncBivariateNormal-clone}{}}}
\subsection{Method \code{clone()}}{
The objects of this class are cloneable with this method.
\subsection{Usage}{
\if{html}{\out{<div class="r">}}\preformatted{TruncBivariateNormal$clone(deep = FALSE)}\if{html}{\out{</div>}}
}

\subsection{Arguments}{
\if{html}{\out{<div class="arguments">}}
\describe{
\item{\code{deep}}{Whether to make a deep clone.}
}
\if{html}{\out{</div>}}
}
}
}
