Skip to content

Math

Global math functions that operate on numbers. Mirror the builtins available inside dsp blocks.

fn abs(x: Number) -> Number

Absolute value.

Parameters:

  • x (Number) — the input value

Returns: Number — the absolute value

fn ceil(x: Number) -> Number

Smallest integer greater than or equal to the value.

Parameters:

  • x (Number) — the input value

Returns: Number — the ceiling

fn clamp(x: Number, lo: Number, hi: Number) -> Number

Constrains a value to the inclusive range [lo, hi].

Parameters:

  • x (Number) — the value to constrain
  • lo (Number) — lower bound
  • hi (Number) — upper bound

Returns: Number — the clamped value

fn cos(x: Number) -> Number

Cosine of an angle in radians.

Parameters:

  • x (Number) — angle in radians

Returns: Number — the cosine

fn exp(x: Number) -> Number

Exponential function (e raised to the power x).

Parameters:

  • x (Number) — the exponent

Returns: Number — e to the power x

fn floor(x: Number) -> Number

Largest integer less than or equal to the value.

Parameters:

  • x (Number) — the input value

Returns: Number — the floor

fn fract(x: Number) -> Number

Fractional part of the value (the part after the decimal point).

Parameters:

  • x (Number) — the input value

Returns: Number — the fractional part

fn ftom(freq: Number) -> Number

Converts a frequency in Hz to a MIDI note number.

Parameters:

  • freq (Number) — frequency in Hz

Returns: Number — MIDI note number (may be fractional)

fn lerp(a: Number, b: Number, t: Number) -> Number

Linearly interpolates between two values.

Parameters:

  • a (Number) — start value (t = 0)
  • b (Number) — end value (t = 1)
  • t (Number) — interpolation factor

Returns: Number — the interpolated value

fn log(x: Number) -> Number

Natural logarithm (base e).

Parameters:

  • x (Number) — the input value

Returns: Number — the natural logarithm

fn log10(x: Number) -> Number

Base-10 logarithm.

Parameters:

  • x (Number) — the input value

Returns: Number — the base-10 logarithm

fn log2(x: Number) -> Number

Base-2 logarithm.

Parameters:

  • x (Number) — the input value

Returns: Number — the base-2 logarithm

fn max(a: Number, b: Number) -> Number

Larger of two numbers.

Parameters:

  • a (Number) — first value
  • b (Number) — second value

Returns: Number — the larger value

fn min(a: Number, b: Number) -> Number

Smaller of two numbers.

Parameters:

  • a (Number) — first value
  • b (Number) — second value

Returns: Number — the smaller value

fn mtof(note: Number) -> Number

Converts a MIDI note number to frequency in Hz.

Parameters:

  • note (Number) — MIDI note number (69 = A4 = 440 Hz)

Returns: Number — frequency in Hz

fn pow(base: Number, exponent: Number) -> Number

Raises a base to a power.

Parameters:

  • base (Number) — the base
  • exponent (Number) — the exponent

Returns: Number — base raised to the exponent

fn round(value: Number, places: Number = 0) -> Number

Rounds a number to the given number of decimal places.

Parameters:

  • value (Number) — the number to round
  • places (Number) — decimal places

Returns: Number — the rounded number

fn sin(x: Number) -> Number

Sine of an angle in radians.

Parameters:

  • x (Number) — angle in radians

Returns: Number — the sine

fn sqrt(x: Number) -> Number

Square root.

Parameters:

  • x (Number) — the input value

Returns: Number — the square root

fn tan(x: Number) -> Number

Tangent of an angle in radians.

Parameters:

  • x (Number) — angle in radians

Returns: Number — the tangent

fn tanh(x: Number) -> Number

Hyperbolic tangent.

Parameters:

  • x (Number) — the input value

Returns: Number — the hyperbolic tangent