Discrete Cosine Transform Filter in Simulink

Gast #2411451
Hi :o)

Ich möchte einen Filter in Simulink implementieren der folgendermaßen 
aussieht:

2/N * Summe von i=0 bis N-1 von {(cos [2*pi/N*i]) * z^-i}

N ist die Anzahl meiner Samples
z^-i ist mein Delay

Es ist ein FIR Passbandfilter mit N Taps, eine Form des DCT filters.

Später möchte ich das Ding folgendermaßen erweitern:

2/N *
Summe von i=0 bis N-1 von {
Summe aller h von {
(cos [2*pi/N*h*i]) * z^-i
}
}

h sind in dem Fall die Vielfachen meiner Grundfrequenz.

Ich bin eher der Regelungsfreak und weniger der DSP-Profi. Ich hoffe ihr 
könnt mir bei der Aufgabe auf die Sprünge helfen :)
Gast #2411460
Als Nachtrag:

Ich habe mal einen simplen MAF mit folgender Syntax aufgebaut:

[1/N .*ones(1,N)]

Also 1/N und N Koeffizienten von z mit 1 belegt.

Vielleicht kann man ähnlich den obigen Filter aufbauen? Was mir nur 
etwas Kopfschmerzen bereitet:

Ich fülle die Koeffizienten nicht nur mit 1 und wie bringe ich das 
mitlaufende z^-1 unter?
Gast #2412715
Ich bins wieder. Ich will das Problem mal herunterbrechen und garnicht 
explizit auf den DCT Filter beziehen.

Letztendlich brauche ich nur ein Array mit folgender Reihe:

[cos(2*pi/N*1 , cos(2*pi/N*2 , cos(2*pi/N*3 , cos(2*pi/N*4 ... 
cos(2*pi/N*i]

Da i bei mir 200 ist brauche ich eine Möglichkeit ein solches Feld zu 
erstellen ohne mich Wund zu tippen.
#2414344
N = abtastrate / grundfrequenz

for i = 0:(N-1)
 num = cos(2*pi/N*i)
end

In den Numerator eines FIR trägt man dann 2/N*num ein.

Erweitert auf mehrere Oberschwingungen:

for i = 0:(N-1)
 num = cos(2*pi/N*1*i) + cos(2*pi/N*2*i) + ... + cos(2*pi/N*k*i)
end

Das sollte klappen

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.