Module:JI ratios: Difference between revisions

Ganaram inukshuk (talk | contribs)
No edit summary
Ganaram inukshuk (talk | contribs)
No edit summary
Line 237: Line 237:
local gcd = utils._gcd(numerator, denominator)
local gcd = utils._gcd(numerator, denominator)
local ratio = { numerator / gcd, denominator / gcd }
local ratio_already_added = false
local ratio_already_added = false
for k = 1, #ratios do
for k = 1, #ratios do
ratio_already_added = ratio_already_added and ratios[k][1] == numerator / gcd and ratios[k][2] == denominator / gcd
ratio_already_added = ratio_already_added and ratios[k][1] == ratio[1] and ratios[k][2] == ratio[2]
if ratio_already_added then
if ratio_already_added then
break
break
Line 246: Line 247:
end
end
if not ratio_already_added then
if not ratio_already_added then
local ratio = { numerator / gcd, denominator / gcd }
if p.ratio_within_search(ratio, equave, fine_search_args) then
if p.ratio_within_search(ratio, equave, fine_search_args) then
table.insert(ratios, ratio)
table.insert(ratios, ratio)
Line 458: Line 458:


local equave = rat.new(2,1)
local equave = rat.new(2,1)
local fine_search_args = p.parse_search_args("Subgroup: 2.3.5.7.13; Int Limit: 20; Complements Only: 1; Tenney Height: 100000000")
--local fine_search_args = p.parse_search_args("Subgroup: 2.5.9.21; Int Limit: 20; Complements Only: 1; Tenney Height: 100000000")
return p.ratios_as_string(p.search_by_args_within_equave(equave, fine_search_args))
--return p.ratios_as_string(p.search_by_args_within_equave(equave, fine_search_args))
return equave
--return p.ratio_within_search({16,13}, equave, fine_search_args) and p.ratio_within_search({8,13}, equave, fine_search_args)
--return p.ratio_within_search({16,13}, equave, fine_search_args) and p.ratio_within_search({8,13}, equave, fine_search_args)
end
end


return p
return p