Module:JI ratios: Difference between revisions

Ganaram inukshuk (talk | contribs)
cleanup; remove todo
Ganaram inukshuk (talk | contribs)
No edit summary
Line 96: Line 96:
-- Remove ratios that fall outside the cent range.
-- Remove ratios that fall outside the cent range.
while rat.cents(ratios[1]) <= min_cents do
while rat.cents(ratios[1]) < min_cents do
table.remove(ratios, 1)
table.remove(ratios, 1)
end
end
while rat.cents(ratios[#ratios]) >= max_cents do
while rat.cents(ratios[#ratios]) > max_cents do
table.remove(ratios, #ratios)
table.remove(ratios, #ratios)
end
end
Line 146: Line 146:
local subgroup = p.prime_limit_to_subgroup(prime_limit)
local subgroup = p.prime_limit_to_subgroup(prime_limit)
local ratios = p.search_by_subgroup_within_cents(min_cents, max_cents, int_limit, subgroup)
local ratios = p.search_by_subgroup_within_cents(min_cents, max_cents, int_limit, subgroup)
while rat.cents(ratios[1]) <= min_cents do
while rat.cents(ratios[1]) < min_cents do
table.remove(ratios, 1)
table.remove(ratios, 1)
end
end
Line 160: Line 160:
function p.search_by_subgroup(equave, int_limit, subgroup)
function p.search_by_subgroup(equave, int_limit, subgroup)
local ratios = p.search_by_subgroup_within_cents(0, rat.cents(equave), int_limit, subgroup)
local ratios = p.search_by_subgroup_within_cents(0, rat.cents(equave), int_limit, subgroup)
while rat.cents(ratios[1]) <= min_cents do
while rat.cents(ratios[1]) < min_cents do
table.remove(ratios, 1)
table.remove(ratios, 1)
end
end
Line 224: Line 224:
-- Remove ratios less than minimum
-- Remove ratios less than minimum
while rat.cents(ratios[1]) <= min_cents do
while rat.cents(ratios[1]) < min_cents do
table.remove(ratios, 1)
table.remove(ratios, 1)
end
end
Line 406: Line 406:
--return p.ratios_as_string(p._ji_ratios(p.parse_args("Int Limit: 16; Equave: 3/1; Complements Only: 0")))
--return p.ratios_as_string(p._ji_ratios(p.parse_args("Int Limit: 16; Equave: 3/1; Complements Only: 0")))
--return p.ratios_as_string(p.search_by_prime_limit_within_cents(372, 440, 17, 30))
--return p.ratios_as_string(p.search_by_prime_limit_within_cents(372, 440, 17, 30))
return p.ratios_as_string(p.search_by_int_limit_within_cents(300,500, 20))
return p.ratios_as_string(p.search_by_subgroup_within_cents(300,500, 30, {2,3,7}))
end
end