Anteprima
Vedrai una selezione di 14 pagine su 65
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 1 Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 2
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 6
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 11
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 16
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 21
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 26
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 31
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 36
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 41
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 46
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 51
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 56
Anteprima di 14 pagg. su 65.
Scarica il documento per vederlo tutto.
Esercizi + Formulario+ Matlab di Teoria ed elaborazione dei segnali Pag. 61
1 su 65
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

M = length(p);

% Tolleranza per considerare poli con molteplicità > 1

EPS = 1e-4;

% Contatore per la molteplicità di un polo

m = 0;

% Iterazione sui poli

for i = 1:M

% Per considerare poli con molteplicità > 1

if (i > 1)

if abs(p(i) - p(i-1)) < EPS

m = m + 1;

else m = 0;

end

end

% Calcolo del coefficiente per la molteplicità

c = 1;

for j = 0:m-1

c = c * (n + m - j);

end

c = c / factorial(m);

% Calcolo della parte destra della sequenza

if (abs(p(i)) < Rmin)

% Monolatera destra

x = x + r(i) * c .* (p(i).^n) .* un;

elseif (abs(p(i) > Rmax))

% Monolatera sinistra 1

x = x - r(i) * c .* (p(i).^n) .* u_n;

else

% Errore: polo all'interno della regione di convergenza

x = [];

disp("Errore: polo all'interno della regione di convergenza");

return;

end

end

% Aggiunta dei contributi dei poli residui

if length(k) > 0

ind_of_zero = find(n == 0);

ncamp = min(length(k), length(n) - ind_of_zero + 1);

x(ind_of_zero:ind_of_zero + ncamp - 1) = x(ind_of_zero:ind_of_zero + ncamp - 1)

+ k(1:ncamp);

end

end 2

Esercizio 1 (esercizio 1.19 pag.53):

si scriva una funzione per generare una sequenza lunga N campioni, con un impulso discreto avente un ritardo

di k campioni rispetto al punto di inizio della sequenza (impulso.m), nel command window inseriamo:

N = 30;

k = 5;

% Genera una sequenza di impulso di lunghezza N centrato su k.

y = impulso(N, k);

% Sequenze di indici da 0 a N-1.

nn = 0:N-1;

% 'stem' per tracciare il grafico della sequenza.

stem(nn, y)

% Per un grafico con pallini pieni, usa la versione 'filled' di 'stem'.

stem(nn, y, 'filled');

% Imposta etichette dell'asse x e y e modifica il formato del carattere.

xlabel('n');

ylabel('y[n]');

% Imposta il formato del carattere sull'asse corrente.

set(gca, 'fontsize', 24);

% Abilita la modalità 'grid' per sovrascrivere i grafici.

grid on;

% Imposta i limiti dell'asse x e y nel grafico.

axis([0 29 0 1.5])

% Utilizza il comando 'print' per salvare il grafico in formato PDF con un nome

specifico.

%print -dpdf .bestfit 'nome_file_da_salvare.pdf'

Esercizio 2 (esercizio 1.21 pag.55):

si scriva una funzione che generi una sequenza esponenziale di N campioni con base reale o complessa

(esponenziale.m):

a = 0.95; % Imposta il valore di 'a' a 0.95.

% Genera una sequenza esponenziale di lunghezza N con il valore di 'a'.

y = esponenziale(N, a);

% Utilizza la funzione 'stem' per tracciare il grafico della sequenza 'y' con

pallini pieni.

stem(nn, y, 'filled');

% Imposta l'etichetta dell'asse x.

xlabel('n');

% Imposta l'etichetta dell'asse y con un'etichetta formattata contenente il valore

di 'a'.

ylabel(sprintf('y[n] = (%3.2f)^n', a));

N = 30; % Imposta il valore di N a 30.

% Calcola 'a' come un numero complesso utilizzando l'espressione fornita.

1

a = 0.95 * exp(1i * 2 * pi * 0.1);

% Genera una sequenza esponenziale di lunghezza N con il valore complesso 'a'.

y = esponenziale(N, a);

% Crea una sequenza di indici da 0 a N-1.

nn = 0:N-1;

% Estrae la parte reale della sequenza complessa 'y' e la memorizza in 'yre'.

yre = real(y);

% Estrae la parte immaginaria della sequenza complessa 'y' e la memorizza in 'yim'.

yim = imag(y);

% Crea un subplot 2x2 e seleziona il primo subplot (in alto a sinistra).

subplot(2, 2, 1);

% Utilizza la funzione 'stem' per tracciare il grafico della parte reale 'yre' con

pallini pieni.

stem(nn, yre, 'filled');

% Imposta l'etichetta dell'asse x.

xlabel('n');

% Imposta l'etichetta dell'asse y con un'etichetta formattata contenente il valore

di 'a'.

ylabel(sprintf('y[n] = Re[(%3.2f + j%3.2f)^n]', real(a), imag(a)));

% Imposta il formato del carattere sull'asse corrente.

set(gca, 'fontsize', 18);

% (Le righe successive seguono un pattern simile con alcune variazioni nei subplot

e negli stili di tracciamento.)

subplot(2, 2, 2);

stem(nn, yim, 'filled');

xlabel('n');

ylabel(sprintf('y[n] = \\Im[(%3.2f + j%3.2f)^n]', real(a), imag(a)));

set(gca, 'fontsize', 18);

subplot(2, 2, 3);

plot(y, 'o:');

xlabel('Re(y[n])');

ylabel('Im(y[n])');

set(gca, 'fontsize', 18);

% Imposta il formato dell'asse per avere un aspetto quadrato.

axis square;

% Imposta il formato dell'asse per avere un aspetto uguale.

axis equal;

% Imposta il formato del carattere sull'asse corrente.

set(gca, 'fontsize', 18);

Esercizio 3 (esercizio 1.23 pag.58):

si scriva una funzione che permetta di calcolare la trasformata di Fourier di una sequenza data (ft.m), e subito

dopo generiamo una funzione che calcola la trasfromata di fourier di una sequenza e genera il grafico della sua

ampiezza (ft_display.m):

% Imposta la frequenza della sinusoide a 0.05.

2

Dettagli
Publisher
A.A. 2024-2025
65 pagine
SSD Ingegneria industriale e dell'informazione ING-INF/03 Telecomunicazioni

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher agnese.pino di informazioni apprese con la frequenza delle lezioni di Teoria ed elaborazione dei segnali e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Messina o del prof Serrano Salvatore.