Module:Temperament data: Difference between revisions
Jump to navigation
Jump to search
CompactStar (talk | contribs) Scrap this code, I have found how to implement it myself. |
CompactStar (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
local rat = require('Module:Rational') | local rat = require('Module:Rational') | ||
local p = {} | local p = {} | ||
-- Complex number functions (1st element = real and 2nd element = imaginary) | |||
local function cadd(a, b) | |||
return {(a[1] + b[1]), (a[2] + b[2])} | |||
end | |||
local function csub(a, b) | |||
return {(a[1] - b[1]), (a[2] - b[2])} | |||
end | |||
function p.cmul(a, b) | |||
return {(a[1] * b[1] - a[2] * b[2]), (a[1] * b[2] + a[2] * b[1])} | |||
end | |||
local function matmul(a, b) | local function matmul(a, b) | ||
Line 18: | Line 31: | ||
local function matinv(a) | local function matinv(a) | ||
end | end | ||
return p | return p |
Revision as of 03:06, 14 October 2023
Note: Do not invoke this module directly; use the corresponding template instead: Template:Temperament data.
local rat = require('Module:Rational')
local p = {}
-- Complex number functions (1st element = real and 2nd element = imaginary)
local function cadd(a, b)
return {(a[1] + b[1]), (a[2] + b[2])}
end
local function csub(a, b)
return {(a[1] - b[1]), (a[2] - b[2])}
end
function p.cmul(a, b)
return {(a[1] * b[1] - a[2] * b[2]), (a[1] * b[2] + a[2] * b[1])}
end
local function matmul(a, b)
local result = {}
for i = 1, #a do
result[i] = {}
for j = 1, #(b[1]) do
result[i][j] = 0
for k = 1, #(a[1]) do
result[i][j] = result[i][j] + a[i][k] * b[k][j]
end
end
end
return result
end
local function matinv(a)
end
return p