63 lines
1.2 KiB
Matlab
63 lines
1.2 KiB
Matlab
clear
|
|
close all
|
|
clc
|
|
|
|
% x1[n], -5 <= n <= 10
|
|
n1 = -5:10;
|
|
x1 = -4*(n1 == -3) + 4*(n1 == 0) - (n1 == 3) + 2*(n1 == 7);
|
|
|
|
% x2[n], -5 <= n <= 10
|
|
n2 = -5:10;
|
|
x2 = exp(-0.31*n2);
|
|
|
|
% x3[n], 0 <= n <= 256
|
|
n3 = 0:256;
|
|
x3 = 3*sin(2*pi*(3.5/64)*n3);
|
|
|
|
% x4[n], 0 <= n <= 256
|
|
n4 = 0:256;
|
|
x4 = -cos((9/64)*n4);
|
|
|
|
|
|
% Visualization
|
|
figure;
|
|
subplot(121); hold on; grid on;
|
|
stem(n1, x1);
|
|
stem(n2, x2);
|
|
xlabel('n');
|
|
ylabel('x[n]');
|
|
legend('x_1[n]', 'x_2[n]');
|
|
|
|
subplot(122); hold on; grid on;
|
|
plot(n3, x3);
|
|
plot(n4, x4);
|
|
xlabel('n');
|
|
ylabel('x[n]');
|
|
legend('x_3[n]', 'x_4[n]');
|
|
|
|
% Custom power function
|
|
function [ P ] = custom_power( x )
|
|
P = (1/length(x)) * sum(abs(x).^2);
|
|
end
|
|
|
|
% Calculate and display the power
|
|
P3 = custom_power(x3);
|
|
% Display the calculated powers
|
|
disp(['Power of x_3[n]: ', num2str(P3)]);
|
|
|
|
% Energy function
|
|
function [ W ] = energy( x )
|
|
W = sum(abs(x).^2);
|
|
end
|
|
|
|
% Calculate and display the energy of each signal
|
|
P1 = energy(x1);
|
|
P2 = energy(x2);
|
|
P3 = energy(x3);
|
|
P4 = energy(x4);
|
|
% Display the calculated powers
|
|
disp(['Energy of x_1[n]: ', num2str(P1)]);
|
|
disp(['Energy of x_2[n]: ', num2str(P2)]);
|
|
disp(['Energy of x_3[n]: ', num2str(P3)]);
|
|
disp(['Energy of x_4[n]: ', num2str(P4)]);
|