betaln

Natural logarithm of the beta function.

The beta function, also called the Euler integral, is defined as

upper B e t a left-parenthesis x comma y right-parenthesis equals integral Subscript 0 Superscript 1 Baseline t Superscript x minus 1 Baseline left-parenthesis 1 minus t right-parenthesis Superscript y minus 1 Baseline normal d t

The beta function is related to the gamma function via the following equation

upper B e t a left-parenthesis x comma y right-parenthesis equals StartFraction normal upper Gamma left-parenthesis x right-parenthesis normal upper Gamma left-parenthesis y right-parenthesis Over normal upper Gamma left-parenthesis x plus y right-parenthesis EndFraction

Usage

var betaln = require( '@stdlib/math/base/special/betaln' );

betaln( x, y )

Evaluates the the natural logarithm of the beta function.

var val = betaln( 0.0, 0.0 );
// returns Infinity

val = betaln( 1.0, 1.0 );
// returns 0.0

val = betaln( -1.0, 2.0 );
// returns NaN

val = betaln( 5.0, 0.2 );
// returns ~1.218

val = betaln( 4.0, 1.0 );
// returns ~-1.386

Examples

var betaln = require( '@stdlib/math/base/special/betaln' );
var x;
var y;

for ( x = 0; x < 10; x++ ) {
    for ( y = 10; y > 0; y-- ) {
        console.log( 'x: %d, \t y: %d, \t f(x,y): %d', x, y, betaln( x, y ) );
    }
}

C APIs

Usage

#include "stdlib/math/base/special/betaln.h"

stdlib_base_betaln( x, y )

Evaluates the the natural logarithm of the beta function.

double v = stdlib_base_betaln( 5.0, 0.2 );
// returns ~1.218

The function accepts the following arguments:

  • x: [in] double input value.
  • y: [in] double input value.
double stdlib_base_betaln( const double x, const double y );

Examples

#include "stdlib/math/base/special/betaln.h"
#include <stdio.h>

int main( void ) {
    const double x[] = { 24.0, 32.0, 48.0, 116.0, 33.0 };
    const double y[] = { 12.0, 6.0, 15.0, 52.0, 22.0 };

    double out;
    int i;
    for ( i = 0; i < 5; i++ ) {
        out = stdlib_base_betaln( x[ i ], y[ i ] );
        printf( "betaln(%lf, %lf) = %lf\n", x[ i ], y[ i ], out );
    }
}
Did you find this page helpful?