Muzikaal Gepiel dl. 3: y[n] = 1/2 . (x[n] + x[n-1])

ProgHead

Gepokt en gemazeld
Lid sinds
26 februari 2019
Berichten
5.517
Locatie
Zeist
De formule y[n] = 1/2 . (x[n] + x[n-1]) beschrijft een digitaal laagdoorlaatfilter. In dit topic zal ik dat filter proberen te doorgronden.
 
Laten we ons systeem dat de rij getallen x[n] (de input) volgens de formule y[n] = 1/2 . (x[n] + x[n-1]) in de rij getallen y[n] (de output) omzet T noemen, zodat y[n] = T(x[n]).

Dan geldt voor twee rijen getallen x[SUB]1[/SUB][n] en x[SUB]2[/SUB][n] steeds dat:

T(x[SUB]1[/SUB][n] + x[SUB]2[/SUB][n]) = 1/2 . ( {x[SUB]1[/SUB][n] + x[SUB]2[/SUB][n]} + {x[SUB]1[/SUB][n-1] + x[SUB]2[/SUB][n-1]} )
T(x[SUB]1[/SUB][n] + x[SUB]2[/SUB][n]) = 1/2 . ( {x[SUB]1[/SUB][n] + x[SUB]1[/SUB][n-1]} + {x[SUB]2[/SUB][n] + x[SUB]2[/SUB][n-1]} )
T(x[SUB]1[/SUB][n] + x[SUB]2[/SUB][n]) = 1/2 . {x[SUB]1[/SUB][n] + x[SUB]1[/SUB][n-1]} + 1/2 . {x[SUB]2[/SUB][n] + x[SUB]2[/SUB][n-1]}
T(x[SUB]1[/SUB][n] + x[SUB]2[/SUB][n]) = T(x[SUB]1[/SUB][n]) + T(x[SUB]2[/SUB][n])

En geldt voor iedere constante a en iedere rij getallen x[n] dat:

T(a . x[n]) = 1/2 . (a.x[n] + a.x[n-1])
T(a . x[n]) = a . 1/2 . (x[n] + x[n-1])
T(a . x[n]) = a . T(x[n])

Hiermee is bewezen dat T voldoet aan de vereisten voor een zogeheten lineair systeem.
 
We gaan in dit topic uit van de voor CD-kwaliteit gebruikelijke samplefrequentie van f[SUB]s[/SUB] = 44,1 kHz, en ten behoeve van een betrouwbare analoge reproductie beperken we ons tot audio-signalen met frequenties tussen de 20 Hz en 20 kHz. Zie ook:

https://nl.wikipedia.org/wiki/Digitale_audio
 
Laatst gewijzigd:
Als f[SUB]s[/SUB] de samplefrequentie is, dan is T[SUB]s[/SUB] = 1/f[SUB]s[/SUB] de sample-tijd. De samples worden dan genomen op de tijdstippen t[SUB]n[/SUB] = n . T[SUB]s[/SUB] = n/f[SUB]s[/SUB] . Laat nu U(t) een analoog audio-signaal zijn, dan ziet het gesamplede signaal U[n] er zo uit:

U[n] = U(t[SUB]n[/SUB]) = U(n/f[SUB]s[/SUB]) .

We bekijken nu het bijzondere geval dat U(t) = A.sin(ω.t + φ) . Dan vinden we voor de gesamplede versie U[n] dat:

U[n] = U(n/f[SUB]s[/SUB]) = A.sin(ω.n/f[SUB]s[/SUB] + φ) = A.sin( ω/f[SUB]s[/SUB] . n + φ ) .
 
Voor het vervolg hebben we nu even wat goniometrie nodig.

sin(α) + sin(β) = 2 . sin((α+β)/2) . cos((α-β)/2)

Dus voor α = ω.n/f[SUB]s[/SUB] + φ en β = ω.(n-1)/f[SUB]s[/SUB] + φ vinden we:

β = ω.(n-1)/f[SUB]s[/SUB] + φ
β = ω.n/f[SUB]s[/SUB] + φ - ω/f[SUB]s[/SUB]
β = α - ω/f[SUB]s[/SUB]

