- This module primarily serves as a library for other modules and has no corresponding template.
This module provides a means to calculate harmonic Shannon entropy of a particular interval.
| Introspection summary for Module:Harmonic entropy
|
Functions provided (2)
| Line
|
Function
|
Params
|
Description
|
| 7
|
to_cents (invokable)
|
(frame)
|
|
| 12
|
_to_cents
|
(ratio, prec)
|
|
|
|
local getArgs = require('Module:Arguments').getArgs
local u = require('Module:Utils')
local rat = require('Module:Rational')
local p = {}
-- return measure in cents of an interval ratio, rounded to prec decimal places
function p.to_cents(frame)
local args = getArgs(frame)
return p._to_cents(args[1], args[2])
end
function p._to_cents(ratio, prec)
-- ratio defaults to 1
ratio = u.eval_num_arg(ratio, 1)
-- prec defaults to nil
prec = u.eval_num_arg(prec)
local result = 1200*u._log(ratio), prec
if prec == nil then
return result
else
return u._round(result, prec)
end
end
return p