Bant sınırlı doğrusal olmayan bozulma diye bir şey var mı?


12

Bu nedenle, örnek sınırlarında sadece iki değer arasında bir sinyali değiştirerek kare bir dalga oluşturursanız, çok sesli olan temelin altında takma ve tonlar üreten sonsuz bir harmonik serisi üretir. Çözüm, örneklemeden önce ideal matematiksel kare dalgayla bant sınırlı olmanızla aynı dalga formlarını üretmek için ek sentez veya bant sınırlı adımlar kullanan Bant Sınırlı Sentez'dir :

http://flic.kr/p/83JMjT

resim açıklamasını buraya girin

Ancak, dijital sinüs dalgasına büyük bir amplifikasyon uygular ve daha sonra dijital olarak klipslerseniz, Gibbs fenomeni dalgalanmadan aynı kare dalga şeklini üreteceğini fark ettim. O zaman aynı zamanda takma çarpıklık ürünleri de üretiyor, değil mi? Öyleyse , Nyquist sınırlarının dışında harmonikler üreten dijital alanda doğrusal olmayan herhangi bir bozulma, diğer adlara ayrılmış bozulma ürünleri üretecek mi? (Düzenle: Bazı testler yaptım ve bu bölümün doğru olduğunu onayladım.)

Bant sınırlama ve örneklemeden önce bozulmanın (analog alanda) etkilerini simüle etmek için (dijital alanda) bant sınırlı bozulma gibi bir şey var mı ? Eğer öyleyse, bunu nasıl yapacaksınız? Eğer "bandlimited distortion" için arama yaparsam Chebyshev polinomlarına bazı referanslar bulurum, ancak bunları nasıl kullanacağımı veya sadece sinüs dalgaları için çalışıp çalışmadıklarını bilmiyorum:

Bu cihaz bant sınırlı bozulma üretmeye çalışmaz. Bant sınırlı bozulma ile ilgilenenler, etki yaratmak için Chebyshev polinomlarının kullanımını araştırmalıdır. Hiperbolik Teğet Bozulması

 

"Chebyshev polinomu" - onlar yüzünden örtüşen vb sahte spektral harmonik tanıtmak yok yani önemli özelliğiyle şekillendirme fonksiyonlarını onlar özünde bant sınırlı olduğunu Dalga Shaper


Ne istediğinden emin değilim. İçinde bulunduğunuz Nyquist bölgesi dışında frekans içeriği oluşturulmasına neden olan bir işlem gerçekleştirirseniz, söz konusu içeriği nasıl oluşturduğunuza bakılmaksızın, diğer adlandırma görürsünüz. Ne tür bir analog bozulmayı simüle etmeye çalışıyorsunuz? Bir yaklaşım, önce sinyali yeterince yüksek bir örnekleme hızına örneklemek, daha sonra sinyal işleminizi gerçekleştirmek için daha geniş Nyquist bölgesini kullanmak olabilir. Ardından, işiniz bittikten sonra orijinal ücrete geri örnek alabilirsiniz.
Jason R

@JasonR: Evet, kare dalgalar üretmek için, toplamsal sentez gibi gerçekten bant sınırlı bir yöntem yapabilir veya ilk önce yukarı örnekleme, saf şekilde kare dalga üretme ve sonra aşağı örnekleme ile yaklaşık yapabilirsiniz (ancak yine de olacak) bazı diğer adlar, sadece daha düşük bir düzeyde). Benzer şekilde, önce örnekleme ile söylediğiniz gibi bozulmayı yaklaşık olarak tahmin edebilirsiniz , ancak kare dalga üretimi için ilave sentez yöntemine benzer şekilde sıfır yumuşatma ile doğrudan oluşturmanın bir yolu var mı?
endolith

@JasonR: Doğrusal olmayan herhangi bir bozulma hakkında genel olarak soruyorum, ancak analog bir gitar amplifikatörünün bozulma devresini taklit etmek gibi bir şey iyi bir örnek olacaktır. Doğru bir şekilde anlarsam, dijital alanda saf bir şekilde yapmak, analog alanda bozulduğunda var olmayan, bazıları temelden daha düşük frekanslarda açıkça duyulabilen bozulma ürünleri üretecektir
endolith

2
@endolith Chebyshev polinomları istediğiniz gibi olabilir.
datageist

@datageist: Chebyshev polinomlarının nasıl kullanılacağı hakkında bir cevap yazabilir misiniz? Kısa bir tane bile.
endolit

Yanıtlar:


5

Doğrusal olmayan bir işlev uygulamak her zaman harmonikleri tanıtır ve doğrusal olmayan işlevlerin sürekli sinyallerin örneklenmiş sürümleriyle karıştırılması, yukarıda not ettiğiniz kırışıklığı ekler (yüksek frekanslı harmoniklerin düşük frekanslara takıldığı yerler).

