# ifft doesn't recreate original signal

I want to convert given signal into frequency domain and do some calculation and then convert that signal into time domain. Here is the code which I am trying out

Fs = 100;             % Sampling frequency
T = 1/Fs;             % Sampling period
L = 1000;             % Length of signal
t =  0:0.001:1;       % Time vector
fc = 24;              %cut-off frequency
Wn = (2/Fs)*fc;       % normalized value of fc

s = sin(2*pi*(Fs/2)*t);
x = s;

y = fft(x);
figure;plot(t,y);
b = fir1(10,Wn,'low');
fvtool(b,1,'Fs',Fs)
y = filter(b,1,y);
figure;plot(t,y);
new_x = abs(ifft(y));
figure;plot(t,new_x);


Without applying low pass filter can get original signal by using ifft. But after applying low pass filter can't able to recreate original signal. Can someone let me explain where went wrong?

• you seem to have problems with continuous signals, discrete signals, sampling and their Matlab simulations... Mar 7 '17 at 14:01