Il modello per la corda
Il modello di Karplus-Strong può essere preso come elemento
di partenza da cui derivare un modello di corda efficiente.
Ad ampliare il modello base della guida donda digitale per
la sintesi di strumenti a corde pizzicate sono state proposte
molte strutture e implementazioni, come ad esempio
lutilizzo di interpolatori di Lagrange per
unaccordatura più accurata della guida donda, e
realizzare glissandi (Karjalainen e Laine, 1991), tecniche
di filtraggio passatutto per simulare la dispersione causata
dalla rigidità della corda.
Dalla guida donda digitale al modello ad anello con singolo ritardo.
Il modello con guida donda digitale della corda proposto da Smith (Fig.5),
Fig.5
le due linee di ritardo possono essere interpretate come le soluzioni digitalizzate dellequazione donda in una dimensione senza perdite. I due filtri Rf(z) e Rb(z) scaturiscono delle terminazioni rigide della corda e producono uninversione di fase e un leggero smorzamento dipendente dalla frequenza. Nel modello di corda mostrato figura possono essere utilizzata come variabile donda velocità, accelerazione, posizione, pendenza o disposizione.Utilizzando laccelerazione come variabile donda, leccitazione ideale della corda corrisponde allimpulso unitario (Smith 1983).
Si può dimostrare che il modello "più fisico " della guida donda digitale può essere ricondotto ad un modello con anello di ritardo singolo "SDL" (Karjalainen 98) che risulta una forma estesa dellalgoritmo di Karplus-Strong.
Fig.6
Il passaggio dalla doppia linea di ritardo al modello SDL, nel caso lineare e tempo invariante (LTI) risulta computazionalmente più efficiente. Per giungere ad un modello per la chitarra acustica, consideriamo il modello con guida donda per la corda pizzicata, si osserva che luscita del segnale è prelevata al ponte ovvero da una terminazione della corda. Sotto lipotesi che il sistema sia lineare e tempo invariante, rispettando il teorema del campionamento, è possibile passare alla rappresentazione dei vari blocchi funzionali nel dominio della trasformata Z.
Fig.7
Leccitazione equivalente al punto E1
.
Il segnale duscita è la forza risultante al ponte, può essere espressa come
rappresentando con HE(z) la funzione di trasferimento equivalente della eccitazione.
leccitazione equivalente al punto E1
XE1,eq=HE(z)X(z)
Il segnale duscita è la forza traversa al ponte F(z)
F(z)=F+(z)+F-(z)=Z(z)[V+(z)-V-(z)]=
=Z(z)[A1(z)-A2(z)]I(z)
dove + o indicano la direzione di propagazione, Z(z) limpedenza al ponte, V± (z) le componenti della velocità della corda al ponte, I(z) rappresenta un integratore ideale.
Indicando con HB(z) la funzione di trasferimento da accelerazione a velocità al ponte
F(z)=Z(z)[A1(z)-A2(z)]I(z)=Z(z)[A1(z)-Rb(z)A1(z)]I(z)=
=Z(z)[1-Rb(z)I(z)]A1(z)=HB(z)A1(z)
Per il segnale accelerazione A1(z) vale la relazione
A1(z)=HE1,R1(z)XE1,eq(z)+HLoop(z)A1
Dove HLoop indica la funzione di trasferimento ad anello aperto della corda.
HLoop(z)=Rb(z)HR2,E2(z)HE2,E1(z)HE1,R1(z)
definendo S(z) la funzione di trasferimento della corda .
A1(z)=HE1,R1(z)S(z)XE1,eq(z)
F(z)=HE,B(z)X(z)
la funzione di trasferimento dalleccitazione al ponte
HE,B(z)=HE(z)HE1,R1(z)S(z)HB(z)
Il sistema complessivo HE,B(z) può essere schematizzato come composto da quattro elementi.
Fig.8
HE(z) include il filtraggio dovuto alla posizione fisica delleccitazione, e vale
HE1,R1(z) propagazione dellonda dalleccitazione al ponte, S(z) funzione di trasferimento della corda, HB(z) filtraggio dovuto allaccoppiamento del ponte.
Una semplificazione del modello precedente può
essere ottenuta considerando che:
In HE(z), la funzione di
trasferimento HE2,E1(z) è
composta da una linea di ritardo e da un filtro Rf(z),
preservando la qualità della sintesi, è possibile cumulare il
filtro passa basso nel filtraggio delleccitazione, inoltre
la funzione di trasferimento da E1 a R1, composta
da puro ritardo posto in serie ad un passa basso, può essere
eliminata senza influenzare la sintesi. Infine, il termine [1-Rb(z)]
presente in HB(z) può essere
semplificato con la costante 2, dato che Rb(z)@ -1.
Per compensare le semplificazioni introdotte, si può fare
ricorso ad unequalizzazione sul segnale dingresso. In
figura è mostrato il modello semplificato.
Fig.9
Il controllo sulla posizione delleccitazione è un filtro a pettine (comb filter), e il ritardo che lo caratterizza, corrisponde al tempo che leccitazione impiega a percorrere da E2 a E1. Lintegratore al ponte può essere approssimato da un filtro passa basso del primo ordine, con una frequenza di taglio più bassa della fondamentale da sintetizzare. La funzione di trasferimento della corda S(z), non può essere semplificato, in quanto incide pesantemente sulla qualità della sintesi, essa può essere espressa come:
dove L1 è la parte intera della lunghezza della corda,
H(z) è chiamato loop filter, e F(z)
è un filtro di ritardo frazionato, utilizzato per raffinare
laccordatura della corda.
I parametri che determinano la f.d.t. S(z), sono L1
lunghezza della linea di ritardo, g e a, che sono
rispettivamente guadagno e parametro di cutoff del loop
filter.
Filtri a guida donda con ritardo frazionato
Teoricamente nei circuiti a tempo discreto, il ritardo unitario frazionato indica un elemento che ripropone in uscita ciò che aveva allingresso, dopo un ritardo pari a un multiplo non intero del intervallo di campionamento.
Dato che nella realizzazione pratica di algoritmi è sconveniente o impossibile realizzare un frazionamento dellintervallo di campionamento; si può ricorrere alluso di interpolatori, che offrono una stima del ritardo non intero.
Per estendere il modello a guida donda della corda si può utilizzare un interpolatore polinomiale, tale circuito in funzione di un parametro accessibile dal esterno, si comporta da elemento di ritardo non intero; realizza una stima del valore dingresso ritardato di un intervallo di tempo arbitrario, sulla base dei valori presenti e passati allingresso.
Fig.10
La stima essendo affetta da incertezza, introduce
un degrado sul segnale che attraversa il ritardo frazionato. Si
può dimostrare che lerrore introdotto dalla stima decresce
allaumentare del ordine dellinterpolatore, per contro
la complessità circuitale e il costo computazionale tendono ad
aumentare.
Un buon compromesso utilizzato nella realizzazione del circuito,
è offerto da interpolatore del secondo ordine, riportato in
figura 11.
Il ritardo tra ingresso e uscita può essere continuamente
modificato agendo sul parametro t, secondo la funzione
si può facilmente verificare che
Fig.11
Nel modello di chitarra acustica realizzato, il ritardo frazionato è utilizzato come estensione delle linee di ritardo delle due polarizzazioni, oltre a permettere unintonazione accurata della corda, offre la possibilità di agire in ogni istante sulla nota prodotta. Ad esempio, il tiraggio "bending" della corda può essere implementato semplicemente facendo assumere a t un valore crescente nel tempo.
Fig.12
La struttura definitiva di linea di ritardo
utilizzata è quella riportata in figura; in essa
linterpolatore è "fuso" con la linea di ritardo,
così che reso privo di elementi di memoria, può essere
spostato, indipendentemente dal tempo, lungo la linea di ritardo.
Nel contesto della sintesi di modelli, per le non linearità
dipendenti dal segnale, il ritardo frazionato è stato proposto
per la realizzazione di filtri non lineari (Valimaki, Tolonen e
Karjalainen Icmc 1998).
Fig.13
Il modello utilizzato per una singola corda è riportato in figura, ogni polarizzazione è composta da una linea di ritardo frazionata e dal rispettivo filtro, lingresso dopo la moltiplicazione per costante gainin, passa allingresso del filtro a pettine P(z), con il quale è possibile variare la posizione "fisica" delleccitazione. Variando il parametro mp è possibile ripartire il segnale dingresso sulle le due polarizzazioni, allo stesso modo il parametro mo ne determina il contributo a formare il segnale duscita.
Lintegratore per luscita al ponte I(z), può essere ben approssimato da un filtro passa basso del primo ordine con una frequenza di taglio più bassa alla fondamentale che deve essere sintetizzata.
Riguardo laccoppiamento, gc lo stabilisce tra le due polarizzazioni della stessa corda, e i parametri g1i, g2i, g3i, g4i e g5i, moltiplicando i segnali provenienti dalle restanti corde, lo realizza con le altre corde.