How to programe clipping sine wave

33 views (last 30 days)
Mvana on 2 Aug 2022
Commented: Sam Chak on 5 Sep 2022 at 13:26
TIME =linspace(0,6*pi,200)
SignalVoltage = 7*sin(Time)

Accepted Answer

Sam Chak
Sam Chak on 2 Aug 2022
Edited: Sam Chak on 2 Aug 2022
Cannot open your jpg (I'm lazy to fix the link). If you study Pure Math in high school, you need to use the sign function to clip the signal. But in MATLAB, it's a pretty easy job do something like this. In Electrical Engineering, you can use the Diode Clipper circuit.
% original sine wave
t = linspace(0, 6*pi, 3600*3+1);
x = 7*sin(t);
plot(t, x, 'linewidth', 1.5), hold on
% clipped sine wave
ub = 4; % upper bound
lb = -4; % lower bound
y = max(lb, min(x, ub));
plot(t, y, 'linewidth', 1.5), hold off
grid on, xlabel('t'), ylabel('x(t)'), ylim([-10 10])
Sam Chak
Sam Chak on 5 Sep 2022 at 13:26
@Thando, Not exactly sure what you meant by getting 1/3 and all correct. Please enlighten.

Sign in to comment.

More Answers (1)

Mbongeni on 8 Aug 2022
how do i use the end function? i have a row by column vector and matlab instructions say that i must use the end command,but it gives me an error when i try it. What can i do to solve this problem?
  1 Comment
Sam Chak
Sam Chak on 8 Aug 2022
@Mbongeni, Please post a new question and the error
function Mbongeni
% type your code here.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by