Module:JI ratio finder: Difference between revisions

Ganaram inukshuk (talk | contribs)
Bugfixed subgroup candidate ratio search
Ganaram inukshuk (talk | contribs)
Added filtering by equave-complement int-limit
Line 137: Line 137:
end
end
return filtered_ratios
end
-- Filter ratios based on whether its equave complement exceeds an int limit
function p.filter_ratios_by_equave_complement_int_limit(ratios, int_limit, equave)
local ratios = ratios or { rat.new(5, 4), rat.new(81, 64), rat.new(9, 7) }
local int_limit = int_limit or 10
local equave = equave or rat.new(2)
local filtered_ratios = {}
for i = 1, #ratios do
local complement = p.equave_complement(ratios[i], equave)
local numerator, denominator = rat.as_pair(complement)
if numerator <= int_limit and denominator <= int_limit then
table.insert(filtered_ratios, ratios[i])
end
end
return filtered_ratios
return filtered_ratios
end
end