(* legge i dati dal file di testo *)
dati=ReadList["/home/pi/Desktop/ATD/FFT e segnali/Esperimento Rumore/1.txt",Number];
dati//Short

(* inserisce i dati in una Tabella di 1000 righe e 2 colonne *)
M=Table[{dati[[i]], dati[[i+1]]}, {i,1,1999,2}];

(* crea una lista di dati y con la seconda colonna della tabella *)
y=M[[All,2]];

(* Disegna il grafico di y *)
ListPlot[y]

(* Calcola la trasformata di Fourier di y e la inserisce nella variabile di nome "trasformata" *)
trasformata=Fourier[y];

(* Grafico della trasformata di Fourier di y *)
ListPlot[Abs[N[trasformata]],PlotJoined->True,PlotRange->{{0,60},{0,1}}]

(* Calcola la trasformata inversa per verificare che il risultato rappresenti ancora y *)
inverso=InverseFourier[trasformata];

(* Grafico dell'antitrasformata *)
ListPlot[Re[inverso]]

(* eliminazione dei termini con ampiezza della trasformata maggiore di 0.2 *)
For[i=1, i < 1000, i++, If[Abs[N[trasformata[[i]]]]>0.2,trasformata[[i]]=0 ,   ]];

(* Grafico della trasformata di Fourier senza il picco del segnale principale *)
ListPlot[Abs[N[trasformata]],PlotJoined->True,PlotRange->{{0,60},{0,1}}]

(* Calcola la trasformata inversa senza il picco *)
inverso2=InverseFourier[trasformata];

(* Grafico della trasformata inversa senza il picco (solo rumore) *)
ListPlot[Re[inverso2]]

(* esporta in un file "Rumore_1.dat" il contenuto della lista "inverso2". E' importante usare l'estensione ".dat" per il file per ottenere solo una lista di numeri *)
Export["/home/pi/Desktop/ATD/FFT e segnali/Esperimento Rumore/Rumore_1.dat", Re[inverso2]]