Module:Q-odd-limit intervals: Difference between revisions

ArrowHead294 (talk | contribs)
No edit summary
ArrowHead294 (talk | contribs)
No edit summary
Line 106: Line 106:
error_abs_direct = math.abs(nearest_size * step_size - true_size)
error_abs_direct = math.abs(nearest_size * step_size - true_size)
error_rel_direct = 100 * error_abs_direct / step_size
error_rel_direct = 100 * error_abs_direct / step_size
error_list[i] =  
error_list_direct[i] =  
{
{
ratio = ratio,  
ratio = ratio,  
Line 131: Line 131:
error_abs_val = math.abs(approx_size - true_size)
error_abs_val = math.abs(approx_size - true_size)
error_rel_val = 100 * error_abs_val / step_size
error_rel_val = 100 * error_abs_val / step_size
error_list[i] =  
error_list_val[i] =  
{
{
ratio = ratio,  
ratio = ratio,  
Line 152: Line 152:
errlist_direct = find_error_direct(val, subgroup, monzo_list)
errlist_direct = find_error_direct(val, subgroup, monzo_list)
errlist_val = find_error_val(val, subgroup, monzo_list)
errlist_val = find_error_val(val, subgroup, monzo_list)
for i = 1, #errlist_direct do
for i = 1, #errlist_val do
ratiocomp = string.format("%d/%d, %d/%d", errlist_directt[i].ratio.num, error_list[i].ratio.den, 2 * errlist_direct[i].ratio.den, errlist_direct[i].ratio.num)
ratiocomp = string.format("%d/%d, %d/%d", errlist_val[i].ratio.num, errlist_val[i].ratio.den, 2 * errlist_val[i].ratio.den, errlist_val[i].ratio.num)
error_abs_val = string.format("%.3f", errlist_direct[i].error_abs_val)
error_abs_val = string.format("%.3f", errlist_val[i].error_abs_val)
error_rel_val = string.format("%.1f", errlist_direct[i].error_rel_val)
error_rel_val = string.format("%.1f", errlist_val[i].error_rel_val)
error_abs_direct = string.format("%.3f", errlist_direct[i].error_abs_direct)
error_abs_direct = string.format("%.3f", errlist_val[i].error_abs_direct)
error_rel_direct = string.format("%.1f", errlist_direct[i].error_rel_direct)
error_rel_direct = string.format("%.1f", errlist_val[i].error_rel_direct)
if bit32.band(errlist_direct[i].ratio.den, errlist_direct[i].ratio.den - 1) == 0 and is_in(errlist_direct[i].ratio.num, subgroup) then -- check power of 2 for den and prime for num
if bit32.band(errlist_val[i].ratio.den, errlist_val[i].ratio.den - 1) == 0 and is_in(errlist_val[i].ratio.num, subgroup) then -- check power of 2 for den and prime for num
ratiocomp = "'''" .. ratiocomp .. "'''"
ratiocomp = "'''" .. ratiocomp .. "'''"
error_abs_val = "'''" .. error_abs_val .. "'''"
error_abs_val = "'''" .. error_abs_val .. "'''"
Line 165: Line 165:
error_rel_direct = "'''" .. error_rel_direct .. "'''"
error_rel_direct = "'''" .. error_rel_direct .. "'''"
end
end
if errlist_direct[i].error_rel_val > 50 then
if errlist_val[i].error_rel_val > 50 then
ratiocomp = "''" .. ratiocomp .. "''"
ratiocomp = "''" .. ratiocomp .. "''"
error_abs_val = "''" .. error_abs_val .. "''"
error_abs_val = "''" .. error_abs_val .. "''"