How to plot this signal on matlab? Bounty
1 次查看(过去 30 天)
显示 更早的评论
采纳的回答
Simon Chan
2021-7-14
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)')
0 个评论
更多回答(1 个)
Yazan
2021-7-14
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');
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Fourier Analysis and Filtering 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!