Hello,
I want to have a high pass filter such that values above zero remain, and the amplitudes of the negative values are somehow reduced as shown in the figure. I am also attaching the data wherein the first coloumn is x-axis and second column is y axis.
Thanks very much in advance.

 Réponse acceptée

Star Strider
Star Strider le 17 Mar 2021

0 votes

‘I want to have a high pass filter such that values above zero remain, and the amplitudes of the negative values are somehow reduced as shown in the figure
That is not how a highpass filter works. It passes frequencies above a certain value, not amplitudes.
If you want to reduce the amplitudes of the values less than zero, experiment with this:
D = load('data.txt');
x = D(:,1);
y = D(:,2);
yr = y;
yr(y<0) = -y(y<0).^2;
figure
plot(x, y)
hold on
plot(x, yr)
hold off
grid
Other transformations (or hard limits) could also be appropriate.

2 commentaires

Aristo Pacino
Aristo Pacino le 31 Mar 2021
Perfect! Thanks so very much.
Star Strider
Star Strider le 31 Mar 2021
As always, my pleasure!

Connectez-vous pour commenter.

Plus de réponses (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by