clear; close all; clc; % Define filter coefficients b0 = 1; b = b0 * [1 1 1 1]; a = [1 -1.5 0.625]; % Frequency response [H,w] = freqz(b,a,1024); % Magnitude and phase plots figure; subplot(2,1,1); plot(w/pi, 20*log10(abs(H)), 'LineWidth', 1.5); grid on; xlabel('Normalized Frequency (\times\pi rad/sample)'); ylabel('Magnitude (dB)'); title('Magnitude Response'); subplot(2,1,2); plot(w/pi, unwrap(angle(H)), 'LineWidth', 1.5); grid on; xlabel('Normalized Frequency (\times\pi rad/sample)'); ylabel('Phase (rad)'); title('Phase Response'); % Define filter coefficients b0 = 1; b = b0 * [1 1 1 1]; a = [1 -1.5 0.625]; % Generate impulse signal n = 0:50; x = [1 zeros(1,50)]; % Compute impulse response h = filter(b,a,x); % Plot impulse response figure; stem(n,h,'filled'); grid on; xlabel('n'); ylabel('h[n]'); title('Impulse Response (0 \leq n \leq 50)');