# Kronecker Delta > Evaluate the [Kronecker delta][kronecker-delta].
The [Kronecker delta][kronecker-delta] is defined as
Kronecker delta.
## Usage ```javascript var kroneckerDelta = require( '@stdlib/math/base/special/kronecker-delta' ); ``` #### kroneckerDelta( i, j ) Evaluates the [Kronecker delta][kronecker-delta]. ```javascript var v = kroneckerDelta( 3.14, 3.14 ); // returns 1.0 v = kroneckerDelta( 3.14, 0.0 ); // returns 0.0 v = kroneckerDelta( NaN, 3.14 ); // returns NaN v = kroneckerDelta( 3.14, NaN ); // returns NaN v = kroneckerDelta( NaN, NaN ); // returns NaN ```
## Examples ```javascript var linspace = require( '@stdlib/array/linspace' ); var kroneckerDelta = require( '@stdlib/math/base/special/kronecker-delta' ); var x = linspace( -1.0, 1.0, 101 ); var i; for ( i = 0; i < x.length; i++ ) { console.log( 'kronecker(%d,%d) = %d', x[ i ], 0.0, kroneckerDelta( x[ i ], 0.0 ) ); } ```
* * *
## C APIs
### Usage ```c #include "stdlib/math/base/special/kronecker_delta.h ``` #### stdlib_base_kronecker_delta( i, j ) Evaluates the Kronecker delta. ```c double v = stdlib_base_kronecker_delta( 3.0, 3.0 ); // returns 1.0 ``` The function accepts the following arguments: - **i**: `[in] double` input value. - **j**: `[in] double` input value. ```c double stdlib_base_kronecker_delta( const double i, const double j ); ```
### Examples ```c #include "stdlib/math/base/special/kronecker_delta.h" #include int main() { double x[] = { 3.0, 4.0, 5.0, 5.0 }; double y; int i; for ( i = 0; i < 4; i += 2 ) { y = stdlib_base_kronecker_delta( x[ i ], x[ i+1 ] ); printf( "kronecker_delta(%lf, %lf) = %lf\n", x[ i ], x[ i+1 ], y ); } } ```