Sistemi multipli

Indice generale

  1. Parte 1a: Gestione dello spartito
    1. Lezione 1 - Scrivere le note
    2. Lezione 2 - Uso delle variabili
  1. Parte 2a: Stile e output
    1. Lezione 3 - Make up della partitura
    2. Lezione 4 - Trasposizione & output
  1. Parte 3a: Gestione della partitura
    1. Lezione 5 - Sistemi multipli
    2. Lezione 6 - Estrazione delle parti
  1. Appendice: Script di riferimento
    1. Schema 20: Trasposizione & output
    2. Schema 26: Sistemi multipli
    3. Schema 33: estrazione delle parti

Lezione 5

Riproduzione grafica della chiave di Fa

Questo primo approfondimento ci guiderà nella definizione di una partitura basata su di un sistema a due pentagrammi.
Per fare ciò, abbiamo scritto un piccolo contrappunto che faremo eseguire a un violoncello, il quale dialogherà con la melodia già esistente e affidata al violino; la struttura melodica non è bella quanto avremmo voluto, risulterà però funzionale in relazione al lavoro che stiamo svolgendo.

Giocheremo – se così si può dire – a “Completa il codice”; questo ci darà modo di verificare le competenze acquisite nel poco tempo avuto a nostra disposizione.

Definiamo, in primo luogo, una variabile che chiameremo voicetwoa, lasciandoci istruire dai commenti presenti nello schema; posizioniamo la nuova variabile in coda alla lista delle variabili e, all’interno di essa, immettiamo la melodia seguente:

Schema 21: pattern 2

%pattern2
%nome variabile
.........
%misure 1 - 2; 5 - 6; 13 - 14
c4( b a g8 f) | e8( f g4) r8 g,( a b) |
%Chiusura variabile: livello 1
.........

Di seguito, creiamo una variabile simile chiamata <voicetwob>, corredandone la struttura con i commenti appropriati, scrivendo al suo interno la musica seguente:

Schema 22: pattern3

.........
.........
.........
%misura 9; 10; 11
g8 b'( a g) c( e, a, d) |
.........
.........

Definiamo nello stesso modo una terza variabile, che chiameremo <voicetwo>, la quale conterrà la struttura melodica per la seconda voce, e completiamone il codice seguendo le indicazioni fornite dai commenti riportati nello schema sottostante:

Schema 23: Seconda voce