Zodat dan:

(α+β)/2 = (α + α - ω/f[SUB]s[/SUB])/2
(α+β)/2 = (2α - ω/f[SUB]s[/SUB])/2
(α+β)/2 = α - ω/(2f[SUB]s[/SUB])
(α+β)/2 = ω.n/f[SUB]s[/SUB] + φ - ω/(2f[SUB]s[/SUB])

(α-β)/2 = (α - (α - ω/f[SUB]s[/SUB]))/2
(α-β)/2 = (ω/f[SUB]s[/SUB])/2
(α-β)/2 = ω/(2f[SUB]s[/SUB])


En bijgevolg krijgen we:

sin(ω.n/f[SUB]s[/SUB] + φ) + sin(ω.(n-1)/f[SUB]s[/SUB] + φ) = 2 . sin(ω.n/f[SUB]s[/SUB] + φ - ω/(2f[SUB]s[/SUB])) . cos(ω/(2f[SUB]s[/SUB]))
1/2 . { sin(ω.n/f[SUB]s[/SUB] + φ) + sin(ω.(n-1)/f[SUB]s[/SUB] + φ) } = cos(ω/(2f[SUB]s[/SUB])) . sin(ω.n/f[SUB]s[/SUB] + φ - ω/(2f[SUB]s[/SUB]))
 
We keren nu terug tot het harmonische signaal U(t) = A.sin(ω.t + φ) met de gesamplede versie U[n] = A.sin( ω/f[SUB]s[/SUB] . n + φ ) . Gebruiken we U[n] als input voor ons systeem T dan vinden we als output W[n] dat:

W[n] = T(U[n])
W[n] = 1/2 . {U[n] + U[n-1]}
W[n] = 1/2 . { A.sin( ω/f[SUB]s[/SUB] . n + φ ) + A.sin( ω/f[SUB]s[/SUB] . (n-1) + φ ) }
W[n] = A . 1/2 . { sin( ω/f[SUB]s[/SUB] . n + φ ) + sin( ω/f[SUB]s[/SUB] . (n-1) + φ ) }
W[n] = A . cos(ω/(2f[SUB]s[/SUB])) . sin(ω.n/f[SUB]s[/SUB] + φ - ω/(2f[SUB]s[/SUB]))
W[n] = cos(ω/(2f[SUB]s[/SUB])) . A . sin(ω.n/f[SUB]s[/SUB] + φ - ω/(2f[SUB]s[/SUB]))

Voor audio-signalen met een frequentie tussen de 20 Hz en 20 kHz loopt ω/(2f[SUB]s[/SUB]) vanaf 2π.20/(2 . 44100) ≈ 0,00045 . π rad voor audio-signalen met een frequentie van 20 Hz tot 2π.20000/(2 . 44100) ≈ 0,45 . π rad voor audio-signalen met een frequentie van 20 kHz. Ons systeem T dat werkt volgens de formule y[n] = 1/2 . (x[n] + x[n-1]) vormt binnen het audio-gebied dus inderdaad een laagdoorlaatfilter.
 
Fijn.

Wat vooral fijn is, is dat dit muzikaal gepiel is... ik bedoel; als het slechts wiskundige gepiel was geweest dan had de topicstarter meer succes gehad op wiskundeforum.nl, maar in deze context heb je er gewoon echt wat aan.

En dat vind ik fijn.

Heel fijn.
 
trigg Dank! :)

Ik schrijf overigens ook op het Wetenschapsforum.nl, maar hier op ons forum bepaal ik mij vooral tot die zaken die met (computer)muziek en audiotechniek te maken hebben. Dit topic staat bovendien in het subforum "Klank, geluid en theorie" dus ik zie niet in waarom mijn theoretische bijdrage over audio-techniek hier ongepast zou zijn. Mocht iemand een zeker (sub)forum niet bijzonder interessant vinden dan kan die dat (sub)forum eenvoudig links laten liggen. - Maar gewoon doorgaan en verder geen aandacht aan het cynische gemurmel besteden is het beste.
 
Back
Top