HamCodeItaliano

API › Correlazione

Convoluzione class

This reference is written in Italian: it comes from the comments of the source code, which are in Italian like the code of the books.

public static class Convoluzione

Methods

static double[] Diretta(double[] x, double[] h)

La convoluzione lineare dalla definizione: lunga x + h - 1 campioni, x.Length·h.Length prodotti.

static double[] CorrelazioneDiretta(double[] x, double[] h)

La correlazione dalla definizione, per i ritardi da 0 a x.Length - h.Length: quanto somiglia h al pezzo di x che parte da ciascun ritardo.

static double[] ConFft(double[] x, double[] h)

La stessa convoluzione con la FFT: si allungano x e h con zeri fino a una potenza di 2 che contenga tutto il risultato, si moltiplicano gli spettri, si torna indietro con l'inversa.

static double[] Circolare(double[] x, double[] h, int n)

La convoluzione circolare: la FFT senza allungare con zeri. La coda del risultato rientra dall'inizio: e' cio' che la FFT calcola davvero, e il motivo degli zeri in ConFft.

static double[] CorrelazioneConFft(double[] x, double[] h)

La correlazione con la FFT: lo spettro di x per il coniugato di quello di h. Restituisce gli stessi ritardi di CorrelazioneDiretta.