| acopula-class | R Documentation |
This class "acopula" of Archimedean Copula Families
is mainly used for providing objects of known Archimedean families
with all related functions.
Objects can be created by calls of the form new("acopula", ...).
For several well-known Archimedean
copula families, the package copula already provides such
family objects.
name:A string (class "character") describing
the copula family, for example, "AMH" (or simply "A"), "Clayton" ("C"),
"Frank" ("F"), "Gumbel" ("G"), or "Joe" ("J").
theta:Parameter value, a numeric, where
NA means “unspecified”.
psi, iPsi:The (Archimedean) generator
\psi (with \psi(t)=\exp(-t) being the
generator of the independence copula) and its inverse
(function). iPsi has an optional argument
log which, if TRUE returns the logarithm of inverse of the
generator.
absdPsi:A function which computes the absolute
value of the derivative of the generator \psi for the given
parameter theta and of the given degree (defaults to 1).
Note that there is no informational loss by computing the absolute value
since the derivatives alternate in sign (the generator derivative
is simply (-1)^degree*absdPsi). The
number n.MC denotes the sample size for a Monte Carlo evaluation
approach. If n.MC is zero (the default), the
generator derivatives are evaluated with their exact formulas. The
optional parameter log (defaults to FALSE) indicates whether
or not the logarithmic value is returned.
absdiPsi:a function computing the
absolute value of the derivative of the generator inverse
(iPsi()) for the given parameter theta. The optional
parameter log (defaults to FALSE) indicates whether
the logarithm of the absolute value of the first derivative of
iPsi() is returned.
dDiag:a function computing the density of the
diagonal of the Archimedean copula at u with parameter
theta. The parameter log is as described before.
dacopula:a function computing the density
of the Archimedean copula at u with parameter theta. The
meanings of the parameters n.MC and log are as
described before.
score:a function computing the
derivative of the density with respect to the parameter
\theta.
uscore:a function computing the
derivative of the density with respect to the each of the arguments.
paraInterval:Either NULL or an object of class
"interval", which is typically obtained from a call
such as interval("[a,b)").
paraConstr:A function of theta returning
TRUE if and only if theta is a valid parameter value. Note
that paraConstr is built automatically from the interval,
whenever the paraInterval slot is valid.
"interval".
nestConstr:A function, which returns
TRUE if and only if the two provided parameters theta0 and
theta1 satisfy the sufficient nesting condition for this family.
V0:A function which samples n random
variates from the distribution F with Laplace-Stieltjes transform
\psi and parameter theta.
dV0:A function which computes either the
probability mass function or the probability density function (depending
on the Archimedean family) of the distribution function whose
Laplace-Stieltjes transform equals the generator \psi at the
argument x (possibly a vector) for the given parameter
theta. An optional argument log indicates whether
the logarithm of the mass or density is computed (defaults to
FALSE).
V01:A function which gets a vector of
realizations of V0, two parameters theta0 and theta1
which satisfy the sufficient nesting condition, and which
returns a vector of the same length as V0 with random variates from
the distribution function F_{01} with Laplace-Stieltjes
transform \psi_{01} (see dV01) and parameters
\theta_0=\,theta0,
\theta_1=\,theta1.
dV01:Similar to dV0 with the difference being that
this function computes the probability mass or density
function for the Laplace-Stieltjes transform
\psi_{01}(t;V_0) = \exp(-V_0\psi_0^{-1}(\psi_1(t))),
corresponding to the distribution function F_{01}.
Arguments are the evaluation point(s) x, the value(s) V0,
and the parameters theta0 and theta1. As for
dV0, the optional argument log can be specified
(defaults to FALSE). Note that if x is a vector,
V0 must either have length one (in which case V0 is
the same for every component of x) or V0 must be of
the same length as x (in which case the components of
V0 correspond to the ones of x).
tau, iTau:Compute Kendall's tau of the bivariate
Archimedean copula with generator \psi as a
function of theta, respectively, theta as a
function of Kendall's tau.
lambdaL, lambdaU, lambdaLInv,
lambdaUInv:Compute the lower (upper) tail-dependence coefficient
of the bivariate Archimedean copula with generator \psi as a
function of theta, respectively, theta as a
function of the lower (upper) tail-dependence coefficient.
For more details about Archimedean families, corresponding distributions and properties, see the references.
signature(.Object = "acopula"): is used to
automatically construct the function slot paraConstr, when
the paraInterval is provided (typically via
interval()).
signature("acopula"): compact overview of the copula.
See those of the families, for example, copGumbel.
Specific provided copula family objects, for example,
copAMH, copClayton, copFrank,
copGumbel, copJoe.
To access these, you may also use getAcop.
A nested Archimedean copula without
child copulas (see class "nacopula")
is a proper Archimedean copula, and hence,
onacopula() can be used to construct a specific
parametrized Archimedean copula; see the example below.
Alternatively, setTheta also returns such a
(parametrized) Archimedean copula.
## acopula class information
showClass("acopula")
## Information and structure of Clayton copulas
copClayton
str(copClayton)
## What are admissible parameters for Clayton copulas?
copClayton@paraInterval
## A Clayton "acopula" with Kendall's tau = 0.8 :
(cCl.2 <- setTheta(copClayton, iTau(copClayton, 0.8)))
## Can two Clayton copulas with parameters theta0 and theta1 be nested?
## Case 1: theta0 = 3, theta1 = 2
copClayton@nestConstr(theta0 = 3, theta1 = 2)
## -> FALSE as the sufficient nesting criterion is not fulfilled
## Case 2: theta0 = 2, theta1 = 3
copClayton@nestConstr(theta0 = 2, theta1 = 3) # TRUE
## For more examples, see help("acopula-families")
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.