Lezione 5 Operazioni musicali nel sistema di rappresentazione binomiale Programmazione per la Musica | Prof. Luca A. Ludovico Coppie <pc,nc> ammissibili Sulle colonne sono disposte le note con lo stesso nome e diverso stato di alterazione (sempre 5), sulle righe le enarmonie (sempre 3, ad eccezione di G#/Ab). Quante sono le possibili combinazioni? Teoricamente 12 ∙ 7 = 84, ossia tutte le celle nella tabella a fianco In pratica, considerando al più le doppie alterazioni, 7 ∙ 5 = 35. Fino ad alterazioni quintuple non ci sarebbe ambiguità (vedi colonna C). pc 0 nc 0 1 2 3 4 5 6 C D√ B B⋲ 1 C D¯ 2 C⋲ D 3 C⋲# D E¯ F√ 4 C⋲⋲ D⋲ E F¯ 5 C⋲⋲# 6 ? 7 C√√¯ 8 C√√ G A¯ 9 C√¯ G⋲ A 10 C√ A B¯ 11 C¯ A⋲ B Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali E√ E E⋲ F G√ F G¯ F⋲ G A√ B√ Rappresentazione binomiale degli intervalli nc specifica l’ampiezza dell’intervallo generico, e pc la dimensione in semitoni. Sulle colonne si trovano intervalli la cui dimensione generica è uguale (ad es., le terze, le quarte, ecc.) mentre sulle righe si trovano gli intervalli omofoni. Il sistema non è ambiguo fino agli intervalli quintuplamente eccedenti (5A) o diminuiti (5d). 0 1 2 0 P1 d2 (3d)3 1 A1 m2 (2d)3 2 (2A)1 M2 d3 3 (3A)1 A2 m3 4 (4A)1 (2A)2 M3 d4 5 (5A)1 (3A)2 A3 P4 pc 6 nc ? (4A)2 (2A)3 3 4 5 6 A7 A4 d5 7 (5d)1 (5A)2 (3A)3 P5 d6 8 (4d)1 (5d)2 (4A)3 A5 m6 9 (3d)1 (4d)2 (5A)3 M6 d7 10 (2d)1 (3d)2 (5d)3 A6 m7 11 d1 (2d)2 (4d)3 M7 Legenda: …, d = diminuito (diminished), m = minore (minor), P = giusto (perfect), M = maggiore (major), A = eccedente (augmented), … Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Un’osservazione • Nelle lezioni precedenti abbiamo visto operazioni aritmetiche che coinvolgono contemporaneamente rappresentazioni binomiali di altezze e di intervalli. – Ad esempio, il calcolo dell’intervallo determinato da due note si effettua attraverso una differenza di <pc,nc> relativi ad altezze, e il risultato è una coppia <pc,nc> relativa ad un intervallo. • Questo mescolamento di entità musicali differenti è giustificato dal fatto che le altezze stesse, viste nel sistema binomiale, possano essere viste anche come intervalli rispetto a un riferimento <0,0> assegnato convenzionalmente al Do naturale. • Ad esempio, <2,1> è la rappresentazione binomiale tanto dell’altezza della nota Re naturale quanto dell’intervallo di 2a magg. che permette di passare dal Do naturale al Re naturale. Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Operatori musicali: trasposizione • Tutte le operazioni viste nei sistemi pc e nc sono possibili anche in rappresentazione binomiale: vengono eseguite separatamente sulle componenti pc in modulo 12 e nc in modulo 7. • La trasposizione corrisponde all’addizione. Trasporre una nota <a,b> di un intervallo <c,d> significa: <a,b> + <c,d> = <(a + c) mod 12, (b + d) mod 7> • Esempio: trasporre D (Re naturale) di una terza maggiore <2,1> + <4,2> = <6,3> D + M3 = F# • La trasposizione può avvenire in senso discendente. Trasporre di una terza maggiore discendente implica sommare <-4,-2> Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Proprietà della trasposizione nel sistema binomiale • Sia U l’insieme universo costituito dalle 84 classi di altezze binomiali, ottenibili come combinazione dei 7 valori ammessi per nc e dei 12 valori ammessi per pc. Siano A, B e C tre binomi qualsiasi U. • • • • • (A + B) U A+B=B+A la somma è commutativa (A + B) + C = A + (B + C) la somma è associativa <0,0> è l’elemento neutro per l’addizione, in quanto A + <0,0> = A Per ogni A esiste un inverso A’ tale che A’ + A = <0,0> L’inversione di <a,b> è <a,b>’ = <0,0> – <a,b> = <(– a) mod 12, (– b) mod 7> e poiché <0,0> = <12,7> allora <a,b>’ = <(12 – a) mod 12, (7 – b) mod 7> Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Operatori musicali: calcolo dell’intervallo • Per determinare l’intervallo tra due note, si sottrae la prima nota dalla seconda. Tale calcolo corrisponde all’operazione di sottrazione. • Calcolare l’intervallo tra le note <c,d> e <a,b> significa: <a,b> – <c,d> = <(a – c) mod 12, (b – d) mod 7> • Esempio: l’intervallo tra Eb (Mi bemolle) e A (La naturale) è <9,5> – <3,2> = <6,3> A - Eb = A4 [quarta eccedente] • Invertendo gli estremi dell’intervallo: <3,2> – <9,5> = <6,4> Eb – A = d5 [quinta diminuita] Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Operatori musicali: inversione dell’intervallo • Come specificato sopra, l’inversione di un generico intervallo <a,b> è <a,b>’ = <12,7> – <a,b> = <(12 – a) mod 12, (7 – b) mod 7> • Attenzione: apparentemente l’operazione è simile al calcolo di un intervallo, in quanto implica la differenza tra due binomi. In questo caso però la rappresentazione binomiale codifica intervalli e non altezze delle note. • Esempio: l’inversione di una quarta giusta è <12,7> – <5,3> = <7,4> P4 [4a giusta] P5 [5a giusta] Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Operatori musicali: inversione melodica • L’inversione melodica di una sequenza è la sottrazione di ciascuna nota della sequenza da una costante binomiale • Esempio: inversione melodica rispetto alla costante <4,2> Si osservi che pc e nc della costante binomiale divisi per 2 rappresentano l’altezza della nota (se esiste) rispetto cui avviene l’inversione. – Nell’esempio, si tratta proprio della prima nota della sequenza. D E <2,1> <4,2> <4,2> - F A C <6,3> <9,5> <0,0> <4,2> - <4,2> - <4,2> - <4,2> - <2,1> = <4,2> = <6,3> = <9,5> = <0,0> = <2,1> <0,0> <10,6> <7,4> <4,2> D C B¯ G E Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali Operatori musicali: prodotto • Si definisca ora l’operatore × nel seguente modo: <a,b> × <c,d> = <(a × c) mod 12, (b × d) mod 7> • • • • • (A x B) U A×B=B×A il prodotto è commutativo (A × B) × C = A × (B × C) il prodotto è associativo <1,1> è l’elemento neutro per il prodotto, in quanto A × <1,1> = A La moltiplicazione è distributiva rispetto alla somma: A × (B + C) = (A × B) + (A × C) (A + B) × C = (A × C) + (B × C) • Le proprietà qui elencate, più le proprietà della somma, sono sufficienti per dimostrare che si tratta di un anello commutativo con identità. Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali ESEMPI CbrStats.java Il software legge in ingresso una sequenza di valori numerici interi codificati come Continuous Binomial Representation, e calcola: • la frequenza (espressa in Hz) del pitch più acuto • la frequenza (espressa in Hz) del pitch più grave • la frequenza media dei pitch. Osservazione: ci si sta concentrando sull’aspetto acustico delle note (le frequenze in Hertz) Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali ESERCIZIO Si scriva un programma che richieda in ingresso una sequenza di pitch, espressi come cbr, e produca in uscita (in formato cbr) una trasposizione diatonica, ossia di un certo numero di gradi della scala • • • es.: T-7(C#3, A5, B4, G#6) cbr: 3010, 5095, 4116, 6084 = → C#2, A4, B3, G#5 es.: T1(C#3, A5, B4, G#6) cbr: 3010, 5095, 4116, 6084 = → D#3, B5, C5, A#6 es.: T2(C#3, A5, B4, G#6) cbr: 3010, 5095, 4116, 6084 = → E#3, C6, D5, B#6 Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali 2010, 4095, 3116, 5084 3031, 5116, 5000, 6105 3052, 6000, 5021, 6006 ESERCIZIO Si scriva un programma che richieda in ingresso una sequenza di pitch, espressi come cbr, e produca in uscita (in formato cbr) una tra le possibili scritture enarmoniche di ciascuna nota, limitandosi al più alle alterazioni doppie. Osservazione: in input sono ammesse scritture che vanno oltre le alterazioni doppie! Ad esempio E(C#3, A5, B4, G#6) = D¯3, B¯¯5, C¯5, A¯6 oppure E(C#3, A5, B4, G#6) = B⋲2, G⋲5, A⋲4, A¯6 Programmazione per la Musica - Prof. Luca A. Ludovico 5. Rappresentazione binomiale: operazioni musicali