Closed frostburn closed 2 weeks ago
inthar — Today at 2:47 PM
The exact optimization problem likely has to be at least exponential in dimension, but LLL is polynomial in dimension and finds reasonably short bases. I think sintel uses LLL to find detempered JI bases for temperaments, so we can just use sintel's API.
frostburn — Today at 2:53 PM
Good to know. I'm scoping SonicWeave to be about tempering, but only equal tempering so we should at lest offer something in-library as well. I believe you can get close enough to higher ranks by using large equal temps and octave stretching so it shouldn't be too restrictive in principle.
akśelái — Today at 4:10 PM
when you really need higher ranks, two things will typically happen: either the GPV list will only have 1 or 2 elements (or even 0), or will start and end in edo numbers roughly in the thousands. in either case, you either choose an edo to work backwards from, or just use the large edo since we've already stepped into unnoticeable territory even for half-cent-JND people
I believe LLL refers to this: https://en.wikipedia.org/wiki/Lenstra%E2%80%93Lenstra%E2%80%93Lov%C3%A1sz_lattice_basis_reduction_algorithm
akśelái — Today at 12:10 PM