User:Contribution/Chanofreq Project: Difference between revisions
Contribution (talk | contribs) |
Contribution (talk | contribs) |
||
| Line 56: | Line 56: | ||
'''Answer:''' | '''Answer:''' | ||
* It should be fine to use 64-bit float, as long as no rounding is applied, we stay within the human hearing range, and the number of notes remains reasonable. For example, if [[16808edo]] is programmed from a base frequency (20 Hz) and a factor (1.0000412399734142) with exponents to map the entire multi-channel keyboard, after 10 octaves (20480 Hz), one phase error occurs every 15 days between two adjacent 64-bit float factor values. For the [[402653184edo]] tuning scheme within chanofreq using factor and exponents, the phase precision between 64-bit float steps is only 78.9 seconds: 1/(440*(2**(-69/12))*1.0000000017214499**(402653184*(32/3)) - 440*(2**(-69/12))*1.0000000017214496**(402653184*(32/3))) = 78.9 seconds. | * It should be fine to use 64-bit float, as long as no rounding is applied, we stay within the human hearing range, and the number of notes remains reasonable. For example, if [[16808edo]] is programmed from a base frequency (20 Hz) and a factor (1.0000412399734142) with exponents to map the entire multi-channel keyboard, after 10 octaves (20480 Hz), one phase error occurs every 15 days between two adjacent 64-bit float factor values. For the [[402653184edo|402,653,184-EDO]] tuning scheme within chanofreq using factor and exponents, the phase precision between 64-bit float steps is only 78.9 seconds: 1/(440*(2**(-69/12))*1.0000000017214499**(402653184*(32/3)) - 440*(2**(-69/12))*1.0000000017214496**(402653184*(32/3))) = 78.9 seconds. | ||
In comparison, the phase precision between 32-bit steps in | In comparison, the phase precision between 32-bit steps in 402,653,184-EDO is 12.86 hours, as calculated here: 1/(440*2**((127-69)/12)*2**(1/402653184)-440*2**((127-69)/12))/(60*60) = 12.86 hours. | ||
This shows that even with 64-bit floating-point precision, the factor and exponent solution is far less efficient than other tuning methods, but still usable for reasonably sized musical scales. However, using it as an intermediary for 32-bit MIDI tuning should be avoided. | This shows that even with 64-bit floating-point precision, the factor and exponent solution is far less efficient than other tuning methods, but still usable for reasonably sized musical scales up to 100,000-EDO to guarantee a precision equivalent to cents with 6 decimal places. However, using it as an intermediary for 32-bit MIDI tuning should be avoided. | ||
'''Open Questions:''' | '''Open Questions:''' | ||