% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/gamma_series.R
\name{gamma_series}
\alias{gamma_series}
\alias{surv.gamma_series}
\alias{sampler.gamma_series}
\title{Series of independent Gamma components (closed form)}
\usage{
gamma_series(shapes, rates)

\method{surv}{gamma_series}(x, ...)

\method{sampler}{gamma_series}(x, ...)
}
\arguments{
\item{shapes}{Positive numeric vector of length \code{m}: per-component
Gamma shape parameters.}

\item{rates}{Positive numeric vector of length \code{m}: per-component
Gamma rate parameters.}

\item{x}{A \code{gamma_series} object.}

\item{...}{Ignored.}
}
\value{
\code{gamma_series()} returns an object of class
\code{c("gamma_series", "series_dist", "coherent_dist", "dist_structure", "univariate_dist", "continuous_dist", "dist")}.

The associated S3 methods return:
\itemize{
\item \code{surv()}: a closure \verb{function(t, ...)}.
\item \code{cdf()} is derived via the \code{dist_structure} default and returns
a closure \verb{function(t, ...)} equal to \code{1 - surv(x)(t)}.
\item \code{sampler()}: a closure \verb{function(n, ...)} returning \code{n} random
variates from the system lifetime distribution.
}
}
\description{
Constructs a \code{dist_structure} for a series system whose components are
independent Gammas. Closed-form \code{surv} is evaluated by the product of
per-component upper-tail probabilities; \code{cdf} is \code{1 - surv}; \code{sampler}
generates m independent Gammas and takes the min.
}
\examples{
sys <- gamma_series(shapes = c(2, 3), rates = c(1, 2))
algebraic.dist::surv(sys)(1)
}
