Skip to main content

Qnum

Defined in: src/dataframe/qnum.ts:30

A set of static methods for working with qualified numbers. The internal representation of a qualified number is a regular double precision floating point number (IEEE 754), except the two least significant bits in mantissa are reserved for holding the qualifier ([LESS], [EXACT], [GREATER]).

The advantage of that representation is that the standard arithmetic operations could be performed directly on the number, without unpacking it. This is especially important for batch operations such as aggregation or sorting. While there is a loss of precision, it is rather insignificant (50 bits for storing mantissa instead of 52), which makes perfect sense considering that qualified numbers represent imprecise measurements.

Use [create], [getValue], and [getQ] methods for packing/unpacking.

Constructors

Constructor

new Qnum(): Qnum

Returns

Qnum

Methods

create()

static create(value, q?): number

Defined in: src/dataframe/qnum.ts:54

Creates a QNum value out of the [value] and qualifier [q].

Parameters

ParameterTypeDefault value
valuenumberundefined
qnumberQNUM_EXACT

Returns

number


exact()

static exact(x): number

Defined in: src/dataframe/qnum.ts:61

Parameters

ParameterType
xnumber

Returns

number


getQ()

static getQ(x): number

Defined in: src/dataframe/qnum.ts:35

Extracts the qualifier (QNUM_LESS, QNUM_EXACT, QNUM_GREATER). See also getValue

Parameters

ParameterType
xnumber

Returns

number


getValue()

static getValue(x): number

Defined in: src/dataframe/qnum.ts:44

Extracts the value from x, stripping the qualifier . See also getQ

Parameters

ParameterType
xnumber

Returns

number


greater()

static greater(x): number

Defined in: src/dataframe/qnum.ts:69

Parameters

ParameterType
xnumber

Returns

number


less()

static less(x): number

Defined in: src/dataframe/qnum.ts:65

Parameters

ParameterType
xnumber

Returns

number


parse()

static parse(s): number

Defined in: src/dataframe/qnum.ts:76

Parses a string into a qualified number.

Parameters

ParameterType
sstring

Returns

number


qualifier()

static qualifier(x): string

Defined in: src/dataframe/qnum.ts:90

Returns the string representation of the qualifier.

Parameters

ParameterType
xnumber

Returns

string


toString()

static toString(x): string

Defined in: src/dataframe/qnum.ts:83

Converts a qualified number to a string representation.

Parameters

ParameterType
xnumber

Returns

string