derCOP2(cop=W,0.4,0.6)
derCOP2(cop=P,0.4,0.6)
derCOP2(cop=M,0.4,0.6)
derCOP2(cop=PSP,0.4,0.6)
lft <- derCOP2(cop=P,0.4,0.6, derdir="left")
rgt <- derCOP2(cop=P,0.4,0.6, derdir="right")
cnt <- derCOP2(cop=P,0.4,0.6, derdir="center")
stopifnot(all.equal(lft,rgt), all.equal(lft,cnt))
# Let us contrive a singularity though this NOT A COPULA
# in the function "afunc"
"afunc" <- function(u,v, ...) {
if(u <= 0.5) return(sqrt(u^2+v^2))
return(P(u,v,...)) # The product copula
}
lft <- derCOP2(cop=afunc,0.5,runif(1),derdir="left")
# The following is correct for given v.
rgt <- derCOP2(cop=afunc,0.5,runif(1),derdir="right")
cnt <- derCOP2(cop=afunc,0.5,runif(1),derdir="center")
cat(c(lft,rgt,cnt,""))
Run the code above in your browser using DataLab