filter

how that can be happen when i increase filter order the message shape change to worst
code:
function [op]=amm(m,fc,fm)
%am modulation
for i=1:3
t=0:.0001:1;
c(i,:)=2*cos(2*pi*fc(1,i).*t);
tx(i,:)=m(i,:).*c(i,:);
end
%tansmitte signal
rx=tx.*c;
fs=10000;
fnyq=fs/2;
for i=1:3
wn(1,i)=fm(1,i)/fnyq;
[b a]=butter(1,wn(1,i));
op(i,:)=filter(b,a,rx(i,:));
end
figure;
subplot 311;plot(t,op(1,:));
subplot 312;plot(t,op(2,:));
subplot 313;plot(t,op(3,:));
return

3 comentarios

Walter Roberson
Walter Roberson el 7 de En. de 2012
Please keep in mind that there are signals for which any _finite_ order fitting will have error that grows without bounds.
For example, no polynomial of finite order can ever fit any (non-zero) periodic signal such as sine.
Jan
Jan el 7 de En. de 2012
@mohamed al-asklany: If you give an example for the inputs m, fc and fm, we could reproduce, what you are talking about.
Wayne King
Wayne King el 8 de En. de 2012
@mohamed al-asklany, I agree with Jan's comment. Also, you have your order fixed at 1 in your call to butter(). How can you obtain a useable filter with that order? You are not changing your filter order based on any input with this code.

Iniciar sesión para comentar.

Respuestas (0)

Categorías

Más información sobre Fourier Analysis and Filtering en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 7 de En. de 2012

Community Treasure Hunt

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

Start Hunting!

Translated by