Compute the inverse of a copula for \(U\) with respect to \(V\) given \(t\) or
$$t = \mathbf{C}(u,v{=}V) \rightarrow \mathbf{C}^{(-1)}(v{=}V, t) = u\mbox{,}$$
and solving for \(u\). Nelsen (2006, p. 12) does not so name this function as an “inverse.” The COPinv2
function is internally used by level.curvesCOP2
. A common misapplication that will puzzle the user (including the developer after long breaks from package use) is that the following call and error message are often seen, if silent=FALSE
:
COPinv2(0.2, 0.25, cop=PSP)
# Error in uniroot(func, interval = c(lo, 1), u = u, LHS = t, cop = cop, :
# f() values at end points not of opposite sign
# [1] NA
This is a harmless error in the sense that COPinv2
is functioning properly. One can not invert a copula for \(v < t\) and for \(v = t\) the \(u = 1\) because of fundamental copula properties.
COPinv2(cop=NULL, v, t, para=NULL, silent=TRUE, ...)
Value(s) for \(u\) are returned.
A copula function;
Nonexceedance probability \(v\) in the \(Y\) direction;
Nonexceedance probability in \(t\);
Vector of parameters or other data structures, if needed, to pass to the copula;
The argument of the same name given over to try()
wrapping the uniroot()
operation; and
Additional arguments to pass to the copula.
W.H. Asquith
Nelsen, R.B., 2006, An introduction to copulas: New York, Springer, 269 p.
COP
, COPinv
, level.curvesCOP
, level.curvesCOP2
# See those for COPinv as they are the same by analogy.
Run the code above in your browser using DataLab