# Exp-class

##### Class "Exp"

The exponential distribution with rate \(\lambda\) has density $$ f(x) = \lambda {e}^{- \lambda x}$$ for \(x \ge 0\).

C.f. `rexp`

- Keywords
- distribution

##### Objects from the Class

Objects can be created by calls of the form `Exp(rate)`

.
This object is an exponential distribution.

##### Slots

`img`

Object of class

`"Reals"`

: The space of the image of this distribution has got dimension 1 and the name "Real Space".`param`

Object of class

`"ExpParameter"`

: the parameter of this distribution (rate), declared at its instantiation`r`

Object of class

`"function"`

: generates random numbers (calls function rexp)`d`

Object of class

`"function"`

: density function (calls function dexp)`p`

Object of class

`"function"`

: cumulative function (calls function pexp)`q`

Object of class

`"function"`

: inverse of the cumulative function (calls function qexp)`.withArith`

logical: used internally to issue warnings as to interpretation of arithmetics

`.withSim`

logical: used internally to issue warnings as to accuracy

`.logExact`

logical: used internally to flag the case where there are explicit formulae for the log version of density, cdf, and quantile function

`.lowerExact`

logical: used internally to flag the case where there are explicit formulae for the lower tail version of cdf and quantile function

`Symmetry`

object of class

`"DistributionSymmetry"`

; used internally to avoid unnecessary calculations.

##### Extends

Class `"ExpOrGammaOrChisq"`

, directly.
Class `"AbscontDistribution"`

, by class `"ExpOrGammaOrChisq"`

.
Class `"UnivariateDistribution"`

, by class `"AbscontDistribution"`

.
Class `"Distribution"`

, by class `"AbscontDistribution"`

.

##### Is-Relations

By means of `setIs`

, R ``knows'' that a distribution object `obj`

of class `"Exp"`

also is
a Gamma distribution with parameters `shape = 1, scale = 1/rate(obj)`

and a Weibull distribution with
parameters `shape = 1, scale = 1/rate(obj)`

##### Methods

- initialize
`signature(.Object = "Exp")`

: initialize method- rate
`signature(object = "Exp")`

: returns the slot rate of the parameter of the distribution- rate<-
`signature(object = "Exp")`

: modifies the slot rate of the parameter of the distribution- *
`signature(e1 = "Exp", e2 = "numeric")`

: For the exponential distribution we use its closedness under positive scaling transformations.

##### See Also

`ExpParameter-class`

`AbscontDistribution-class`

`Reals-class`

`rexp`

##### Examples

```
# NOT RUN {
E <- Exp(rate = 1) # E is a exp distribution with rate = 1.
r(E)(1) # one random number generated from this distribution, e.g. 0.4190765
d(E)(1) # Density of this distribution is 0.3678794 for x = 1.
p(E)(1) # Probability that x < 1 is 0.6321206.
q(E)(.1) # Probability that x < 0.1053605 is 0.1.
## in RStudio or Jupyter IRKernel, use q.l(.)(.) instead of q(.)(.)
rate(E) # rate of this distribution is 1.
rate(E) <- 2 # rate of this distribution is now 2.
is(E, "Gammad") # yes
as(E,"Gammad")
is(E, "Weibull")
E+E+E ### a Gammad -distribution
2*E+Gammad(scale=1)
# }
```

*Documentation reproduced from package distr, version 2.7.0, License: LGPL-3*