X-Git-Url: http://wien.tomnetworks.com/gitweb/?p=sigproz.git;a=blobdiff_plain;f=ausarb1.txt;fp=ausarb1.txt;h=676ff53c0f92aa6095424f584436045ad5bfde4e;hp=2a2cac68cf522cb0e1aac500ca9c3d762f03973a;hb=dbf86016654a5e1351162c6f7608cda2b4fcfb12;hpb=908686866c93b560c0b2024a366591fd7b858d09 diff --git a/ausarb1.txt b/ausarb1.txt index 2a2cac6..676ff53 100755 --- a/ausarb1.txt +++ b/ausarb1.txt @@ -3,9 +3,32 @@ Teil 1/2 - von Sebastian Falbesoner 1 -- Welcher Unterschied besteht zwischen linearer und zirkulärer Faltung. Erklären Sie an Hand eines Beispiels, z.B.: f = [2 1 2 1] und g = [1 2 3 4] - lineare Faltung: auch "normale" oder aperiodische Faltung genannt - zirkuläre Faltung: auch zyklische oder periodische Faltung genannt - TODO! + lineare Faltung (auch "normale" oder aperiodische Faltung genannt): Im + Zeitbereich gilt fuer die laenge des Eregbnisvektors + > len(f*g) == ((len g) + (len f)- 1) + + zirkuläre Faltung (auch zyklische oder periodische Faltung genannt): + Zirkuläre Faltung entsteht ueber den Umweg ueber den Frequenzbereich + > idft(dft(f) x dft(g)) + Hier bleibt die Laenge des Ergebnisvektors gegenueber der Laenge der + Parameter erhalten, also es gilt + > len(idft(dft(f) x dft(g))) == len(g) == len(f) + und dementsprechend unterscheidet sich das Ergebnis zur linearen Faltung. + Abhilfe dabei schafft das Auffuellen von Nullen: + > fnew = [f zeros(1,length(g)-1)] + > gnew = [g zeros(1,length(f)-1)] + und zwar entspricht die Anzahl der Nullen die Laenge minus eins des zweiten + Parameters der Faltung. Durch dieses Auffuellen erreichen wir, dass das + Ergebnis der zirkulären Faltung wieder dem Ergebnis der periodischen + Faltung entspricht. Weiters ist darauf zu achten, dass + > len(g) == len(f) + entspricht, sonst kann die Multiplikation im Frequenzbereich nicht + funktionieren. (??? stimmt das?) + + TODO konkreter unterschied? + Achtung: + * ... entspricht Faltung + x ... Multikplikation 2 -- Die schnelle Faltung wird über den Frequenzbereich berechnet: * Beschreiben Sie die grundsätzliche Vorgangsweise.