Ich finde es didaktisch etwas ungeschickt, dass man das Tempo immer in BPM, also einer Zahl ohne Einheit angibt. Einleuchtender wäre das vmtl, wenn man Beats per Time angeben würde und dann eben mit einer Einheit wie zB 1/(60s). Statt bpm=120 würde man dann schreibe bpt = 120/(60s), dann sieht man auch sofort, was Sache ist. Klar, wird man niemals durchsetzen können, aber is vielleicht für jemanden ne nette Anregung.
Da man gezwungenermaßen ohne Einheiten arbeiten muss, würde ich die Formeln so herleiten:
Sei BPM die Anzahl der Schläge pro Minute.
Teilen wir dies durch die Anzahl von Sekunden einer Minute, erhalten wir die Anzahl der Schläge pro Sekunde BPS:
BPS := BPM/60.
Wenn wir nun eine Sekunde durch die Anzahl der Schläge während dieser Zeit teilen, erhalten wir die Dauer eines Schlags in Sekunden: SPB := 1 / BPS = 60 / BPM. (SPB: Seconds Per Beat)
Wenn ein Takt nun N Schläge hat, dann kann man seine Dauer in Sekunden SPP (Seconds Per Pattern) einfach ausrechnen, indem man die Dauer eines Schlags SPB mit N multipliziert.
SPP := N * SPB, also
SPP = N * 60 / BPM