Module:Temperament data: Difference between revisions

From Xenharmonic Wiki
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
local function get_cte_error()
end


return p
return p

Revision as of 03:06, 14 October 2023

Module documentation[view] [edit] [history] [purge]
This module should not be invoked directly; use its corresponding template instead: Template:Temperament data.
Module:Temperament data is a draft module. It is incomplete and may not be in active development. If possible, editors are encouraged to help with its development. In the meantime, editors should avoid using this module across the Xenharmonic Wiki, except for testing.
Introspection summary for Module:Temperament data 
Functions provided (1)
Line Function Params
13 cmul (a, b)
Lua modules required (1)
Variable Module Functions used
rat Module:Rational dependency not used

No function descriptions were provided. The Lua code may have further information.


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