# Laplace

Laplace distribution constructor.

## Usage

``````var Laplace = require( '@stdlib/math/base/dists/laplace/ctor' );
``````

#### Laplace( [mu, b] )

Returns a Laplace distribution object.

``````var laplace = new Laplace();

var mu = laplace.mean;
// returns 0.0
``````

By default, `mu = 0.0` and `b = 1.0`. To create a distribution having a different `mu` (location parameter) and `b` (scale parameter), provide parameter values.

``````var laplace = new Laplace( 2.0, 4.0 );

var mu = laplace.mean;
// returns 2.0
``````

## laplace

A Laplace distribution object has the following properties and methods...

### Writable Properties

#### laplace.mu

Location parameter of the distribution.

``````var laplace = new Laplace();

var mu = laplace.mu;
// returns 0.0

laplace.mu = 3.0;

mu = laplace.mu;
// returns 3.0
``````

#### laplace.b

Scale parameter of the distribution. `b` must be a positive number.

``````var laplace = new Laplace( 2.0, 4.0 );

var b = laplace.b;
// returns 4.0

laplace.b = 3.0;

b = laplace.b;
// returns 3.0
``````

### Computed Properties

#### Laplace.prototype.entropy

Returns the differential entropy.

``````var laplace = new Laplace( 4.0, 12.0 );

var entropy = laplace.entropy;
// returns ~4.178
``````

#### Laplace.prototype.kurtosis

Returns the excess kurtosis.

``````var laplace = new Laplace( 4.0, 12.0 );

var kurtosis = laplace.kurtosis;
// returns 3.0
``````

#### Laplace.prototype.mean

Returns the expected value.

``````var laplace = new Laplace( 4.0, 12.0 );

var mu = laplace.mean;
// returns 4.0
``````

#### Laplace.prototype.median

Returns the median.

``````var laplace = new Laplace( 4.0, 12.0 );

var median = laplace.median;
// returns 4.0
``````

#### Laplace.prototype.mode

Returns the mode.

``````var laplace = new Laplace( 4.0, 12.0 );

var mode = laplace.mode;
// returns 4.0
``````

#### Laplace.prototype.skewness

Returns the skewness.

``````var laplace = new Laplace( 4.0, 12.0 );

var skewness = laplace.skewness;
// returns 0.0
``````

#### Laplace.prototype.stdev

Returns the standard deviation.

``````var laplace = new Laplace( 4.0, 12.0 );

var s = laplace.stdev;
// returns ~16.971
``````

#### Laplace.prototype.variance

Returns the variance.

``````var laplace = new Laplace( 4.0, 12.0 );

var s2 = laplace.variance;
// returns 288.0
``````

### Methods

#### Laplace.prototype.cdf( x )

Evaluates the cumulative distribution function (CDF).

``````var laplace = new Laplace( 2.0, 4.0 );

var y = laplace.cdf( 0.5 );
// returns ~0.344
``````

#### Laplace.prototype.logcdf( x )

Evaluates the natural logarithm of the cumulative distribution function (CDF).

``````var laplace = new Laplace( 2.0, 4.0 );

var y = laplace.logcdf( 2.0 );
// returns ~-0.693
``````

#### Laplace.prototype.logpdf( x )

Evaluates the natural logarithm of the probability density function (PDF).

``````var laplace = new Laplace( 2.0, 4.0 );

var y = laplace.logpdf( 0.8 );
// returns ~-2.379
``````

#### Laplace.prototype.mgf( t )

Evaluates the moment-generating function (MGF).

``````var laplace = new Laplace( 2.0, 4.0 );

var y = laplace.mgf( 0.2 );
// returns ~4.144
``````

#### Laplace.prototype.pdf( x )

Evaluates the probability density function (PDF).

``````var laplace = new Laplace( 2.0, 4.0 );

var y = laplace.pdf( 2.0 );
// returns 0.125
``````

#### Laplace.prototype.quantile( p )

Evaluates the quantile function at probability `p`.

``````var laplace = new Laplace( 2.0, 4.0 );

var y = laplace.quantile( 0.5 );
// returns 2.0

y = quantile( 1.9 );
// returns NaN
``````

## Examples

``````var Laplace = require( '@stdlib/math/base/dists/laplace/ctor' );

var laplace = new Laplace( 2.0, 4.0 );

var mean = laplace.mean;
// returns 2.0

var median = laplace.median;
// returns 2.0

var s2 = laplace.variance;
// returns 32.0

var y = laplace.cdf( 0.8 );
// returns ~0.37
``````