Dirac Delta
Evaluate the Dirac delta function.
The Dirac delta function may be loosely defined as
and is constrained to satisfy the identity
Note that the Dirac delta function is not a function in the traditional sense, as any real-valued function which is zero everywhere except at a single point, must have an integral equal to 0
.
Usage
var diracDelta = require( '@stdlib/math/base/special/dirac-delta' );
diracDelta( x )
Evaluates the Dirac delta function.
var v = diracDelta( 0.0 );
// returns Infinity
v = diracDelta( 3.14 );
// returns 0.0
v = diracDelta( NaN );
// returns NaN
Examples
var linspace = require( '@stdlib/array/base/linspace' );
var diracDelta = require( '@stdlib/math/base/special/dirac-delta' );
var x = linspace( -1.0, 1.0, 101 );
var i;
for ( i = 0; i < x.length; i++ ) {
console.log( 'dirac(%d) = %d', x[ i ], diracDelta( x[ i ] ) );
}
C APIs
Usage
#include "stdlib/math/base/special/dirac_delta.h"
stdlib_base_dirac_delta( x )
Evaluates the Dirac delta function.
double x = stdlib_base_dirac_delta( 0.0 );
// returns Infinity
x = stdlib_base_dirac_delta( 3.14 );
// returns 0.0
The function accepts the following arguments:
- x:
[in] double
input value.
double stdlib_base_dirac_delta( const double x );
Examples
#include "stdlib/math/base/special/dirac_delta.h"
#include <stdlib.h>
#include <stdio.h>
int main( void ) {
const double x[] = { -1.0, -0.5, 0.0, 0.5, 1.0, 3.14, 2.0 };
double v;
int i;
for ( i = 0; i < 7; i++ ) {
v = stdlib_base_dirac_delta( x[ i ] );
printf( "dirac(%lf) = %lf\n", x[ i ], v );
}
}