%struttura  melodica per la seconda voce
%Nome variabile
.........
	%Definizione dell'altezza per il do relativo
	.........
	%misure 1 - 2: chiamata alla variabile voicetwoa
	.........
	%misure 3 - 4
	c4( a' f d) | g,4 g'8(fis) g( a b g) |
	%forzatura di a capo
	.........
	%misure 5 - 6: chiamata alla variabile voicetwoa
	.........
	%misure 7 - 8
	c4( a f d) | g8( b a g) c( e d c) |
	%forzatura di a capo
	.........
	%misure 9 - 11: chiamata alla variabile voicetwob
	........
	%Ridefinizione dell'altezza per il do relativo
	\relative c
	%Chiamata alla variabile voicetwob
	.........
	%Ridefinizione dell'altezza per il Do relativo
	.........
	%Chiamata alla variabile voicetwob
	.........
	%misura 12
	g8( fis e fis) g, b'( a g) |
	%forzatura di a capo
	.........
	%misure 13 - 14: chiamata alla variabile voicetwoa
	.........
	%misure 15 - 16
	c4( a f d) | g8( b a g) c4 r |
	%doppia barra di chiusura
	.........
	%Chiusura notazione: livello 2
	.........
%Chiusura variabile: livello 1
.........

Nota: la stringa <is>, posta dopo l’espressione dell’altezza – nel nostro caso <f> che corrisponde al Fa – rappresenta l’alterazione del diesis; per rendere una nota con l’alterazione del bemolle, andrà utilizzata, dopo di essa, la stringa <es>: <bes> per indicare il Si bemolle.

Osservazione: LilyPond è strutturalmente rigido per quanto riguarda l’ordine degli elementi che costituiscono gli attributi di un suono: il primo carattere definisce sempre la nota; seguono le eventuali alterazioni, la direzione – se necessaria – ascendente o discendente, il valore – se necessario – e le legatture di frase.

A proposito delle alterazioni, esse vanno sempre indicate, indipendentemente dall’armatura di chiave: nella tonalità di Re maggiore, il Fa diesis e il Do diesis andranno perciò sempre scritti <fis> e <cis>.

Chiariamo, allo scopo di fornire un ulteriore elemento di conoscenza, che la nomenclatura utilizzata per esprimere le altezze è quella olandese, rappresentata dalle lettere minuscole dalla <a> = La alla <g> = Sol, <r> = pausa; esiste un’istruzione – scomoda dal nostro punto di vista – che ammette forme di input in diverse lingue fra le quali l’italiano.
Per esprimere i valori delle altezze in italiano, si utilizzerà questo comando nella forma seguente:

\language ="italiano"
Le altezze andranno riportate scrivendo quali argomenti i nomi delle note in italiano: <do>, <re>, <mi> ecc.

Le alterazioni andranno indicate nel modo seguente:
<sold> per Sol diesis e <solb> per Sol bemolle.

Creiamo ora - come per la prima voce - le variabili <parttwoc> e <parttwod>, tenendo presente che le chiavi di lettura per il violoncello potranno essere di tenore o di basso: noi, per il nostro esempio, faremo riferimento alla chiave di basso.

Schema 24: Determinare la chiave

%nome variabile
.........
%Definizione della chiave di Fa
\clef bass
%Armatura di chiave = Do maggiore
.........
%Chiamata alla variabile voicetwo
.........
%Chiusura variabile: livello 1
.........
%Trasposizione
%Nome variabile
........
%Definizione della chiave di FA
.........
%Armatura di chiave = Re maggiore
.........
%Chiamata e incremento di un tono della variabile voicetwo
.........
%Chiusura variabile: livello 1
.........

Ora, a livello della score, definiamo un nuovo Staff posizionandolo sotto quello già esistente, etichettiamolo con la stringa <Cl> e definiamo l'istruzione dedicata allo strumento midi in modo che - a livello del midi output - setti lo strumento <cello>; richiamiamo le variabili <global> e <parttwod>.

Schema 25: Layout e output

%Definizione del sistema dei pentagrammi
\score {
%Graffa di unione dei pentagrammi
\new StaffGroup <<
%Definizione di un nuovo violino Staff
\new Staff <<
%Etichetta del rigo
\set Staff.instrumentName = "Vl"
%strumento midi
\set Staff.midiInstrument = "violin"
%Chiamata alle variabili global e partoned
\global
\partoned
>>
%Definizione di un nuovo violoncello Staff
.........
%Etichetta del rigo
.........
%strumento midi
.........
%Chiamata alle variabili global e parttwod
.........
.........
.........
>>
	%Definizione del layout
	\layout{
		\context {
		\Score
		proportionalNotationDuration = #(ly:make-moment 1 8)
		%Chiusura context: livello 3
		.........
	%Chiusura layout: livello 2
	.........
	%Definizione del midi output
	\midi {
	%Chiusura midi output: livello 2
	.........
%Chiusura score: livello 1
.........

Prima di passare al ritiro del premio per il lavoro svolto, chiudiamo un argomento lasciato in sospeso.
Inseriamo, quale ultima istruzione delle variabili contenenti le strutture melodiche <voiceone> e <voicetwo>, un contatore di misure che ci aiuterà segnalandoci, - nel log di compilazione, - eventuali incongruenze nel computo delle misure immesse.

Nel nostro caso, le misure sono 16 e l'istruzione da utilizzare sarà la seguente:

\barNumberCheck 17

Nota: il computo viene sempre eseguito sulle misure effettivamente immesse, più la successiva misura vuota, potenzialmente in attesa di un input.

Se il calcolo è corretto, la finestra di log non darà informazioni; al contrario, se i conti non dovessero tornare, invierà un report di errore.

A questo punto, dovremmo essere in grado di compilare il nostro file, guardarne la realizzazione grafica e ascoltarne il contenuto.: Bravi!

Rimandiamo al sorgente completo dello script per il confronto con il codice, del quale anticipiamo qui sotto il risultato grafico.

Riproduzione grafica della musica generata dallo schema 26

L'immagine utilizzata in questa pagina proviene dalle bacheche tematiche di Pinterest.

<Argomento precedente Argomento successivo>

Tavola dei contenuti

  1. Pattern 2 Schema 21
  2. Pattern 3 Schema 22
  3. Seconda voce Schema 23
  4. Determinare la chiave Schema 24
  5. Layout e output Schema 25

Riferimenti