Bir fonksiyona birim basamak fonksiyonu uygularsak sonuç nasıl değişir?

Başlatan XX_CİHAN_XX, 22 Şubat 2015, 23:34:55

XX_CİHAN_XX

Elimizde aşağıdaki gibi bir fonksiyon olsun.
4x[n] = y[n-4] - 3y[n]
Bu fonksiyonda giriş verisi x[n] yerine birim basamak fonksiyonu u[n] i girdi yaparsak fonksiyon nasıl bir hal alır?
Yani x[n] = u[n] olduğunda;
4 = y[n-4] - 3y[n] olur diye düşünüyorum.
Bundan sonra y[n] 3 katsayısı olması benim kafamı karıştırdı.
Nasıl bir sonuç alırız?
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

yilmaz_kk

  Öncelikle sistemin transfer fonksiyonunu bulmalısın.
4*X(z) = Y(z)*z^-4 - 3*Y(z) ile H(z) fonksiyonunu çıkarabilirsin. Sistem cevabını direk çizdirebilirsin. Eğer giriş fonksiyonun u(n)' den farklı olursa H fonk ile konvolüsyon yapıp sonucu bulabilirsin.  Tabi zaman alanı ve Z alanı dönüşümlerine dikkat etmelisin.

ferdem

y[n]=(-4/3)*x[n]+(1/3)*y[n-4] olarak yazıp
görebilirsiniz:
n=0 anında x[0]=1 y[-4]=0, y[0]=-4/3
n=1 anında x[1]=1 y[-3]=0, y[1]=-4/3
n=2
n=3
n=4 anında x[4]=1 y[0]=-4/3,y[4]=(-4/3)+(-4/9)=-16/9
...

Böyle hesaplanabilir veya MATLAB komut satırdan/Simulinkten görülebilir:

XX_CİHAN_XX

Alıntı yapılan: ferdem - 23 Şubat 2015, 17:22:30
y[n]=(-4/3)*x[n]+(1/3)*y[n-4] olarak yazıp
görebilirsiniz:
n=0 anında x[0]=1 y[-4]=0, y[0]=-4/3
n=1 anında x[1]=1 y[-3]=0, y[1]=-4/3
n=2
n=3
n=4 anında x[4]=1 y[0]=-4/3,y[4]=(-4/3)+(-4/9)=-16/9
...

Böyle hesaplanabilir veya MATLAB komut satırdan/Simulinkten görülebilir:


Hocam çok teşekkür ederim bu çözüm çok iyi oldu benim için yanlız bir şey aklıma takıldı. y[-4] .... y[-1] değerlerini sıfır alma sebebimiz o değerleri bilmediğimiz için mi yoksa birim basamak fonksiyonun bir getirisi mi? Eğer birim basamak fonksiyondan ise anlamadığım şey bu fonksiyon sadece x[n] girdisini etkilemesi lazım gerekmiyor mu neden y[n] değerini de etkiledi?
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.

ferdem

x[n] y[n] i etkilemedi, başlangıç anında o değerler tanımsız olduğu için 0 alındı.

Burada dijital filtrelerden konuşmak güzel olur. Bazı dijital filtreler vardır ki çıkışı sadece giriş tarafından belirlenir, örn:
y[n]=b0*x[n]+b1*x[n-1]+...+x[n-20]*b20
Burada çıkış sadece girişler tarafından belirleniyor, 20 derinlikli bir filtre, bu tip filtrelere FIR(finite impulse response) filtre deniyor. En temel bir FIR filtre son iki girişin ortalamasını alan filtredir: y[n]=0.5*x[n]+0.5*x[n-1]. Lowpass karakter gösterir.

Bazı dijital filtreler de var ki çıkışında sadece giriş söz sahibi değil eski çıkışlar da söz sahibi. Örn:
y[n]=a1*y[n-1]+a2*y[n-2]+a3*y[n-3]+b0*x[n], bu örnekte çıkış neredeyse eski değerlerinden türüyor, bu sınıflandırma için çıkışta söz sahibi olan sadece bir eski çıkış bulunsa yeterli, bu tip filtrelere de IIR(infinite impulse response) filtre deniyor, FIR a göre daha alengirli :)

Şimdi sizin verdiğiniz filtre bir IIR filtre; çıkışı hem giriş hem eski çıkışlar tarafından belirleniyor(y[n-4] var). Başlangıçta eski çıkış olmadığı için 0 alınır. Giriş ise herhangi bir fonksiyon, sinyal olabilir.

Dijital filtrenin frekans cevabı MATLAB in fvtool unda kolayca görülebilir:

Grafik yatay eksen [1, Fs/2] ye denk düşüyor edildi. Örn: 100kHz Fs var ise bu filtre 25kHz i iyi geçiriyor.
Böyle bir filtre bu.

XX_CİHAN_XX

@ferdem hocam oldukça doyurucu bilgiler verdiğiniz için çok teşekkür ederim.
Yirmi yaşındaki bir insan, dünyayı değiştirmek ister . Yetmiş yaşına gelince , yine dünyayı değiştirmek ister, ama yapamayacağını bilir.