Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 

gdot

Calculate the dot product of two vectors.

The dot product (or scalar product) is defined as

Dot product definition.

Usage

var gdot = require( '@stdlib/blas/gdot' );

gdot( x, y )

Calculates the dot product of vectors x and y.

var Int32Array = require( '@stdlib/array/int32' );
var array = require( '@stdlib/ndarray/array' );

var x = array( new Int32Array( [ 4.0, 2.0, -3.0, 5.0, -1.0 ] ) );
var y = array( new Int32Array( [ 2.0, 6.0, -1.0, -4.0, 8.0 ] ) );

var z = gdot( x, y );
// returns -5.0

The function has the following parameters:

  • x: a 1-dimensional ndarray or an array-like object.
  • y: a 1-dimensional ndarray or an array-like object.

If provided empty vectors, the function returns 0.0.

var z = gdot( [], [] );
// returns 0.0

Notes

  • gdot() corresponds to the BLAS level 1 function ddot with the exception that this implementation works with any array type, not just Float64Arrays.
  • For best performance, provide 1-dimensional ndarrays whose underlying data type is either float64 or float32.

Examples

var discreteUniform = require( '@stdlib/random/base/discrete-uniform' );
var gdot = require( '@stdlib/blas/gdot' );

var rand1 = discreteUniform.factory( 0, 100 );
var rand2 = discreteUniform.factory( 0, 10 );

var x = [];
var y = [];
var i;
for ( i = 0; i < 10; i++ ) {
    x.push( rand1() );
    y.push( rand2() );
}
console.log( x );
console.log( y );

var z = gdot( x, y );
console.log( z );