# ChiSquare

Chi-squared distribution constructor.

## Usage

``````var ChiSquare = require( '@stdlib/math/base/dists/chisquare/ctor' );
``````

#### ChiSquare( [k] )

Returns an chi-squared distribution object.

``````var chisquare = new ChiSquare();

var mu = chisquare.mean;
// returns 1.0
``````

By default, `k = 1.0`. To create a distribution having a different degrees of freedom `k`, provide a parameter value.

``````var chisquare = new ChiSquare( 4.0 );

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

## chisquare

A chi-squared distribution object has the following properties and methods...

### Writable Properties

#### chisquare.k

Rate parameter of the distribution. `k` must be a positive number.

``````var chisquare = new ChiSquare( 2.0 );

var k = chisquare.k;
// returns 2.0

chisquare.k = 3.0;

k = chisquare.k;
// returns 3.0
``````

### Computed Properties

#### ChiSquare.prototype.entropy

Returns the differential entropy.

``````var chisquare = new ChiSquare( 4.0 );

var entropy = chisquare.entropy;
// returns ~2.27
``````

#### ChiSquare.prototype.kurtosis

Returns the excess kurtosis.

``````var chisquare = new ChiSquare( 4.0 );

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

#### ChiSquare.prototype.mean

Returns the expected value.

``````var chisquare = new ChiSquare( 4.0 );

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

#### ChiSquare.prototype.mode

Returns the mode.

``````var chisquare = new ChiSquare( 4.0 );

var mode = chisquare.mode;
// returns 2.0
``````

#### ChiSquare.prototype.skewness

Returns the skewness.

``````var chisquare = new ChiSquare( 4.0 );

var skewness = chisquare.skewness;
// returns ~1.414
``````

#### ChiSquare.prototype.stdev

Returns the standard deviation.

``````var chisquare = new ChiSquare( 4.0 );

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

#### ChiSquare.prototype.variance

Returns the variance.

``````var chisquare = new ChiSquare( 4.0 );

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

### Methods

#### ChiSquare.prototype.cdf( x )

Evaluates the cumulative distribution function (CDF).

``````var chisquare = new ChiSquare( 2.0 );

var y = chisquare.cdf( 0.5 );
// returns ~0.221
``````

#### ChiSquare.prototype.mgf( t )

Evaluates the moment-generating function (MGF).

``````var chisquare = new ChiSquare( 2.0 );

var y = chisquare.mgf( 0.2 );
// returns ~1.667
``````

#### ChiSquare.prototype.pdf( x )

Evaluates the probability density function (PDF).

``````var chisquare = new ChiSquare( 2.0 );

var y = chisquare.pdf( 0.8 );
// returns ~0.335
``````

#### ChiSquare.prototype.quantile( p )

Evaluates the quantile function at probability `p`.

``````var chisquare = new ChiSquare( 2.0 );

var y = chisquare.quantile( 0.5 );
// returns ~1.386

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

## Examples

``````var ChiSquare = require( '@stdlib/math/base/dists/chisquare/ctor' );

var chisquare = new ChiSquare( 2.0 );

var mu = chisquare.mean;
// returns 2.0

var mode = chisquare.mode;
// returns 0.0

var s2 = chisquare.variance;
// returns 4.0

var y = chisquare.cdf( 0.8 );
// returns ~0.33
``````