İlerlemenin birkaç yolunu düşünebilirim:

  1. Ekstra harmonikleri yakalamak için yeterince yüksek bir örnekleme faktörü kullanabilirsiniz (örneğin, gürültü zemininiz gibi rastgele bir hassasiyete kadar),
  2. Sabit kırpıcıdan daha erken ölen harmonikleri olan "daha yumuşak" bir kırpma işlevi (örneğin, bkz. Burada ) kullanabilirsiniz. Bunu modellemek daha kolaydır, ancak düşük frekanslarda kendi bozulmasını sağlar.
  3. Yukarıda önerdiğiniz yaklaşıma dayanarak, sürekli zamanlı bir model oluşturmak için örneklenmiş sinyalinizi (örneğin, bir Lagrange veya Chebyshev enterpolatörü kullanarak) enterpolasyonlayın. Ardından, sabit kesme makinesini ve düşük geçişi simüle edilmiş sürekli zamanlı etki alanına uygulayın. Sonucu örnekleyin.

(1) ve (2) 'yi birleştirebilirsiniz. Üçüncü yaklaşım karmaşıktır, ancak kabul edeceğiniz ne kadar bozulma üzerinde size en iyi kontrolü sağlar ve muhtemelen çok yüksek sadakat gerekliliklerine göre daha iyi ölçeklenir.

f(x)

f(x)=n=0[f(n)(0)n!xn]

f(x)x=g(t)g(t)xng(t)nnnnsinyalinizin çarpı. Resmi tamamlamak için, her terimle ilişkili genliği bulmanız ve toplamda kaç terimin alakalı olduğuna karar vermeniz gerekir.

(Biraz düşünerek, filtrelenmiş doğrusal olmamaya yaklaşmak için bu formu doğrudan kullanabilirsiniz. Bu, kesme makinesi için iyi bir seri gösterimi gerektirir.)


Açıklamak gerekirse, # 3 sadece enterpolasyonla aşırı örnekleme değil, örneklenen noktalara uyan sürekli bir Chebyshev polinomunun parametrelerini buluyor ve daha sonra bu parametrelerle ve polinom modeliyle çalışıyor mu?
Endolit

