Trasformata di Fourier

Massimo Fantin

Marzo 2001

Home

Programma di simulazione

Uso del programma di simulazione ed esempi

Non è il caso di fare una trattazione teorica della trasformate di Fourier che può essere trovata altrove , mi limito unicamente a illustrare brevemente l'uso di questa simulazione.

 

E' possibile calcolare la trasformata di Fourier di funzioni di variabile complessa costituite da due funzioni di una unica variabile reale x. Che devono essere scritte in alto utilizzando la stessa notazione del programma funzioni.

E' possibile introdurre due funzioni distinte per poter rappresentare la loro convoluzione ( prodotto delle loro trasformate e antitrasformata)
o per poter usare la seconda come filtro per la prima ( moltiplicare la trasformata della prima per la seconda e antitrasformare ).

Introdotte le funzioni sono visualizzabili in rosso ( la parte reale) e rosa ( la parte immaginaria) premendo il tasto
f Re In

mentre la trasformata è visualizzabile in Blu ( parte reale) e azzurro ( parte immaginaria) mediante i tasti T re e
T Im, inoltre è possibile scrivere i termini dello sviluppo della trasformata mediante il tasto sviluppo. Che può essere alzato o abbassato coni tasti su giu

I tasti n+ ed n- modificano il numero dei punti rispetto ai quali viene calcolata la trasformata, n è una potenza di 2 che vale al massimo 1024. Maggiore è il numero dei punti maggiore è l'accuratezza ma è anche maggiore il tempo di calcolo.

I tasti T+ e T- modificano il periodo che va da un minimo di 2p ad un massimo che dipende dal numero di punti scelto. Al di fuori dell'intervallo del periodo la funzione è considerata nulla. Teoricamente la trasformata andrebbe calcolata eseguendo un integrale su R in pratica le cose vanno bene lo stesso se si considerano funzioni che da un certo punto un poi sono praticamente zero .

I tasti Z sono per lo zoom

Il tasto parametro svolge lo stesso ruolo che ha nel programma funzioni e permette di modificare il parametro k , se questo è stato introdotto nella definizione delle funzioni.

Per calcolare la convoluzione di due funzioni, esse vanno scritte posizionando la finestra in alto a sinistra in funzione 1 e funzione 2 mentre la convoluzione e la rispettiva trasformata possono essere osservate posizionando la stessa finestra nella posizione convoluzione.

Uno degli scopi della convoluzione T-1( fXg)=T -1(2p .T(f).T(g) ) è quello di addolcire le irregolarità di una funzione discontinua . Per far questo è necessario convolare la funzione irregolare con una funzione a campana indefinitamente derivabile a integrale unitario: la funzione degli errori di Gauss e utilizzare il parametro k per far variare lo scarto quadratico medio, in questo modo si osserverà che più k è piccolo più la convoluzione assomiglia alla funzione di partenza mentre de k aumenta le irregolarità si arrotondano.

Esempi

Scriviamo per funzione 1 ax<1 che rappresenta una funzione a scalino

Scriviamo per funzione 2 1/k/r(2*p)*e(0-0.5*(x/k)^2) e attiviamo il tasto parametro, variando il valore del parametro k trascinando il tastino nero osserviamo la forma che assume la curva degli errori al variare del parametro.

Attiviamo convoluzione e osserviamo come viene variata la forma del gradino al variare del parametro k ovvero dello scarto quadratico medio della funzione degli errori.

 

 L'opzione filtro esegue il prodotto tra la trasformata di funzione 1 e funzione 2 ed esegue la antitrasformata, può essere usata per filtrare le frequenze più alte scrivendo in funzione 2 ax<k e variando k con il tastino del parametro si osservano le ridotte della funzione posizionata in funzione 1 dove per esempio si può aver scritto x.

Se invece vogliamo che il filtraggio avvenga in modo più regolare possiamo usare come funzione 2 la campana gaussiana a valore centrale unitario e(0-(x/k)^2), variando k si osserva che le ridotte così ottenute non contengono vibrazioni di frequenza alta, il grafico della funzione filtrata differisce da quello della funzione originale sole in prossimità della discontinuità.

Un altro impiego dell'opzione filtro consiste nell'eseguire la derivata di una funzione data; si scrive tale funzione in funzione 1 mentre in funzione 2 si digita 0 nella parte reale e (x*n/T) nella parte immaginaria dove n rappresenta il numero dei punti e T il periodo, per esempio x*128/6.28 se in alto risulta scritto n=128 e periodo da -3.14 a 3.14 . In modo analogo si possono calcolare le derivate successive e le primitive basta ricordare che la trasformata della derivata è uguale a ix per la trasformata della funzione

T(f ')=ix T(f) e in generale T( f (n) ) = (ix)n T( f )

Per la derivata seconda si dovrò scrivere in funzione 2 reale -(x*128/6.28)^2 e 0 nella parte immaginaria, naturalmente se vogliamo migliorate la nitidezza del grafico è meglio usare un numero di punti più alto per esempio 1024 e di conseguenza modificare anche la funzione 2.

In questo modo è possibile anche generalizzare il concetto di derivata ennesima con n non necessariamente intero digitando in funzione 2 in re (x*n/T)^k*c(p/2*k) mentre in Im (x*n/T)^k*s(p/2*k)