# Beta

Beta distribution constructor.

## Usage

``````var Beta = require( '@stdlib/math/base/dists/beta/ctor' );
``````

#### Beta( [alpha, beta] )

Returns a beta distribution object.

``````var beta = new Beta();

var mu = beta.mean;
// returns 0.5
``````

By default, `alpha = 1.0` and `beta = 1.0`. To create a distribution having a different `alpha` (first shape parameter) and `beta` (second shape parameter), provide parameter values.

``````var beta = new Beta( 2.0, 4.0 );

var mu = beta.mean;
// returns ~0.333
``````

## beta

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

### Writable Properties

#### beta.alpha

First shape parameter of the distribution. `alpha` must be a positive number.

``````var beta = new Beta();

var alpha = beta.alpha;
// returns 1.0

beta.alpha = 3.0;

alpha = beta.alpha;
// returns 3.0
``````

#### beta.beta

Second shape parameter of the distribution. `beta` must be a positive number.

``````var beta = new Beta( 2.0, 4.0 );

var b = beta.beta;
// returns 4.0

beta.beta = 3.0;

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

### Computed Properties

#### Beta.prototype.entropy

Returns the differential entropy.

``````var beta = new Beta( 4.0, 12.0 );

var entropy = beta.entropy;
// returns ~-0.869
``````

#### Beta.prototype.kurtosis

Returns the excess kurtosis.

``````var beta = new Beta( 4.0, 12.0 );

var kurtosis = beta.kurtosis;
// returns ~0.082
``````

#### Beta.prototype.mean

Returns the expected value.

``````var beta = new Beta( 4.0, 12.0 );

var mu = beta.mean;
// returns 0.25
``````

#### Beta.prototype.median

Returns the median.

``````var beta = new Beta( 4.0, 12.0 );

var median = beta.median;
// returns ~0.239
``````

#### Beta.prototype.mode

Returns the mode.

``````var beta = new Beta( 4.0, 12.0 );

var mode = beta.mode;
// returns 0.25
``````

#### Beta.prototype.skewness

Returns the skewness.

``````var beta = new Beta( 4.0, 12.0 );

var skewness = beta.skewness;
// returns ~0.011
``````

#### Beta.prototype.stdev

Returns the standard deviation.

``````var beta = new Beta( 4.0, 12.0 );

var s = beta.stdev;
// returns ~0.105
``````

#### Beta.prototype.variance

Returns the variance.

``````var beta = new Beta( 4.0, 12.0 );

var s2 = beta.variance;
// returns ~0.011
``````

### Methods

#### Beta.prototype.cdf( x )

Evaluates the cumulative distribution function (CDF).

``````var beta = new Beta( 2.0, 4.0 );

var y = beta.cdf( 0.5 );
// returns ~0.813
``````

#### Beta.prototype.logcdf( x )

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

``````var beta = new Beta( 2.0, 4.0 );

var y = beta.logcdf( 0.5 );
// returns ~-0.207
``````

#### Beta.prototype.logpdf( x )

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

``````var beta = new Beta( 2.0, 4.0 );

var y = beta.logpdf( 0.8 );
// returns ~-2.0557
``````

#### Beta.prototype.mgf( t )

Evaluates the moment-generating function (MGF).

``````var beta = new Beta( 2.0, 4.0 );

var y = beta.mgf( 0.5 );
// returns ~1.186
``````

#### Beta.prototype.pdf( x )

Evaluates the probability density function (PDF).

``````var beta = new Beta( 2.0, 4.0 );

var y = beta.pdf( 0.8 );
// returns ~0.013
``````

#### Beta.prototype.quantile( p )

Evaluates the quantile function at probability `p`.

``````var beta = new Beta( 2.0, 4.0 );

var y = beta.quantile( 0.5 );
// returns ~0.314

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

## Examples

``````var Beta = require( '@stdlib/math/base/dists/beta/ctor' );

var beta = new Beta( 2.0, 4.0 );

var mu = beta.mean;
// returns ~0.333

var median = beta.median;
// returns ~0.313

var s2 = beta.variance;
// returns ~0.032

var y = beta.cdf( 0.8 );
// returns ~0.993
``````