How to plot this signal on matlab? Bounty

1 view (last 30 days)

Accepted Answer

Simon Chan
Simon Chan on 14 Jul 2021
Not sure what is the exact function of the curve and simply assume it to be a cosine function.
x=linspace(-1,1);
y=cos(pi*x/2);
w=1-abs(x);
u=linspace(-6,6,600);
v=[w(51:100),y,w,y,w,y,w(1:50)];
plot(u,v,'Linewidth',2)
xlabel('Time')
ylabel('x(t)')

More Answers (1)

Yazan
Yazan on 14 Jul 2021
T = 4; % period
F = 1/4; % fundamental frequency
Fs = 1000; % sampling frequency
t = -6:1/Fs:6-1/Fs; % time vector
x1 = cos(2*pi*F*t); % first signal is cos signal
x1(x1<0) = 0; % set negative part to zero
x2 = sawtooth(2*pi*F*t, 1/2); % second signal is triangular
x2(x2<0) = 0; % set negative part to zero
x3 = x1+x2; % sum of the two signals
f = figure('Units', 'normalized', 'Position', [0.08 0.4 0.77 0.48]);
subplot(1,3,1), plot(t, x1); grid minor
xlabel('Time'); ylabel('Cos signal');
subplot(1,3,2), plot(t, x2); grid minor
xlabel('Time'); ylabel('Triangular signal');
subplot(1,3,3), plot(t, x3); grid minor
xlabel('Time'); ylabel('Composite signal');

Categories

Find more on Fourier Analysis and Filtering in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!