Untitled
unknown
plain_text
a year ago
2.3 kB
8
Indexable
clc; clear; close all;
n = -20:20; % Time axis (discrete time indices)
f = 1; % Frequency for sinusoidal and cosine signals (Hz)
Fs = 100; % Sampling frequency (samples/sec)
A = 1; % Amplitude
tau = 5; % Width parameter for rectangular and triangular pulses
alpha = 0.9; % Parameter for exponential signal
% --- 1. Sinusoidal Signal ---
t = n/Fs; % Convert discrete indices to time (seconds)
sinusoidal = A * sin(2*pi*f*t);
% --- 2. Cosine Signal ---
cosine = A * cos(2*pi*f*t);
% --- 3. Triangular Signal ---
triangular = zeros(size(n));
triangular(n >= -tau & n <= tau);
for i=1:length(n)
if (n(i)>=-tau && n(i)<=0)
triangular(i) = (1 + (n(i)/tau));
elseif (n(i)>0 && n(i)<= tau)
triangular(i) = (1- (n(i)/tau));
end
end
% --- 4. Sawtooth Signal ---
sawtooth = A * mod(n, 10) / 5 -1; % Simple discrete sawtooth
% --- 5. Rectangular Signal ---
rectangular = zeros(size(n));
rectangular(n >= -tau/2 & n <= tau/2) = 1;
% --- 6. Exponential Signal ---
exponential = A * (alpha).^n;
% --- 7. Unit Impulse Signal ---
unit_impulse = zeros(size(n));
unit_impulse(n == 0) = 1;
% --- 8. Unit Step Signal ---
unit_step = zeros(size(n));
unit_step(n >= 0) = 1;
% --- 9. Unit Ramp Signal ---
unit_ramp = zeros(size(n));
unit_ramp(n >= 0) = n(n >= 0);
figure;
% Subplot layout
subplot(3,3,1);
stem(t,sinusoidal,'k'); title('Sinusoidal'); xlabel('Time (sec)'); ylabel('Amplitude');
subplot(3,3,2);
stem(t,cosine,'k'); title('Cosine'); xlabel('Time (sec)'); ylabel('Amplitude');
subplot(3,3,3);
stem(n,triangular,'k'); title('Triangular'); xlabel('n'); ylabel('Amplitude');
subplot(3,3,4);
stem(n,sawtooth,'k'); title('Sawtooth'); xlabel('n'); ylabel('Amplitude');
subplot(3,3,5);
stem(n,rectangular,'k'); title('Rectangular'); xlabel('n'); ylabel('Amplitude');
subplot(3,3,6);
stem(n,exponential,'k'); title('Exponential'); xlabel('n'); ylabel('Amplitude');
subplot(3,3,7);
stem(n,unit_impulse,'k'); title('Unit Impulse'); xlabel('n'); ylabel('Amplitude');
subplot(3,3,8);
stem(n,unit_step,'k'); title('Unit Step'); xlabel('n'); ylabel('Amplitude');
subplot(3,3,9);
stem(n,unit_ramp,'k'); title('Unit Ramp'); xlabel('n'); ylabel('Amplitude');
sgtitle('Elementary Discrete-Time Signals ');Editor is loading...
Leave a Comment