Skip to main content

DA.Numeric

Module Snapshot

Lifecycle

Stable.

Notices

Status: active Introduced in: 3.4.9 Removed in: - Warnings: 0 Deprecations: 0 Deprecated since: -

Data Types

data RoundingMode

Rounding modes. Constructors:
  • RoundingUp Round away from zero.
  • RoundingDown Round towards zero.
  • RoundingCeiling Round towards positive infinity.
  • RoundingFloor Round towards negative infinity.
  • RoundingHalfUp Round towards the nearest neighbor unless both neighbors are equidistant, in which case round away from zero.
  • RoundingHalfDown Round towards the nearest neighbor unless both neighbors are equidistant, in which case round towards zero.
  • RoundingHalfEven Round towards the nearest neighbor unless both neighbors are equidistant, in which case round towards the even neighbor.
  • RoundingUnnecessary Do not round. Raises an error if the result cannot be represented without rounding at the targeted scale.

Functions

mul

Multiply two numerics. Both inputs and the output may have different scales, unlike (*) which forces all numeric scales to be the same. Raises an error on overflow, rounds to chosen scale otherwise.

div

Divide two numerics. Both inputs and the output may have different scales, unlike (/) which forces all numeric scales to be the same. Raises an error on overflow, rounds to chosen scale otherwise.

cast

Cast a Numeric. Raises an error on overflow or loss of precision.

castAndRound

Cast a Numeric. Raises an error on overflow, rounds to chosen scale otherwise.

shift

Move the decimal point left or right by multiplying the numeric value by 10^(n1 - n2). Does not overflow or underflow.

pi

The number pi.

epsilon

The minimum strictly positive value that can be represented by a numeric of scale n.

roundNumeric

Round a Numeric number. The value of round n r a is the value of a rounded to n decimal places (i.e. scale), according to the rounding mode r. This will fail when using the RoundingUnnecessary mode for a number that cannot be represented exactly with at most n decimal places.

Orphan Typeclass Instances

  • instance NumericScale n => Bounded (Numeric n)