Advertisement
TrendyJack

hw3

May 22nd, 2024
977
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 1.46 KB | None | 0 0
  1. clc;
  2. clearvars;
  3. close all;
  4.  
  5. % Definizione dei parametri
  6. t = linspace(-6e-6, 6e-6, 1000);
  7. T_grande = 2e-6;
  8. T_zero = 2e-6;
  9. N = 10;
  10.  
  11. % Definizione di x(t)
  12. x_t = ((t/T_grande)+0.5).*rectpuls(t/T_grande);
  13.  
  14. % Coefficiente a_0
  15. a_0 = T_grande / (2 * T_zero);
  16.  
  17. % Definizione dei vettori k1 e k2
  18. k1 = -N:-1;
  19. k2 = 1:N;
  20.  
  21. % Calcolo di y_rec(t) come somma delle armoniche
  22. y_rec = a_0 * ones(size(t)); % Inizializzazione di y_rec con il valore di a_0
  23.  
  24. % Funzione sinc corretta
  25. sinc = @(x) sin(pi*x) ./ (pi*x);
  26.  
  27. % Somma dei termini delle armoniche positive
  28. for i = 1:length(k2)
  29.     k = k2(i);
  30.     y_rec = y_rec + (1/(2*pi*k)) * (sin((pi*k*T_grande)/T_zero) + 1i*(cos((pi*k*T_grande)/T_zero) - sinc((k*T_grande)/T_zero))) * exp(1i * 2 * pi * k * t / T_zero);
  31. end
  32.  
  33. % Somma dei termini delle armoniche negative
  34. for i = 1:length(k1)
  35.     k = k1(i);
  36.     y_rec = y_rec + (1/(2*pi*k)) * (sin((pi*k*T_grande)/T_zero) + 1i*(cos((pi*k*T_grande)/T_zero) - sinc((k*T_grande)/T_zero))) * exp(1i * 2 * pi * k * t / T_zero);
  37. end
  38.  
  39. % Plot di x(t)
  40. figure;
  41. plot(t, x_t);
  42. title('Segnale x(t)');
  43. xlabel('Tempo (s)');
  44. ylabel('x(t)');
  45. grid on;
  46.  
  47. % Plot di y_rec(t)
  48. figure;
  49. plot(t, real(y_rec));
  50. title('Segnale y_{rec}(t)');
  51. xlabel('Tempo (s)');
  52. ylabel('y_{rec}(t)');
  53. grid on;
  54.  
  55. % Plot di x(t) e y_rec(t)
  56. figure;
  57. plot(t, x_t, 'b', t, real(y_rec), 'r');
  58. title('Segnale x(t) e y_{rec}(t)');
  59. xlabel('Tempo (s)');
  60. ylabel('x(t) e y_{rec}(t)');
  61. legend('x(t)', 'y_{rec}(t)');
  62. grid on;
  63.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement