Now... this is a very, very interesting new thread...
  On Thu, Jan 27, 2022 at 5:27 PM Tim
<termtech(a)rogers.com
 <mailto:termtech@rogers.com>> wrote:
     On 1/27/22 1:08 PM, Paul Davis wrote:
     Hiya Paul. Could you explain that a bit more?
     Human exponential vs. linear, I don't quite understand.
 Let's suppose you are playing the simplest of beats, let's say you
 just play a note/tone at 120bpm. There's 0.5 seconds between your
 playing.
 To do a linear speedup, you would gradually reduce the time between
 notes, maybe like this: 0.5, 0.45, 0.40, 0.35, 0.30 and so on 
 I think most software users have always 'adapted' linear
 tempo-changing and ramping interfaces to try and mimic somewhat
 'realistic' human behaviour and indeed that can be challenging :-)
 What I'm wondering is: when a software offers exponential ramps
 etc. isn't that just a user interface? i.e. how the software then
 calculates the ramp values automatically for the users and sets the
 BPM at certain instants depending on the granularity?
 In that case I'd assume the software is then exposing the (calculated)
 BPM to e.g. plugins or a transport mechanism if it were the 'master'? 
I cannot speak in general terms, but you need to keep several sources
with different note lengths in sync.  LilyPond, a music typesetter, does
this by using exact rational numbers.  Exponential speedups/slowdowns
are pretty bad at managing the mapping of a rational note length grid to
a rational timeline, with nominators and denominators of manageable
size.  So one needs to be somewhat careful about the formulas to employ.
--
David Kastrup