# Teorema del campionamento di Nyquist-Shannon

In elettronica e telecomunicazioni, il teorema del campionamento di Nyquist-Shannon o semplicemente teorema del campionamento, il cui nome si deve a Harry Nyquist e Claude Shannon, è un risultato di notevole rilevanza nell'ambito della teoria dei segnali.
Definisce la minima frequenza, detta frequenza di Nyquist (o anche cadenza di Nyquist), necessaria per campionare un segnale analogico senza perdere informazioni, e per poter quindi ricostruire il segnale analogico tempo continuo originario. In particolare, il teorema afferma che, data una funzione la cui trasformata di Fourier sia nulla al di fuori di un certo intervallo di frequenze (ovvero un segnale a banda limitata), nella sua conversione analogico-digitale la minima frequenza di campionamento necessaria per evitare aliasing e perdita di informazione nella ricostruzione del segnale analogico originario (ovvero nella riconversione digitale-analogica) deve essere maggiore del doppio della sua frequenza massima.
Il teorema, comparso per la prima volta nel 1949 in un articolo di C. E. Shannon, dovrebbe chiamarsi Whittaker-Nyquist-Kotelnikov-Shannon (WNKS), secondo l'ordine cronologico di chi ne dimostrò versioni via via più generalizzate.

## Il teorema

Il campionamento è il primo passo del processo di conversione analogico-digitale di un segnale. Consiste nel prelievo di campioni (samples) da un segnale analogico e continuo nel tempo ogni $\Delta t\,\!$ secondi. Il valore $\Delta t$ è detto intervallo di campionamento, mentre $f_{s}={\frac {1}{\Delta t}}$ è la frequenza di campionamento. Il risultato è un segnale analogico in tempo discreto, che viene in seguito quantizzato, codificato e reso accessibile a qualsiasi elaboratore digitale.
Il teorema di Nyquist-Shannon (o teorema del campionamento dei segnali) stabilisce che, dato un segnale analogico $s(t)$ la cui banda di frequenze sia limitata dalla frequenza $f_{M}$, e dato $n\in \mathbb {Z}$, il segnale $s(t)$ può essere univocamente ricostruito a partire dai suoi campioni $s(n\Delta t)$ presi a frequenza $f_{s}={\frac {1}{\Delta t}}$ se $f_{s}>2f_{M}$ mediante la seguente formula:
    $s(t)=\sum _{k=-\infty }^{+\infty }s(k\Delta t)\operatorname {sinc} \left({\frac {t}{\Delta t}}-k\right)\;\forall t\in \mathbb {R}$
espressa in termini della funzione sinc normalizzata.

## Dimostrazione

L'idea è che lo spettro di un segnale campionato è uguale allo spettro del segnale originale ripetuto periodicamente con periodo uguale alla frequenza di campionamento $f_{s}$. Se la frequenza massima del segnale originale supera $f_{s}/2$ le ripetizioni nello spettro del segnale campionato si sovrappongono, rendendo impossibile l'esatta ricostruzione del segnale originale, che risulterà distorta.
Sia $F(\omega )$ la trasformata di Fourier di $f(t)$. Poiché $f(t)$ ha come limite di banda $f_{M}$, risulta $F(\omega )=0$ per $|\omega |>2\pi f_{M}$. Sia $W=f_{s}/2$, allora per ipotesi se $W\geq f_{M}$ si ha che $F(\omega )=0$ per ogni $|\omega |>2\pi W$. Sia $Q(\omega )$ la funzione periodica di periodo $4\pi W$ che coincide con $F(\omega )$ nell'intervallo $[-2\pi W,2\pi W]$. Il suo sviluppo in serie di Fourier è dato da:
    $Q(\omega )=\sum _{n=-\infty }^{+\infty }c_{n}e^{j{\frac {n}{2W}}\omega }$
dove:
    $c_{n}={\frac {1}{4\pi W}}\int _{-2\pi W}^{2\pi W}Q(\omega )e^{-j{\frac {n}{2W}}\omega }d\omega$
