# Arcsine

Arcsine distribution constructor.

## Usage

``````var Arcsine = require( '@stdlib/math/base/dists/arcsine/ctor' );
``````

#### Arcsine( [a, b] )

Returns an arcsine distribution object.

``````var arcsine = new Arcsine();

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

By default, `a = 0.0` and `b = 1.0`. To create a distribution having a different `a` (minimum support) and `b` (maximum support), provide parameter values.

``````var arcsine = new Arcsine( 2.0, 4.0 );

var mu = arcsine.mean;
// returns 3.0
``````

## arcsine

An arcsine distribution object has the following properties and methods...

### Writable Properties

#### arcsine.a

Minimum support of the distribution. `a` must be a number smaller than `b`.

``````var arcsine = new Arcsine();

var a = arcsine.a;
// returns 0.0

arcsine.a = 0.5;

a = arcsine.a;
// returns 0.5
``````

#### arcsine.b

Maximum support of the distribution. `b` must be a number larger than `a`.

``````var arcsine = new Arcsine( 2.0, 4.0 );

var b = arcsine.b;
// returns 4.0

arcsine.b = 3.0;

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

### Computed Properties

#### Arcsine.prototype.entropy

Returns the differential entropy.

``````var arcsine = new Arcsine( 4.0, 12.0 );

var entropy = arcsine.entropy;
// returns ~1.838
``````

#### Arcsine.prototype.kurtosis

Returns the excess kurtosis.

``````var arcsine = new Arcsine( 4.0, 12.0 );

var kurtosis = arcsine.kurtosis;
// returns -1.5
``````

#### Arcsine.prototype.mean

Returns the expected value.

``````var arcsine = new Arcsine( 4.0, 12.0 );

var mu = arcsine.mean;
// returns 8.0
``````

#### Arcsine.prototype.median

Returns the median.

``````var arcsine = new Arcsine( 4.0, 12.0 );

var median = arcsine.median;
// returns 8.0
``````

#### Arcsine.prototype.mode

Returns the mode.

``````var arcsine = new Arcsine( 4.0, 12.0 );

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

#### Arcsine.prototype.skewness

Returns the skewness.

``````var arcsine = new Arcsine( 4.0, 12.0 );

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

#### Arcsine.prototype.stdev

Returns the standard deviation.

``````var arcsine = new Arcsine( 4.0, 12.0 );

var s = arcsine.stdev;
// returns ~2.828
``````

#### Arcsine.prototype.variance

Returns the variance.

``````var arcsine = new Arcsine( 4.0, 12.0 );

var s2 = arcsine.variance;
// returns 8.0
``````

### Methods

#### Arcsine.prototype.cdf( x )

Evaluates the cumulative distribution function (CDF).

``````var arcsine = new Arcsine( 2.0, 4.0 );

var y = arcsine.cdf( 2.5 );
// returns ~0.333
``````

#### Arcsine.prototype.logcdf( x )

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

``````var arcsine = new Arcsine( 2.0, 4.0 );

var y = arcsine.logcdf( 2.5 );
// returns ~-1.1
``````

#### Arcsine.prototype.logpdf( x )

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

``````var arcsine = new Arcsine( 2.0, 4.0 );

var y = arcsine.logpdf( 2.5 );
// returns ~-1.0
``````

#### Arcsine.prototype.pdf( x )

Evaluates the probability density function (PDF).

``````var arcsine = new Arcsine( 2.0, 4.0 );

var y = arcsine.pdf( 2.5 );
// returns ~0.368
``````

#### Arcsine.prototype.quantile( p )

Evaluates the quantile function at probability `p`.

``````var arcsine = new Arcsine( 2.0, 4.0 );

var y = arcsine.quantile( 0.5 );
// returns 3.0

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

## Examples

``````var Arcsine = require( '@stdlib/math/base/dists/arcsine/ctor' );

var arcsine = new Arcsine( 2.0, 4.0 );

var mu = arcsine.mean;
// returns 3.0

var median = arcsine.median;
// returns 3.0

var s2 = arcsine.variance;
// returns 0.5

var y = arcsine.cdf( 2.5 );
// returns ~0.333
``````