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_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_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, # | for i = 1, #errlist_val do | ||
ratiocomp = string.format("%d/%d, %d/%d", | 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", | error_abs_val = string.format("%.3f", errlist_val[i].error_abs_val) | ||
error_rel_val = string.format("%.1f", | error_rel_val = string.format("%.1f", errlist_val[i].error_rel_val) | ||
error_abs_direct = string.format("%.3f", | error_abs_direct = string.format("%.3f", errlist_val[i].error_abs_direct) | ||
error_rel_direct = string.format("%.1f", | error_rel_direct = string.format("%.1f", errlist_val[i].error_rel_direct) | ||
if bit32.band( | 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 | 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 .. "''" | ||