Logarithm of Probability Density Function

Degenerate distribution logarithm of probability density function (logPDF).

Strictly speaking, as a discrete distribution, a degenerate has no probability density function (PDF). Extending the notion of a PDF, we conceptualize the PDF of a degenerate distribution as an infinitely tall spike centered at mu. More formally,

f left-parenthesis x semicolon mu right-parenthesis equals delta left-parenthesis x minus mu right-parenthesis

where delta is the Dirac delta function.

delta left-parenthesis x right-parenthesis equals StartLayout Enlarged left-brace 1st Row 1st Column plus normal infinity comma 2nd Column x equals 0 2nd Row 1st Column 0 comma 2nd Column x not-equals 0 EndLayout

Usage

var logpdf = require( '@stdlib/math/base/dists/degenerate/logpdf' );

logpdf( x, mu )

Evaluates the natural logarithm of the PDF of a degenerate distribution centered at mu.

var y = logpdf( 2.0, 8.0 );
// returns -Infinity

y = logpdf( 8.0, 8.0 );
// returns Infinity

logpdf.factory( mu )

Returns a function for evaluating the natural logarithm of the PDF of a degenerate distribution centered at mu.

var mylogpdf = logpdf.factory( 10.0 );

var y = mylogpdf( 10.0 );
// returns Infinity

y = mylogpdf( 5.0 );
// returns -Infinity

y = mylogpdf( 12.0 );
// returns -Infinity

Examples

var randu = require( '@stdlib/random/base/randu' );
var round = require( '@stdlib/math/base/special/round' );
var logpdf = require( '@stdlib/math/base/dists/degenerate/logpdf' );

var mu;
var x;
var y;
var i;

for ( i = 0; i < 100; i++ ) {
    x = round( randu()*5.0 );
    mu = round( randu()*5.0 );
    y = logpdf( x, mu );
    console.log( 'x: %d, µ: %d, ln(f(x;µ)): %d', x, mu, y );
}