Algoritmo di Karplus-Strong: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Tappoz (discussione | contributi)
m typo
Riga 39:
[[Julius O. Smith III]] ed altri hanno osservato che l'algoritmo di Karplus-Strong era analogo dal punto di vista fisico all'approccio a [[guida d'onda]] di un segnale. La [[retroazione]] rappresentava la perdita totale di un'[[onda]] (prodotta ad esempio da una corda) in un periodo. Grazie a questa intuizione è possibile modellare a onde acustiche perché l'algoritmo di Karplus-Strong è strutturalmente identico ai più semplici modelli a guida d'onda.
 
Alla luce di quanto argomentato la struttrastruttura del filtro comb può essere ridefinita per sintetizzare suoni di tipo armonico come quelli prodotti da una [[chitarra]]. Le modifiche che andranno fatte dovranno implementare un decadimento dipendente dalla frequenza delle singole armoniche. In altre parole il modulo delle armoniche dovrà decadere man mano che le frequenze aumentano in modo che le armoniche più basse durino di più di quelle più alte. Questo si ottiene inserendo in diretta (non in retroazione) un [[filtro passa basso]] <math>H_{lp}</math> creando un ''filtro comb passa-basso''. Intuitivamente ad ogni passaggio le componenti ad alta frequenza sono attenuate in maniera più marcata di quelle a bassa frequenza. Considerando un filtro [[FIR]] del primo ordine le formule diventeranno le seguenti:
[[Immagine:Comb_effect_spectrum.png|right|thumb|400px|Nei due grafici sulla destra si può notare un esempio di decadenza delle armoniche in base alla frequenza in conseguenza del passaggio del segnale (di solito un [[rumore bianco]]) attraverso un ''filtro comb passa-basso'']]
:<math>
Riga 57:
Il [[delay]] richiesto ''D'' per una frequenza fondamentale data ''F''<sub>1</sub> è calcolato in base alla formula ''D'' = ''F''<sub>''s''</sub>/''F''<sub>1</sub> dove ''F''<sub>''s''</sub> è la [[frequenza di campionamento]]. La lunghezza della delay line è un numero multiplo del [[periodo]] di campionamento. Per ottenere un ritardo (delay) frazionario si usano dei filtri di [[interpolazione]]. Possono essere usati sia filtri di tipo [[FIR]] sia di tipo [[IIR]]. Con i filtri FIR si ha il vantaggio che i transitori si concludono in un nemero finito di passi.
 
Mantenendo il periodo (= lunghezza della linea di ritardi) constante si ottiengonoottengono vibrazioni simili a quelle di una [[corda]] o una [[campana]]. Aumentando il periodo velocemente subito dopo il transitorio si producono suoni di tipo percussivo ([[tamburo|tamburi]]).
 
== Note ==
Riga 94:
* Dispense del corso di Informatica Musicale dell'[[Università di Padova]] del professor DePoli [http://www.dei.unipd.it/corsi/musica/ Sito web del corso] pubblicate sotto [[licenza]] [[Creative Commons]] ''Attribuition-NonCommercial-ShareAlike''
 
== LinkCollegamenti esterni ==
* [http://ccrma.stanford.edu/~jos/pasp/Karplus_Strong_Algorithm.html L'algoritmo di Karplus-Strong]
* [http://ccrma.stanford.edu/~jos/Mohonk05/Karplus_Strong_Algorithm.html Esempi sonori]