1
Her biri kısa bir örnek aralığı üzerinde aktif olan bir dizi polinom enterpolatör hayal ediyorum. Bu nedenle, bir dizi yeni örnek geldiğinde, yalnızca belirli bir aralıkta aktif olan bir aradeğerleyici inşa edersiniz. Örneklenen sinyale sürekli zamanlı yaklaşımınız bu polinomlardan oluşur. (Lagrange'ı düşünüyorum, ama Chebyshev muhtemelen aynı şey. Chebyshev enterpolatörlerinin örnek noktalarıyla tam olarak eşleşip eşleşmediğini hatırlamıyorum. Aksi takdirde, enterpolatörler arasında geçiş yaparken süreksizliklerle karşılaşırsınız.)
Graeme

4

Diğer adı içermeyen doğrusal olmayan bozulmaya birkaç yaklaşım (artan zorluk derecesinde):

  1. Alt bant bozulması : Sinyalin alt ucunu çıkarmak için düşük geçiş filtresi kullanın. bir kesme frekansı seçersenizfs2NffN+1

  2. N2N

  3. f:RRf:RNRMNM>N

  4. Kısıtlamaya dayalı cebirsel tasarım : Önceki öğede, kenar yumuşatmanın doğrusal olmayan bozulmanın doğrusal olmayan filtrelere yol açtığını gördünüz. Elbette, doğrusal olmayan tüm filtreler takma ad içermez, ancak bazıları olabilir. Bu yüzden açık olan soru, bir kriterin böyle bir filtreyi tamamen takma ad içermemesi ve nasıl tasarlanması gerektiğidir. Anlaşıldığı üzere, takma ad içermemeye eşdeğer bir ifade, doğrusal olmayan filtrenin alt örnek çevirilerle işe başlamasıdır. Bu nedenle, önce çevirir ve sonra filtreler veya önce filtreler ve sonra çevirirseniz, bunun bir fark yaratmadığından emin olmalısınız. Bu durum çok katı tasarım kısıtlamalarına yol açardoğrusal olmayan filtreler için geçerlidir, ancak sinyal çevirisini nasıl gerçekleştirdiğinize bağlıdır. Örneğin, ideal çeviri doğrusal olmayan filtre için sonsuz sayıda katsayı gerektirir. Bu nedenle, sonlu doğrusal olmayan bir filtre elde etmek için sinyal çevirisini sonlu sıraya yaklaştırmanız gerekir. Takma adsızlık, kullandığınız yaklaşık değerle ölçeklenir, ancak üzerinde çok iyi bir kontrole sahipsiniz. Bu yaklaşımın matematiği üzerinde çalıştıktan sonra, (doğrusal olmayan) herhangi bir doğrusal olmayan transfer fonksiyonunu doğrusal olmayan bir filtre şeklinde neredeyse ideal bir dijital model olarak tasarlayabilirsiniz. Ayrıntıları burada çizemiyorum, ancak belki de bu açıklamadan biraz ilham bulabilirsiniz.


y[t]=x[t]k

Ya da başka (belki ilgili) bir soru - bahsettiğiniz yerel sonlu yaklaşıma giderseniz, kesik kuvvet serilerinden kesik kuvvet serilerine bir harita alırsınız. Daha sonra normalde samimi bir işlevle dönecek olan kesik güç serilerini alçaltmaya çalıştığınızda, sonuç için basit bir ifade alır mısınız? Sonuç tekrar kesilmiş bir güç serisi olarak ifade edilebilir mi ve eğer öyleyse, neye benziyor?
Mike Battaglia

1
@BikeBattaglia, belki yeni bir soru oluşturabilirsin, böylece orada kapsamlı bir cevap verebilirim. İkinci sorunuza cevap vermek için SINC çekirdeği değil, en basit durumda bir boxcar çekirdeği kullanıyorsunuz. Yüksek dereceli çekirdekler işe yarar, ancak analitik bir sonuç elde etmek için kendinizi belirli çekirdeklerle sınırlamanız gerekir.
Jazzmaniac

Teşekkürler - filtre tasarım sorusu için burada yeni bir soru oluşturdu: dsp.stackexchange.com/q/51533/18276
Mike Battaglia

2

Tn(x)=cos(narccos(x)).

Tn(x)

(1)Tn(cos(kx))=cos(narccos(cos(kx)))=cos(nkx).

Polinomların kendileri aşağıdaki tekrarlama ilişkisi kullanılarak kolayca oluşturulabilir :

T0(x)=1T1(x)=xTn(x)=2xTn1(x)Tn2(x).

İşte ilk birkaç tanesi:

T0(x)=1T1(x)=xT2(x)=2x(x1)=2x21T3(x)=2x(2x21)x=4x33xT4(x)=2x(4x33x)(2x21)=8x48x2+1

(1)T2cos(x)

2cos2(x)1=2(eix+eix2)21=24(ei2x+2eixeix+ei2x)1=(ei2x+ei2x2)+221=cos(2x).

Bir Chebyshev Serisini hesaplayarak

f(x)=n=0anTn(x)

nf(x)


Teşekkürler! Tek bir sinüzoid dışındaki dalga formları için ne olur? Bant sınırlı intermodülasyon ya da değil?
endolith

1
xn

1

@ robert-bristow-johnson bunu comp.dsp sitesinde çok açık bir şekilde açıklar :

sonlu ölçüde fazla örneklemeniz gerekir. Eğer (hafızasızlık, sanırım) doğrusal olmayanlığı sonlu bir sıralı polinom olarak (uygulamaya çalıştığınız eğriye yaklaĢan) temsil ederseniz, o zaman polinom sırası ne olursa olsun gerekli olan aşırı örnekleme faktörü aynıdır ve takma ad olmayacaktır. daha sonra orijinal Nyquist'inizden daha yüksek tüm frekans bileşenlerinden kurtulmak için alçak geçiren filtre (bu aşırı örneklenmiş hızda), daha sonra aşağı örnek ve diğer adınız olmayacaktır.

Başka bir deyişle, doğrusal olmamanız bir polinomsa, bozulma ile üretilebilecek en yüksek frekans, sinyalinizdeki polinomun N sırasından en yüksek frekans olacaktır . (Polinom lineer olmayanlık, sinyali N kere kendisi ile çarpmaktadır , bu yüzden spektrumu kendisiyle kıvrılır ve aynı oranda yayılır.)

Böylece daha sonra maksimum frekansı (Nyquist veya uygulamanız için bir alt sınır olsun) biliyorsunuz ve polinomun sırasını biliyorsunuz, böylece takma adı önlemek, bozulmayı yapmak ve daha sonra alçak geçiren filtre ve altörnek için yeterince fazla örnekleme yapabilirsiniz.

Aslında, alt örneklemeden önce kaldırılacak bantta bulunduğu sürece, bazı takma adların gerçekleşmesine izin vererek aşırı örnekleme oranını azaltabilirsiniz:

Başka bir küçük hile ise LPF'nin çıkacağı alana kadar katlanan takma adın umrunda olmamasıdır. bu nedenle 5. dereceden bir polinomun sadece 3. aşırı örnekleme oranına sahip olması gerekir. altörnekleme yaparken, bu diğer harmonikleri filtrelersiniz. bu yüzden zor ve hızlı kuralın

aşırı örnekleme oranı = (polinom sırası + 1) / 2


2
NN+12fs

@robert Siz yorum yaparken bu kısmı gördüm ve ekledim. Bunu kendi cevabınız olarak yeniden yazarsanız, onu silip sizinkini kabul edeceğim
endolith

1
Ah hayatım. güzel bir cevap giydirmek iş gerektirir.
robert bristow-johnson

@ robertbristow-johnson İsterseniz hayali internet noktaları sizindir
endolith
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.