• Willkommen im Forum „Archiviertes Lilypond Forum (2017)“.
 

Dies ist das Archiv des alten Forums (bis März 2017). Das aktuelle Forum ist unter lilypondforum.de zu finden.
This is the archive of the old forum (until March 2017). You can find the current forum at lilypondforum.de.

Hauptmenü

Error when combining "\repeat tremolo 9" and "\times 2/3"

Begonnen von Radler, Freitag, 5. Dezember 2008, 10:01

Vorheriges Thema - Nächstes Thema

Radler

      \times 2/3 {\repeat tremolo 9 {<sib sol' sib>8} }
does not work as expected
same result with "repeat" and "times" switched:
      \repeat tremolo 9 {\times 2/3 {<sib sol' sib>8} }
see attached .ly and .ps file
Any help appreciated!
Thanks a lot
Radler

PS: I entered this request in English for better forwarding to international help - but we can communicate in German too, if English has no advantages...

derHindemith


ding-dong

NR, Seite 109 , pdf-version:
ZitatThe \repeat tremolo syntax expects exactly two notes within the braces, and the number
of repetitions must correspond to a note value that can be expressed with plain or dotted notes.
Thus, \repeat tremolo 7 is valid and produces a double dotted note, but \repeat tremolo 9
is not.
hdh
ding-dong

derHindemith

However in this case, \repeat tremolo 9 should work. It would be equivalent to \times 2/3 { \times 2/3 {s16 s s} \times 2/3 {s16 s s} \times 2/3 {s16 s s} }. I'm imagining that's what you want, but as a tremolo?

Radler

#4
Hi Ding-Dong, your quotation does not apply to my problem. The next paragraph is relevant:
ZitatThere are two ways to put tremolo marks on a single note...the note should not be surrounded by braces:
However, removing the braces does not fix the problem.
[Using a single note rather than an accord (sib8 rather than <sib sol' sib>8, which would be wrong from a musical point of view) has the same wrong result.]

\repeat tremolo 7 is valid and produces a double dotted note indeed, but it is 2 triplet-eigths too short, the following note starts that amount too early. These 2 triplet-eights are exactly the missing ones between tremolo 9 and tremolo 7. Thus - I could work with \skip-s here, but will fail, when LilyPond is corrected.
Nevertheless - thanks for your help!

What I want to note: Play 9 triplet-eigths in 3 quarter-beats.
Calculation: 9 * (2/3) * (1/8) = (9*2*1) / (3*8) = 18/24 = 3/4
So, something is wrong in the LilyPond-calculation code, is it not.

By the way: It is not a strange requirement - I need it for Schubert's Erlkönig, bar 14 and others.

Radler

derHindemith

#5
I came up with two ways of doing this. From the score over at variations: http://www.dlib.indiana.edu/variations/scores/bhs2046/large/sc1h0170.gif
I used this solution:

\relative c'{
   \scaleDurations #'(2 . 3) {
      \repeat unfold 3 {
         \repeat tremolo 3 <b g' b>8
      }
      \repeat tremolo 3 <b e g>8
   }
}

Which works fine and is extremely easy.
I'm assuming yours has a dotted crotchet, so I came up with this solution:

\relative c' {
      \repeat tremolo 6 <b g' b>8 \scaleDurations #'(2 . 3) { \repeat tremolo 3 <b e g>8 }
}   

Which is interesting, because the dotted crotchet isn't a triplet.

Radler

#6
Hm, hm, hm, ich fürchte, ich will etwas, was gar nicht geht: Die punktierte Halbe mit Tremolo-Balken, die derHindemith anzeigt, ist bei Triolen identisch zu einer (nicht-punktierten) Halben (also 2/4, die mit "\time 2/3 {\repeat tremolo 6 <c e g>}" korrekt dargestellt wird.
Und die von Ding-Dong vorgeschlagene doppelt-punktierte Halbe mit Tremolo-Balken stimmt auch nicht, weil der zweite Punkt die Note um ein Viertel der ursprünglichen, nicht-punktierten Note verlängert. Und das gibt bei Triolen Ding-Dongs 7/8, und das ist halt Wurschtelei.

Ich nehme also meinen Verdacht entschuldigend zurück, LilyPond rechne falsch. Aber vielleicht sollte eine Fehlermeldung generiert werden?

Hat jemand eine konventionelle Note, in der Triolen-Achtel sowohl in Länge 2/4 als auch in Länge 3/4 als Tremolo notiert sind? Wie unterscheiden die sich?

Vielen Dank für alle Unterstützung und noch einen schönen Abend
wünscht Radler

derHindemith

#7
ah, dass sieht eigentlich wie ein Bug. Ich werde nachfragen.

\version "2.11.65"

\relative c' {
   \scaleDurations #'(2 . 3) {
      \repeat tremolo 9 <c e g>8 \repeat tremolo 3 <c e fis>8
      \repeat unfold 4 { \repeat tremolo 3 <c d fis>8 }
   }
}
\relative c' {
   \scaleDurations #'(2 . 3) {
      \repeat unfold 9 <c e g>8 \repeat unfold 3 <c e fis>8
      \repeat unfold 4 { \repeat unfold 3 <c d fis>8 }
   }
}

etilli33

Ja, ich habe da auch gerade rumprobiert: da sollten ja wohl wirklich nur ein Strich sein und nicht zwei! Aber mit der Triole funktioniert es ehrlich gesagt auch gut: man kriegt dann eine Drei über dem Tremolo so dass klar ist, dass es sich um eine Triole handelt. Aber wie gesagt: ein Strich und nicht zwei über der Dreiviertelnote, so würde ich denken.

Till

derHindemith

Scheinbar acceptiert lilypond für tremolo nur Notendauer die nur mit Noten und Punkte schreibbar sind. 9/8 ist mit Noten und Punkte unschreibbar (es braucht eine bindebogen), so mit tremolo geht's nicht. Das einzige Weg das zu lösen das ich gefunden habe ist folgendes:

\relative c' {
   <b g' b>2.:16 \scaleDurations #'(2 . 3) { \repeat tremolo 3 <b es g>8
   \repeat unfold 4 { \repeat tremolo 3 <a d fis>8 } }
}


Man kann natürlich auch :8 benutzen für die andere Noten, aber dann muss jeder Notendauer eingetippt werden.

\relative c' {
   <b g' b>2.:16 <b es g>4.*2/3:8
   \repeat unfold 4 { <a d fis>4.*2/3:8 }
}

etilli33

Wieso, mit einer Triole *ist* es schreibbar. Das einzige Problem sind die *zwei* Schrägstriche, die LilyPond am Hals der punktierten Halben setzt: es sollte nur einer sein, denn es sollen ja Achtel und nicht Sechszehntel gespielt werden.

Till