Class EntropyCalculator

Construct a harmonic entropy calculator for individual musical intervals.

Constructors

Properties

ratios?: [number, number][]
table: [number, number][]

Accessors

  • get N(): number
  • Max height of rationals (Benedetti or Wilson depending on series)

    Returns number

  • set N(value): void
  • Parameters

    • value: number

    Returns void

  • get a(): number
  • Rényi order

    Returns number

  • set a(value): void
  • Parameters

    • value: number

    Returns void

  • get maxCents(): number
  • Upper bound of tabulation

    Returns number

  • set maxCents(value): void
  • Parameters

    • value: number

    Returns void

  • get minCents(): number
  • Lower bound of tabulation

    Returns number

  • set minCents(value): void
  • Parameters

    • value: number

    Returns void

  • get normalize(): boolean
  • Boolean flag to normalize the result by Hartley entropy

    Returns boolean

  • set normalize(value): void
  • Parameters

    • value: boolean

    Returns void

  • get res(): number
  • Tabulation delta in cents

    Returns number

  • set res(value): void
  • Parameters

    • value: number

    Returns void

  • get s(): number
  • Gaussian frequency deviation (default 0.01)

    Returns number

  • set s(value): void
  • Parameters

    • value: number

    Returns void

  • get series(): "tenney" | "farey"
  • Series of rationals to use

    Returns "tenney" | "farey"

  • set series(value): void
  • Parameters

    • value: "tenney" | "farey"

    Returns void

Methods

  • Calculate the harmonic entropy of a musical interval measured in cents.

    Parameters

    • cents: number

      Width of the interval.

    Returns number

    The harmonic entropy of the input in natural units.

    Throws

    An error if the input is outside the range of .minCents and .maxCents.

  • Calculate the harmonic entropy of a rational number.

    Parameters

    • value: FractionValue

      Fractional value.

    Returns number

    The harmonic entropy of the input in natural units.

    Throws

    An error if the input is outside of the tablated range.

  • Serialize the entropy calculator to a JSON compatible object.

    Returns {
        options: HarmonicEntropyOptions;
        tableY: number[];
        type: string;
    }

    The serialized object with property type set to 'EntropyCalculator'.

  • Revive a EntropyCalculator instance produced by EntropyCalculator.toJSON(). Return everything else as is.

    Intended usage:

    const data = JSON.parse(serializedData, EntropyCalculator.reviver);
    

    Parameters

    • key: string

      Property name.

    • value: any

      Property value.

    Returns any

    Deserialized EntropyCalculator instance or other data without modifications.