Clipping sin wave script, what is not correct ?
52 views (last 30 days)
Show older comments
Write a script to generate the signal values for the figure above corresponding to equally-spaced time values ranging from 0 to 6*pi . Assign these time values to the variable Time. Assign the resulting voltage values to the variable signalVoltage. The sinusoidal function is given by the formula: Y=7sin(x) In order to model the clipping at plus or minus 5 Volts, you will need to replace any values of y that are greater than the threshold of 5 with the value 5. Similarly you will need to replace any values of y that are less than with the value -5
My attempt: Time= 0:6*pi Signal voltage = 7sin(time) Plot ( time, signal voltage) Signalvoltagelim([-5,5])
Don’t know what I am doing wrong. What in my script is wrong ?
0 Comments
Accepted Answer
KALYAN ACHARJYA
on 23 Oct 2019
Edited: Voss
on 2 Aug 2023
time=linspace(0,6*pi,500);
Y=7*sin(time);
figure()
subplot(121),plot(time,Y);
ylim([-8 8]);
Y(Y>5)=5; % You can replace by any value, here I have consider 5
Y(Y<-5)=-5% You can replace by any value, here I have consider -5
subplot(122),plot(time,Y);
ylim([-8 8]);
Or
time=linspace(0,6*pi,500);
Y=7*sin(time);
figure()
plot(time,Y);
hold on;
Y(Y>5)=5; % You can replace by any value, here I have consider 5
Y(Y<-5)=-5% You can replace by any value, here I have consider -5
plot(time,Y);
legend('Original','Clipping')
3 Comments
KALYAN ACHARJYA
on 23 Oct 2019
Edited: KALYAN ACHARJYA
on 23 Oct 2019
Considering 500 vectors elements between 0 and 6Pi, you can choose any other number also
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!