% % Script di esempio di campionamento di una funzione % con campionatore 'reale' e campionatore 'ideale' con % delta di Dirac % tb=0:0.1:10; % base dei tempi Nc = length(tb); xt=sin(tb); % funzione da campionare figure, plot(tb,xt,'LineWidth',2.5) % Sinusoide continua grid on ax = gca; ax.XAxis.FontSize = 18; % numeri asse x più grandi ax.YAxis.FontSize = 18; % numeri asse y title('x(t) = sin(t)','FontSize',18) xlabel('Tempo','FontSize',18) ylabel('x(t)','FontSize',18) T=1; % Tempo di campionamento k=0; deltak = zeros(size(xt)); % Delta di Dirac for t=1:Nc, if(tb(t) == k*T), Xkt(k+1)=sin(k*T); % effettuo il campionamento dT(k+1) = k; % indice del campionamento deltak(t) = 1; % Valore 1 della delta di Dirac (t=kT) k=k+1; end end figure, plot(tb,xt,'b--',dT,Xkt,'ro','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) ylabel('x(t) e x(kT)','FontSize',18) title('Sinusoide e campioni','FontSize',18) legend('x(t)','x(kT)','FontSize',18) figure, plot(dT,Xkt,'ro','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) ylabel('x(kT)','FontSize',18) title('Campioni della sinusoide','FontSize',18) xtdk = xt.*deltak; % Convoluzione figure subplot(211), plot(tb,xt,'b--','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) title('Sinusoide','FontSize',18) ylabel('x(t)','FontSize',18) subplot(212), plot(tb,deltak,'r:','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) title('Delta di Dirac','FontSize',18) ylabel('\delta(t)','FontSize',18) figure plot(tb,xtdk,'m:',dT,Xkt,'ro','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) title('Funzione Campionata con \delta(t)','FontSize',18) ylabel('x(t)*\delta(t-kT)','FontSize',18) figure subplot(211), plot(dT,Xkt,'ro','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) title('Funzione Campionata Reale','FontSize',18) ylabel('x(kT)','FontSize',18) subplot(212), plot(tb,xtdk,'m:',dT,Xkt,'ro','LineWidth',2.5) grid on ax = gca; ax.XAxis.FontSize = 18; ax.YAxis.FontSize = 18; xlabel('Tempo','FontSize',18) title('Funzione Campionata con \delta(t)','FontSize',18) ylabel('x(t)*\delta(t-kT)','FontSize',18) return