Generate waveform using basic matlab code
5 views (last 30 days)
Show older comments
Abhibrata Adhikary
on 28 Jul 2022
Commented: Abhibrata Adhikary
on 1 Aug 2022
I want to create the attached waveform using simple basic matlab code. Can someone please help me through the process on how to generate such waveforms through matlab coding not using any matlab defined function. Appreciate all the help.
0 Comments
Accepted Answer
Sam Chak
on 28 Jul 2022
The given waveform is a piecewise smooth function, and it can be constructed as follows:
t = 0:0.1:2000;
% Defining the Segments
x1 = 0.07*(t < 200); % segment 1
x2 = ((0.37 - 0.07)/( 600 - 200)*t - 0.08).*(( 200 <= t) & (t < 600)); % segment 2
x3 = 0.37*((600 <= t) & (t < 800)); % segment 3
x4 = ((0.70 - 0.37)/(1200 - 800)*t - 0.29).*(( 800 <= t) & (t < 1200)); % segment 4
x5 = 0.70*((1200 <= t) & (t < 1800)); % segment 5
x6 = ((0.00 - 0.70)/(2000 - 1800)*t + 7.00).*((1800 <= t) & (t < 2000)); % segment 6
% Combining all segments and plotting it
x = x1 + x2 + x3 + x4 + x5 + x6;
plot(t, x, 'linewidth', 1.5)
ylim([0 1]), grid on, xlabel('t'), ylabel('x(t)'), title('Piecewise Smooth Function')
More Answers (0)
See Also
Categories
Find more on Waveform Generation in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!