Poiché $Q(\omega )=F(\omega )$ in $[-2\pi W,2\pi W]$ si può porre:
    $c_{n}={\frac {1}{4\pi W}}\int _{-2\pi W}^{2\pi W}F(\omega )e^{-j{\frac {n}{2W}}\omega }d\omega$
Dato che $f(t)$ è l'antitrasformata di Fourier di $F(\omega )$, cioè:
    $f(t)={\frac {1}{2\pi }}\int _{-\infty }^{+\infty }F(\omega )e^{j\omega t}d\omega ={\frac {1}{2\pi }}\int _{-2\pi W}^{2\pi W}F(\omega )e^{j\omega t}d\omega$
dalle precedenti due relazioni si ottiene:
    $c_{n}={\frac {1}{2W}}f\left(-{\frac {n}{2W}}\right)=\Delta tf(-n\Delta t)\qquad W={\frac {f_{s}}{2}}={\frac {1}{2\Delta t}}\,\!$
Definendo:
    $rett_{W}(\omega )=\left\{{\begin{matrix}1\ &{\textrm {se}}\ |\omega |\leq 2\pi W\\0\ &{\textrm {se}}\ |\omega |>2\pi W\end{matrix}}\right.$
allora:
    $F(\omega )=Q(\omega )\cdot rett_{W}(\omega )=\sum _{n=-\infty }^{\infty }c_{n}e^{j{\frac {n}{2W}}\omega }rett_{W}(\omega )=\Delta t\sum _{n=-\infty }^{\infty }f(-n\Delta t)e^{jn\Delta t\omega }rett_{W}(\omega )$
e inoltre antitrasformando:
    $f(t)={\mathcal {F}}^{-1}[F(\omega )]=\Delta t\sum _{k=-\infty }^{+\infty }f(k\Delta t){\frac {\sin({\frac {\pi }{\Delta t}}t-k\pi )}{\pi (t-k\Delta t)}}$
ovvero:
    ${\displaystyle f(t)={\mathcal {F}}^{-1}[F(\omega )]=\sum _{k=-\infty }^{+\infty }f(k\Delta t){\frac {\sin[\pi ({\frac {t}{\Delta t}}-k)]}{\pi ({\frac {t}{\Delta t}}-k)}}}$
che può essere anche espressa in termini della funzione sinc normalizzata al seguente modo:
    ${\displaystyle f(t)={\mathcal {F}}^{-1}[F(\omega )]=\sum _{k=-\infty }^{+\infty }f(k\Delta t)\operatorname {sinc} \left({\frac {t}{\Delta t}}-k\right)}$
Queste equazioni mostrano che $F(\omega )$, e quindi anche la sua antitrasformata $f(t)$, possono essere ricostruite sulla base della conoscenza di $f(n\Delta t)$, come volevasi dimostrare.

## Formula di sommazione di Poisson

Sia $X(f)$ la trasformata di Fourier di una funzione a banda limitata $x(t)$, ovvero:
    $X(f)\ {\stackrel {\mathrm {def} }{=}}\ \int _{-\infty }^{\infty }x(t)\ e^{-i2\pi ft}\ {\rm {d}}t$
con $X(f)=0$ per $|f|>B$. La formula di somma di Poisson mostra che i campioni $x(nT)$ di $x(t)$ sono sufficienti a creare una somma periodica di $X(f)$:
    $X_{s}(f)\ {\stackrel {\mathrm {def} }{=}}\sum _{k=-\infty }^{\infty }X\left(f-kf_{s}\right)=\sum _{n=-\infty }^{\infty }T\cdot x(nT)\ e^{-i2\pi nTf}$
che è una funzione periodica equivalente alla serie di Fourier, dove i coefficienti sono $T\cdot x(nT)$. Si tratta della trasformata di Fourier a tempo discreto (DTFT) della successione $T\cdot x(nT)$ per $n$ intero.
La somma $X_{s}$ è composta da copie di $X(f)$ traslate di un fattore $kf_{s}$. Se queste copie non si sovrappongono (ai loro estremi sull'asse delle ascisse) allora il termine $k=0$ può essere ricavato tramite il prodotto:
    $X(f)=H(f)\cdot X_{s}(f)$
dove:
    $H(f)\ {\stackrel {\mathrm {def} }{=}}\ {\begin{cases}1&|f|<B\\0&|f|>f_{s}-B\end{cases}}$
In questo modo, $X(f)$ definisce univocamente $x(t)$.
Per ricostruire $x(t)$, si nota che $H(f)$ non deve essere definita in $[B,f_{s}-B]$ poiché all'interno di tale intervallo $X_{s}(f)$ è nulla.
Tuttavia, il caso peggiore si verifica quando $B=f_{s}/2$ (la frequenza di Nyquist). Una funzione che si presta allo scopo è:
    $H(f)=\operatorname {rect} \left({\frac {f}{f_{s}}}\right)={\begin{cases}1&|f|<{\frac {f_{s}}{2}}\\0&|f|>{\frac {f_{s}}{2}}\end{cases}}$
dove $\operatorname {rect}$ è la funzione rettangolo. Si ha:
    ${\begin{aligned}X(f)&=\operatorname {rect} \left({\frac {f}{f_{s}}}\right)\cdot X_{s}(f)\\&=\operatorname {rect} (Tf)\cdot \sum _{n=-\infty }^{\infty }T\cdot x(nT)e^{-i2\pi nTf}\\&=\sum _{n=-\infty }^{\infty }x(nT)\cdot \underbrace {T\cdot \operatorname {rect} (Tf)\cdot e^{-i2\pi nTf}} _{{\mathcal {F}}\left\{\operatorname {sinc} \left({\frac {t-nT}{T}}\right)\right\}}\end{aligned}}$
La trasformata inversa di entrambi i membri produce la formula di interpolazione di Whittaker-Shannon:
    $x(t)=\sum _{n=-\infty }^{\infty }x(nT)\cdot \mathrm {sinc} \left({\frac {t-nT}{T}}\right)$

## Aliasing nella conversione analogico-digitale

Ogni apparato di conversione analogico-digitale ha un filtro anti-alias a monte del campionatore, il cui ruolo è quello di eliminare dal segnale in ingresso le componenti di frequenza maggiori della metà della frequenza di campionamento dell'apparato $f_{s}/2$. Tuttavia, essendo questo filtro analogico, non è possibile tagliare le frequenze indesiderate a partire esattamente dalla frequenza massima del segnale, poiché occorrerebbe un filtro con un numero di poli elevatissimo (ognuno in grado di abbassare la pendenza della retta di taglio di -20 dB/decade).
Data l'impossibilità di realizzare filtri di ordine superiore a 11-12, solitamente si preferisce utilizzare un filtro anti-alias meno preciso con frequenza di taglio maggiore rispetto a quella imposta dal teorema di Nyquist. Questo porta ad avere un sovracampionamento di un fattore $K$, che allontana tra loro le varie repliche del segnale nel dominio della frequenza. Per ricostruire il segnale digitale si utilizza allora un filtro digitale passa-basso seguito da un blocco decimatore con il compito di eliminare i campioni ridondanti. Con questa soluzione ibrida si ottiene un filtro analogico-digitale con una pendenza elevatissima ed un costo limitato, a discapito di una maggiore velocità richiesta per il convertitore.
Se si ha a disposizione un apparato di conversione A/D che lavora ad una data frequenza $f_{s}$ e si è interessati alle componenti di un segnale che superano $f_{s}/2$ si possono seguire strade diverse: utilizzare uno strumento più veloce o utilizzare tecniche di sottocampionamento. La seconda opzione è realizzabile quando le frequenze di interesse sono racchiuse in un range del tipo:
    $\Delta f=f_{\text{max}}-f_{\text{min}}<{\frac {f_{s}}{2}}$
e questo è possibile anche se sia $f_{\text{max}}$ che $f_{\text{min}}$ superano $f_{s}/2$. In questo caso, tuttavia, il limite imposto dal teorema del campionamento non è più sufficiente a garantire un campionamento corretto.