I want clip specific portion of both positive and negative side of sine wave.. How to do it. I used MinMax block but it only cliped one side..

Réponses (1)

Image Analyst
Image Analyst le 5 Juil 2019
First get the min and max values, then determine the threshold as some fraction from the center and clip:
maxy = max(y)
miny = min(y)
middley = (miny + maxy)/2;
% Determine top point as, say 90% ofthe way from the middle line to the max
fraction = 0.9;
upperThreshold = middley + fraction * (maxy - middley);
lowerThreshold = middley - fraction * (middley - miny);
% Now clip
indexesTooHigh = y > upperThreshold;
y(indexesTooHigh) = upperThreshold;
indexesTooLow = y < lowerThreshold;
y(indexesTooLow) = lowerThreshold;

1 commentaire

Mohiuddin Mahbub
Mohiuddin Mahbub le 5 Juil 2019
I want to use it on Simulink..I am generating wave then I need to clip it and send it to another block..So is there any block model for this clip operation that can be done on both side of sine wave?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Simulink dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by