Density, distribution function, quantile function and random generation for the MBBEFD distribution with parameters g and b.
dmb(x, g, b, c =NULL, log =FALSE)pmb(q, g, b, c =NULL, lower.tail =TRUE, log.p =FALSE)qmb(p, g, b, c =NULL, lower.tail =TRUE, log.p =FALSE)rmb(n, g, b, c =NULL)
Arguments
x, q: numeric ; vector of quantiles.
p: numeric ; vector of probabilities.
n: numeric ; number of observations. If length(n) > 1, the length is taken to be the number required.
g: numeric ; (vector of) the g parameter, which is also the reciprocal of the probability of a maximum loss.
b: numeric ; (vector of) the b parameter.
c: numeric ; (vector of) the optional c parameter. Should be NULL if g and b are passed. Otherwise, exp((0.78+0.12∗c)∗c) and b=exp(3.1−0.15∗(1+c)∗c)).
log, log.p: logical ; if TRUE, probabilities p are given as log(p).
lower.tail: logical ; if TRUE (default), probabilities are P[X≤x] otherwise P[X>x].
Details
The MBBEFD class of curves are defined in Bernegger (1997) and are often used to model insurance risk. The density is defined on the semi-open interval [0,1) and the distribution and quantile functions are defined on the closed interval [0,1].
Returns
dnorm gives the density, pnorm gives the distribution function, qnorm gives the quantile function, and rnorm generates random deviates.
The length of the result is determined by n for rnorm, and is the length of x, p, or q as appropriate for the other functions.
Numerical arguments other than n are recycled to the length of the result. Logical arguments should be of length 1.
References
Bernegger, S. (1997) The Swiss Re Exposure Curves and the MBBEFD
Distribution Class. ASTIN Bulletin 27 (1), 99--111. tools:::Rd_expr_doi("10.2143/AST.27.1.563208")
This package follows Bernegger's convention that the density function does not exists at 1. This differs from the mbbefd package.
See Also
mommb for parameter estimation.
Examples
all.equal(dmb(0.5,1,0),0)dmb(0.2,20,5)pmb(0.98,25,4)qmb(0.98,25,4)==1all.equal(qmb(pmb(0.98,25,4),25,4),0.98)set.seed(45)rmb(3,4,12)set.seed(45)rmb(99:101,4,12)# Should equal previous call