cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A117578 Equal divisions of the octave with nondecreasing consistency limits and distinct approximations for all the ratios in the tonality diamond of that limit.

Original entry on oeis.org

1, 2, 3, 5, 6, 7, 8, 9, 12, 15, 16, 18, 19, 22, 23, 24, 25, 26, 27, 31, 35, 36, 37, 41, 46, 53, 58, 72, 80, 87, 94, 111, 121, 130, 149, 159, 183, 217, 282, 311, 388, 422, 624, 935, 1171, 1323, 1578, 1600, 2554, 12348, 14842, 17461
Offset: 1

Views

Author

Gene Ward Smith, Mar 29 2006

Keywords

Examples

			9-EDO is consistent and distinct through the 5 limit because 6/5, 5/4, 4/3, 3/2, 8/5 and 5/3 map to 2, 3, 4, 5, 6 and 7 steps respectively and all the compositions of those intervals are consistent.
		

Crossrefs

Programs

  • Maple
    with(padic, ordp):
    diamond := proc(n) # tonality diamond for odd integer n local i, j, s; s := {}; for i from 1 by 2 to n do for j from 1 by 2 to n do s := s union {r2d2(i/j)} od od; sort(convert(s, list)) end:
    r2d2 := proc(q) # octave reduction of rational number q 2^(-floor(evalf(ln(q)/ln(2))))*q end:
    plim := proc(q) # prime limit of rational number q local r, i, p; r := 1; i := 0; while not (r=q) do i := i+1; p := ithprime(i); r := r*p^ordp(q, p) od; i end:
    vai := proc(n,i) # mapping of i-th prime by patent val for n round(evalf(n*ln(ithprime(i))/ln(2))) end:
    via := proc(n,l) # the patent val for n of length l local i,v; for i from 1 to l do v[i] := vai(n,i) od; convert(convert(v,array),list) end:
    h := proc(n, q) # mapping of interval q by patent val n if q=1 then RETURN(0) fi; dotprod(vec(q), via(n,plim(q))) end:
    condi := proc(n, s) # distinct consistency of edo n with respect to consonance set s local i, d; for i from 1 to nops(s) do if not h(n, s[i])=round(n*l2(s[i])) then RETURN(false) fi od; for i from 1 to nops(s) do d[i] := h(n, s[i]) od; if not nops(convert(d, set))=nops(s) then RETURN(false) fi; RETURN(true) end:
    condl := proc(n) # highest distinct odd-limit consistency for edo n local c; c := 3; while condi(n, diamond(c)) do c := c+2 od; c-2 end: