Module:Utils/doc: Difference between revisions
Jump to navigation
Jump to search
Add index_of function, misc. edits |
Update |
||
| Line 4: | Line 4: | ||
== Functions == | == Functions == | ||
* <code>table_contains(tbl, x)</code> Check if table contains x. This function is designed to be used by other modules only; it cannot be called with <code><nowiki>{{#invoke:}}</nowiki></code>. | |||
* <code>index_of(array, index)</code> Return the first index with the given value (or nil if not found). This function is designed to be used by other modules only; it cannot be called with <code><nowiki>{{#invoke:}}</nowiki></code>. | |||
* <code>eval_num_arg(input, def_value)</code> checks if <code>input</code> is a number; on error, use <code>def_value</code>. This function is designed to be used by other modules only; it cannot be called with <code><nowiki>{{#invoke:}}</nowiki></code>. | * <code>eval_num_arg(input, def_value)</code> checks if <code>input</code> is a number; on error, use <code>def_value</code>. This function is designed to be used by other modules only; it cannot be called with <code><nowiki>{{#invoke:}}</nowiki></code>. | ||
* <code>log(x, b)</code> returns the logarithm base <code>b</code> of <code>x</code>. Parameter <code>b</code> defaults to base 2 (octave) if it is omitted. | * <code>log(x, b)</code> returns the logarithm base <code>b</code> of <code>x</code>. Parameter <code>b</code> defaults to base 2 (octave) if it is omitted. | ||
* <code>gcd(a, b)</code> returns the greatest common divisor of <code>a</code> and <code>b</code>. | |||
* <code>round_dec(x, places)</code> returns <code>x</code> rounded to a precision of <code>places</code> decimal places. Parameter <code>places</code> defaults to 0 if it is omitted. | * <code>round_dec(x, places)</code> returns <code>x</code> rounded to a precision of <code>places</code> decimal places. Parameter <code>places</code> defaults to 0 if it is omitted. | ||
* <code>round(x, prec)</code> returns <code>x</code> rounded to a precision of <code>prec</code> significant figures. Parameter <code>prec</code> defaults to 6 if it is omitted. | * <code>round(x, prec)</code> returns <code>x</code> rounded to a precision of <code>prec</code> significant figures. Parameter <code>prec</code> defaults to 6 if it is omitted. | ||
| Line 14: | Line 17: | ||
* <code>next_young_diagram(d)</code> returns the next Young diagram of the same size; the first one is <code>[N]</code>, the last one is <code>[1, 1, ..., 1]</code>. After the last one, <code>nil</code> is returned. The input table is modified. This function is designed to be used by other modules only; it cannot be called with <code><nowiki>{{#invoke:}}</nowiki></code>. | * <code>next_young_diagram(d)</code> returns the next Young diagram of the same size; the first one is <code>[N]</code>, the last one is <code>[1, 1, ..., 1]</code>. After the last one, <code>nil</code> is returned. The input table is modified. This function is designed to be used by other modules only; it cannot be called with <code><nowiki>{{#invoke:}}</nowiki></code>. | ||
* <code>get_monzo(n, d)</code> Get monzo of n/d, e.g. 3/2 -> <code>{[2] = -1, [3] = 1}</code>. | * <code>get_monzo(n, d)</code> Get monzo of n/d, e.g. 3/2 -> <code>{[2] = -1, [3] = 1}</code>. | ||
<includeonly><hr><small>Documentation transcluded from [[/doc]]</small> [[Category:Lua modules]]</includeonly> | <includeonly><hr><small>Documentation transcluded from [[/doc]]</small> [[Category:Lua modules]]</includeonly> | ||
Revision as of 05:53, 12 September 2023
This module provides several mathematical functions which are likely to be used frequently on the Xenharmonic Wiki.
Namely, the functions in this module can be called from other modules by using require('Module:Utils') and calling the _-prefixed functions.
Functions
table_contains(tbl, x)Check if table contains x. This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.index_of(array, index)Return the first index with the given value (or nil if not found). This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.eval_num_arg(input, def_value)checks ifinputis a number; on error, usedef_value. This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.log(x, b)returns the logarithm basebofx. Parameterbdefaults to base 2 (octave) if it is omitted.gcd(a, b)returns the greatest common divisor ofaandb.round_dec(x, places)returnsxrounded to a precision ofplacesdecimal places. Parameterplacesdefaults to 0 if it is omitted.round(x, prec)returnsxrounded to a precision ofprecsignificant figures. Parameterprecdefaults to 6 if it is omitted.is_prime(n)returnstrueif the given integernis a prime number. This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.prime_factorization(n)returns the prime factorization of the given integernusing the exponential form (in wikitext).prime_factorization_raw(n)returns a table encoding the prime factorization ofn. This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.signum(x)returns 1 for positive numbers, -1 for negative ones, 0 for zero and non-integer inputs. This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.next_young_diagram(d)returns the next Young diagram of the same size; the first one is[N], the last one is[1, 1, ..., 1]. After the last one,nilis returned. The input table is modified. This function is designed to be used by other modules only; it cannot be called with{{#invoke:}}.get_monzo(n, d)Get monzo of n/d, e.g. 3/2 ->{[2] = -1, [3] = 1}.