[wiskunde] Z-transformatie
Moderators: ArcherBarry, Fuzzwood
- Berichten: 7.463
Re: [wiskunde] Z-transformatie
Het heikele punt voor mij was dat ik de "afleiding" van die formule niet begreep omdat ik dacht dat het een wiskundig sluitend bewijs moest voorstellen. Nu de formule slechts een benadering blijkt te zijn (hoewel een voor praktische doeleinden zeer goede) is het probleem voor mij uit de wereld. De formule berust op de veronderstelling dat de KS-schakeling werkt als een teruggekoppelde delay-lijn met N+1/2 eenheden, wat inderdaad bij benadering waar is voor niet al kleine N.
Ik zie minstens twee redenen waarom de voorstelling van de KS-schakeling als een teruggekoppelde delay-lijn met N+1/2 eenheden slechts bij benadering correct is:
1. Omdat het gemiddelde alleen voor grotere N een goede interpolatie van een signaalwaarde op een tijdstip exact tussen twee opeenvolgende samples oplevert.
2. Omdat een delay-lijn op zich het signaal niet dempt, wat de KS-schakeling wel doet.
Dit alles mag dan spijkers op laag water zoeken lijken, maar ik heb er wel weer veel van geleerd.
Ik zie minstens twee redenen waarom de voorstelling van de KS-schakeling als een teruggekoppelde delay-lijn met N+1/2 eenheden slechts bij benadering correct is:
1. Omdat het gemiddelde alleen voor grotere N een goede interpolatie van een signaalwaarde op een tijdstip exact tussen twee opeenvolgende samples oplevert.
2. Omdat een delay-lijn op zich het signaal niet dempt, wat de KS-schakeling wel doet.
Dit alles mag dan spijkers op laag water zoeken lijken, maar ik heb er wel weer veel van geleerd.
-
- Berichten: 11
Re: [wiskunde] Z-transformatie
Ik vind het ook een interessant probleem en zeker geen spijkers op laag water zoeken.
Alleen zou ik je conclusie wat anders formuleren:
Ik zou zeggen: hoe groter N, des te meer de "grondtoon"-frequentie van Karplus convergeert naar Fs/(N-1/2) (met N gedefinieerd als de orde van de diff. vergelijking). Want hoe groter N, des te dichter de polen van Karplus in de richting van de eenheidscirkel bewegen (magnitude nadert 1). Daardoor worden de onderlinge afstanden tussen de polen ook meer gelijk aan elkaar en ontstaat een harmonisch spectrum.
Dat is te zien in onderstaande tabel, gemaakt met WaveWizard's rootfinder.
Merk op dat voor elke N een pool bij 0 Hz ligt (z = 1) en dat alleen de even waarden van N de Nyquistfrequentie hebben. Alle "tussenliggende" polen komen in complex geconjugeerde paren.
Alleen zou ik je conclusie wat anders formuleren:
Ik zou zeggen: hoe groter N, des te meer de "grondtoon"-frequentie van Karplus convergeert naar Fs/(N-1/2) (met N gedefinieerd als de orde van de diff. vergelijking). Want hoe groter N, des te dichter de polen van Karplus in de richting van de eenheidscirkel bewegen (magnitude nadert 1). Daardoor worden de onderlinge afstanden tussen de polen ook meer gelijk aan elkaar en ontstaat een harmonisch spectrum.
Dat is te zien in onderstaande tabel, gemaakt met WaveWizard's rootfinder.
Merk op dat voor elke N een pool bij 0 Hz ligt (z = 1) en dat alleen de even waarden van N de Nyquistfrequentie hebben. Alle "tussenliggende" polen komen in complex geconjugeerde paren.
Code: Selecteer alles
!---------------------------------------------------------------------------------
! N = 2 Magnitude poolfreq
! 1,0000000000 + 0,0000000000000 i 1,0000000000000 0 Hz
! -0,5000000000 + 0,0000000000000 i 0,5000000000000 22050 Hz (Nyq)
!---------------------------------------------------------------------------------
! N = 3 Magnitude poolfreq
! 1,0000000000 + 0,0000000000000 i 1,0000000000000 0 Hz
! -0,5000000000 - 0,5000000000000 i 0,7071067811865 -16537,499 Hz
! -0,5000000000 + 0,5000000000000 i 0,7071067811865 16537,499 Hz
!---------------------------------------------------------------------------------
! N = 4 Magnitude poolfreq
! 1,0000000000 + 0,0000000000000 i 1,0000000000000 0 Hz
! -0,1761005644 - 0,8607166186236 i 0,8785468151135 -12441,467 Hz
! -0,1761005644 + 0,8607166186236 i 0,8785468151135 12441,467 Hz
! -0,6477988713 + 0,0000000000000 i 0,6477988712610 22050 Hz (Nyq)
!---------------------------------------------------------------------------------
! N = 5 Magnitude poolfreq
! 1,0000000000 + 0,0000000000000 i 1,0000000000000 0,0
! 0,1688096116 + 0,9278915393280 i 0,9431221520636 9761,909 Hz
! 0,1688096116 - 0,9278915393280 i 0,9431221520636 -9761,909 Hz
! -0,6688096116 + 0,3388514021240 i 0,7497510048294 18758,549 Hz
! -0,6688096116 - 0,3388514021240 i 0,7497510048294 -18758,549 Hz
!---------------------------------------------------------------------------------
! N = 6 Magnitude poolfreq
! 1,0000000000 + 0,0000000000000 i 1,0000000000000 0,0 Hz
! 0,4042249299 - 0,8808729159775 i 0,9691929054972 -8005,377 Hz
! 0,4042249299 + 0,8808729159775 i 0,9691929054972 8005,377 Hz
! -0,5440186493 - 0,6655179335211 i 0,8595757154603 -15834,817 Hz
! -0,5440186493 + 0,6655179335211 i 0,8595757154603 15834,817 Hz
! -0,7204125613 + 0,0000000000000 i 0,7204125612545 22050,000 Hz (Nyq)
!---------------------------------------------------------------------------------
! N = 7 Magnitude poolfreq
! 1,0000000000 + 0,0000000000000 i 1,0000000000000 0,0 Hz
! 0,5581619008 + 0,8073355575181 i 0,981496515535498 6779,328 Hz
! 0,5581619008 - 0,8073355575181 i 0,981496515535498 -6779,328 Hz
! -0,3174374594 + 0,8613972539630 i 0,918026018030256 13503,123 Hz
! -0,3174374594 - 0,8613972539630 i 0,918026018030257 -13503,123 Hz
! -0,7407244414 + 0,2592065099456 i 0,784767935726277 19687,366 Hz
! -0,7407244414 - 0,2592065099456 i 0,784767935726277 -19687,366 Hz
!---------------------------------------------------------------------------------
- Berichten: 7.463
Re: [wiskunde] Z-transformatie
Voor het begrijpen van die formulering (in termen van polen) bezit ik helaas nog onvoldoende kennis van zaken.
Wat ik mij nog wel afvraag is of er al een exact geldende formule (dus niet slechts een benadering) voor de grondfrequentie van KS bestaat. Ik heb het bange vermoeden dat je voor zo'n exacte formule expliciete oplossingen van hogeregraads algebraïsche vergelijkingen nodig hebt. Dat laatste (en de vraag of zulke expliciet in een formule te vangen oplossingen er überhaupt zijn) behoort tot het gebied van de Galoistheorie, en dat gaat mij boven de pet. Of zie je andere mogelijkheden om tot een dergelijke exacte formule te komen?
Wat ik mij nog wel afvraag is of er al een exact geldende formule (dus niet slechts een benadering) voor de grondfrequentie van KS bestaat. Ik heb het bange vermoeden dat je voor zo'n exacte formule expliciete oplossingen van hogeregraads algebraïsche vergelijkingen nodig hebt. Dat laatste (en de vraag of zulke expliciet in een formule te vangen oplossingen er überhaupt zijn) behoort tot het gebied van de Galoistheorie, en dat gaat mij boven de pet. Of zie je andere mogelijkheden om tot een dergelijke exacte formule te komen?
- Berichten: 7.463
Re: [wiskunde] Z-transformatie
Wat er gebeurt is dat je voor iedere KS-schakeling met een delay-lijn van N elementen een bijbehorende differentievergelijking kunt opstellen. De oplossingen van die differentievergelijking kun je vinden via de karakteristieke vergelijking bij die differentievergelijking. Voor hogere waarden van N kom je dan al snel in de problemen omdat je de bijbehorende hogeregraads algebraïsche vergelijkingen niet of lastig meer exact kunt oplossen.
-
- Berichten: 11
Re: [wiskunde] Z-transformatie
Vandaar dan ook mijn inzet, hierboven, van een rootfinder. Hoe ver je daar mee komt hangt in het algemeen af van de waarden van de coëfficiënten: een veelterm kan "slecht geconditioneerd" zijn; dat is het geval als de nulpunten in het complexe vlak op een kluitje liggen; je krijgt dan enorm grote getallen die tot overflow kunnen leiden.
Maar bij Karplus zie ik dat niet zo snel gebeuren want daar neigen de polen juist naar equidistante spreiding in de buurt van, maar altijd binnen de eenheidscirkel (slechts 1 pool, bij z = 1, ligt OP de eenheidscirkel, bij elke N).
Ik heb in WaveWizard het Laguerre-algoritme uit Numerical Recipes geïmplementeerd, dat snel convergeert en meestal goed gaat tot orden rond 50.
Maar bij Karplus zie ik dat niet zo snel gebeuren want daar neigen de polen juist naar equidistante spreiding in de buurt van, maar altijd binnen de eenheidscirkel (slechts 1 pool, bij z = 1, ligt OP de eenheidscirkel, bij elke N).
Ik heb in WaveWizard het Laguerre-algoritme uit Numerical Recipes geïmplementeerd, dat snel convergeert en meestal goed gaat tot orden rond 50.
- Berichten: 7.463
Re: [wiskunde] Z-transformatie
Juist - dus ook volgens jou is het hopeloos om te zoeken naar één formule die voor alle N een exacte (dus geen benaderde) uitkomst voor de grondfrequentie geeft?
-
- Berichten: 11
Re: [wiskunde] Z-transformatie
Wat mij aan Karplus opvalt is de "asymmetrie" die toeneemt met N.
Als N klein is, heeft het dissiperende 1ste-orde filter een onevenredig groot effect.
Karplus is een goed voorbeeld van "klont-model" ("lumped model").
Dat wordt duidelijk als je het vergelijkt met een echte, fysieke snaar. De frequentie-afhankelijke demping vindt plaats overal in de snaar, d.w.z. over de gehele lengte van het trillend gedeelte. Een discreet model daarvan verdeelt de snaar in L segmentjes die allemaal over een eigen, minuscuul dissipator-filtertje beschikken.
De volgende stap is dan de praktische afweging dat de snaar zijn trillingsbeweging uiteindelijk maar in één punt van de snaar, nl. bij de brug, overdraagt aan het klankbord (bij een electrische gitaar is dat punt het opname-element) en waarom zou je dan niet de werking van al die verschillende dissipator-filtertjes vervangen door één grote, die precies hetzelfde doet als al die kleintjes samen? Scheelt een boel rekentijd! Dit grote filter is de "klont". Natuurlijk moet dit grote filter dan L maal zo krachtig zijn dan die van elk segmentje. En dat laatste is dus bij Karplus duidelijk niet het geval! Die onbalans is het duidelijkst merkbaar voor kleine waarden van N; daar zou de delay veel kleiner moeten zijn dan 1/2 Ts.
Als N klein is, heeft het dissiperende 1ste-orde filter een onevenredig groot effect.
Karplus is een goed voorbeeld van "klont-model" ("lumped model").
Dat wordt duidelijk als je het vergelijkt met een echte, fysieke snaar. De frequentie-afhankelijke demping vindt plaats overal in de snaar, d.w.z. over de gehele lengte van het trillend gedeelte. Een discreet model daarvan verdeelt de snaar in L segmentjes die allemaal over een eigen, minuscuul dissipator-filtertje beschikken.
De volgende stap is dan de praktische afweging dat de snaar zijn trillingsbeweging uiteindelijk maar in één punt van de snaar, nl. bij de brug, overdraagt aan het klankbord (bij een electrische gitaar is dat punt het opname-element) en waarom zou je dan niet de werking van al die verschillende dissipator-filtertjes vervangen door één grote, die precies hetzelfde doet als al die kleintjes samen? Scheelt een boel rekentijd! Dit grote filter is de "klont". Natuurlijk moet dit grote filter dan L maal zo krachtig zijn dan die van elk segmentje. En dat laatste is dus bij Karplus duidelijk niet het geval! Die onbalans is het duidelijkst merkbaar voor kleine waarden van N; daar zou de delay veel kleiner moeten zijn dan 1/2 Ts.