Options
All
  • Public
  • Public/Protected
  • All
Menu

External module "math/base/utils/relative-difference/docs/types/index.d"

Index

Type aliases

ScaleFunction

ScaleFunction: (x: number, y: number) => number

Custom scale function.

param

first value

param

second value

returns

custom scale

Type declaration

    • (x: number, y: number): number
    • Parameters

      • x: number
      • y: number

      Returns number

ScaleNames

ScaleNames: "max-abs" | "max" | "min-abs" | "min" | "mean-abs" | "mean" | "x" | "y"

Scale function name.

Notes

  • The following scale functions are supported:

    • 'max-abs': maximum absolute value of x and y (default).
    • 'max': maximum value of x and y.
    • 'min-abs': minimum absolute value of x and y.
    • 'min': minimum value of x and y.
    • 'mean-abs': arithmetic mean of the absolute values of x and y.
    • 'mean': arithmetic mean of x and y.
    • 'x': x (noncommutative).
    • 'y': y (noncommutative).

Functions

Export assignment relativeDifference

  • Computes the relative difference of two real numbers.

    Notes

    • By default, the function scales the absolute difference by dividing the absolute difference by the maximum absolute value of x and y. To scale by a different function, specify a scale function name or custom scale function.
    • If the absolute difference of x and y is 0, the relative difference is always 0.
    • If |x| = |y| = infinity, the function returns NaN.
    • If |x| = |-y| = infinity, the relative difference is +infinity.
    • If a scale function returns 0, the function returns NaN.
    throws

    must provide a recognized scale function name

    Parameters

    • x: number

      first number

    • y: number

      second number

    • Optional scale: ScaleFunction | ScaleNames

      scale function (default: 'max-abs')

    Returns number

    relative difference

    Example

    var d = relativeDifference( 2.0, 5.0 ); // => 3/5
    // returns 0.6

    Example

    var d = relativeDifference( -1.0, 3.14 ); // => 4.14/3.14
    // returns ~1.318

    Example

    var d = relativeDifference( -2.0, 5.0, 'max-abs' ); // => |-7/5|
    // returns 1.4

    Example

    var d = relativeDifference( -2.0, 5.0, 'max' ); // => |-7/5|
    // returns 1.4

    Example

    var d = relativeDifference( -2.0, 5.0, 'min-abs' ); // => |-7/2|
    // returns 3.5

    Example

    var d = relativeDifference( -2.0, 5.0, 'min' ); // => |-7/-2|
    // returns 3.5

    Example

    var d = relativeDifference( -2.0, 5.0, 'mean-abs' ); // => |-7/3.5|
    // returns 2.0

    Example

    var d = relativeDifference( -2.0, 5.0, 'mean' ); // => |-7/1.5|
    // returns ~4.67

    Example

    var d = relativeDifference( -2.0, 5.0, 'x' ); // => |-7/-2|
    // returns 3.5

    Example

    var d = relativeDifference( 5.0, -2.0, 'x' ); // => |7/5|
    // returns 1.4

    Example

    var d = relativeDifference( -2.0, 5.0, 'y' ); // => |-7/5|
    // returns 1.4

    Example

    var d = relativeDifference( 5.0, -2.0, 'y' ); // => |7/-2|
    // returns 3.5