Binet's Formula

Evaluate Binet's formula extended to real numbers.

Binet's formula refers to the closed-form solution for computing the nth Fibonacci number and may be expressed

upper F Subscript n Baseline equals StartFraction phi Superscript n Baseline minus psi Superscript n Baseline Over StartRoot 5 EndRoot EndFraction

where φ is the golden ratio and ψ is 1 - φ. To extend Fibonacci numbers to real numbers, we may express Binet's formula as

upper F Subscript x Baseline equals StartFraction phi Superscript x Baseline minus phi Superscript negative x Baseline dot cosine left-parenthesis pi x right-parenthesis Over StartRoot 5 EndRoot EndFraction

Usage

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

binet( x )

Evaluates Binet's formula extended to real numbers.

var v = binet( 0.0 );
// returns 0.0

v = binet( 1.0 );
// returns 1.0

v = binet( 2.0 );
// returns 1.0

v = binet( 3.0 );
// returns 2.0

v = binet( -1.0 );
// returns 1.0

v = binet( 3.14 );
// returns ~2.12

If provided NaN, the function returns NaN.

var v = binet( NaN );
// returns NaN

Notes

  • The function returns only approximate Fibonacci numbers for nonnegative integers.
  • The function does not return complex numbers, guaranteeing real-valued return values.

Examples

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

var v;
var i;

for ( i = 0; i < 79; i++ ) {
    v = binet( i );
    console.log( v );
}