Module:JI ratio finder: Difference between revisions

Ganaram inukshuk (talk | contribs)
Changed candidate-ratio search to integer limit
Ganaram inukshuk (talk | contribs)
Bugfixed subgroup candidate ratio search
Line 93: Line 93:


-- Finds candidate ratios up to a cent value, up to a denominator limit, and
-- Finds candidate ratios up to a cent value, up to a denominator limit, and
-- within a prime subgroup.
-- with any of the given prime factors
-- These ratios should be filtered as needed.
function p.find_candidate_ratios_within_subgroup(cents, int_limit, primes)
function p.find_candidate_ratios_within_subgroup(cents, int_limit, subgroup)
local cents = cents or 1200
local cents = cents or 1200
local int_limit = int_limit or 99
local int_limit = int_limit or 99
local subgroup = subgroup or { 2, 3, 7, 11 }
local primes = primes or { 2, 3, 7, 11 }
local candidate_ratios = {}
local candidate_ratios = {}
Line 110: Line 109:
if utils._gcd(numerator, denominator) == 1 then
if utils._gcd(numerator, denominator) == 1 then
local current_ratio = rat.new(numerator, denominator)
local current_ratio = rat.new(numerator, denominator)
local is_within_subgroup = p.within_subgroup(current_ratio)
local is_within_subgroup = p.within_subgroup(current_ratio, primes)
local is_within_cents = rat.cents(current_ratio) <= cents
local is_within_cents = rat.cents(current_ratio) <= cents