Chalmers tekniska högskola och Göteborgs universitet Matematik februari 0 Transformer och differentialekvationer M3, 00/0 Ett par tillämpningar av Fourieranalys. Design av system, filter Som en intressant tillämpning av Laplace/Fouriertransform berättar vi något om Butterworthfilter. Vi har diskuterat system med insignal u(t) och utsignal x(t), vars Laplacetransformer uppfyller ett samband X(s) = G(s)U(s). För system av formen är överföringsfunktionen a n x (n) (t) + + a 0 u(t) G(s) = p(s) = a n s n + + a 0. I regel är p ett reellt polynom vars alla nollställen har negativ realdel. Man kan då i princip konstruera systemet som en elektrisk krets (till exempel som en stege av parallellkopplade kondensatorer och spolar). För Fouriertransformen är X(iω) = G(iω)U(iω), dvs X(iω) = G(iω) U(iω), arg(x(iω)) = arg(g(iω)) + arg(u(iω)). Beloppet och argumentet av G(iω) motsvarar alltså signalens amplitud- respektive fasförändring. Ett idealiskt lågpassfilter uppfyller, ω < c, G(iω) = 0, ω > c. Det bevarar alltså (så när som på en fasförändring) låga frekvenser men filtrerar bort höga. Tyvärr finns det inget polynom p så att G(s) = /p(s) har denna egenskap, så i praktiken får man nöja sig med approximationer. Ett exempel är Butterworthfilter, som uppfyller G(iω) =, n =,, 3,.... + (ω/c) n Vi vill nu visa att det finns ett motsvarande polynom p, och att man alltså kan bygga ett Butterworthfilter av vanliga elektroniska komponenter. Eftersom p är reellt, så är G(iω)G( iω) = G(iω) = + (ω/c) n,
Transformer och differentialekvationer M3, 00/0 sid. av 5 vilket ger Låt s,..., s n vara nollställena till + (s/ic) n, så att p(s)p( s) = + (s/ic) n. () + (s/ic) n = (ic) n (s s ) (s s n ). Det går att skriva upp precis vad nollställena är, men vi nöjer oss med två observationer. För det första gäller att s är ett nollställe om s är ett nollställe. För det andra finns inget nollställe på imaginära axeln, för om s = it får vi ekvationen + (t/c) n = 0, vilket är omöjligt för reella t och c. Det finns alltså precis n nollställen s,..., s n i vänster halvplan, och övriga nollställen är s,..., s n. Således är + (s/ic) n = (ic) n (s s ) (s s n )(s + s ) (s + s n ) = c n (s s ) (s s n )( s s ) ( s s n ). Vi kan nu läsa av att () gäller med p(s) = c n (s s ) (s s n ). Låt oss se närmare på fallet n =. Ekvationen + (s/c) 4 = 0 har nollställena c (± ± i) (med alla fyra teckenkombinationerna). Alltså är p(s) = ( s c ) ( ( + i) s c ) ( i) = c (s + ) cs + c. c Alternativt kan vi skriva + s4 c 4 = c 4 ( (s + c ) c s ) = s + cs + c s c cs + c c, vilket ger faktoriseringen () utan att vi behöver lösa fjärdegradsekvationen. Vi drar slutsatsen att andra ordningens Butterworthfilter beskrivs av systemet c (x + cx + c x) = u. Som ett exempel väljer jag c = 4 och indata u(t) = 9.5 sin(t) sin(9.5t).
Transformer och differentialekvationer M3, 00/0 sid. 3 av 5 Eftersom första termen har frekvensen < 4 bör den bevaras, andra termen har frekvensen 9.5 > 4 och bör filtreras bort. Utdata är lösningen till systemet 6 x + 4 x + x = 9.5 sin(t) sin(9.5t), x(0) = x (0) = 0. Med avrundade konstanter kan lösningen skrivas 9.48 sin(t 0.36) + 0.7 sin(9.5t + 0.63) + 3.6e.83t sin(.83t +.68). Observera hur första termen i stort sett bara förskjuts, medan den andra dämpas kraftigt. Den tredje termen (transienten) är försumbar utom för mycket små värden på t. I bilden nedan ritar vi u och x tillsammans. Man ser tydligt hur bruset filtreras bort och lösningen sedan fasförskjuts. 0 5 0 0.0.5 5.0 t 7.5 0.0.5 5 0 Den svängande strängen En klassisk exempel på tillämpning av Fourierserier är Fouriers beskrivning av den svängande strängen. Vi följer här lärobokens framställning. Anmärkning om inlämningsuppgift Inlämningsuppgift, del 5 handlar om ett system av ODE med en deltafunktion i högerledet. Detta är inte helt lätt att förstå sig på, varken för oss eller för datorer. Som ett enklare
Transformer och differentialekvationer M3, 00/0 sid. 4 av 5 exempel tar jag ekvationen x (t) + x (t) + δ(t), x(0) = x (0) = 0. () Låt mig visa tre olika sätt att lösa den, som ger tre olika svar, alla felaktiga! Lösning med Mathematica. Skriv i Mathematica DSolve[x [t]+x [t]+x[t]==diracdelta[t], x[0]==0, x [0]==0}, x[t], t] Mathematicas svar kan skrivas te t (H(t) ) = te t, t < 0 0, t > 0, där H (i Mathematica UnitStep) är Heavisides stegfunktion. Lösning med Maple. Skriv i Maple dsolve((diff(x(t), t, t))+*(diff(x(t), t))+x(t)=dirac(t), x(0)=0, D(x)(0)=0}) Vi får svaret ( te t H(t) ) = te t, t < 0 te t, t > 0. Lösning 3 med Laplacetransform. Vanlig räkning med Laplacetransform ger (s + s + )X(s) = X(s) = (s + ) te t. Laplacetransformen ger bara information om positiva t, men vi verkar i alla fall ha te t, t > 0, vilket skiljer sig både från Mathematicas och Maples svar! För att reda ut detta krävs lite eftertanke. För t 0 är differentialekvationen vilket har allmänna lösningen Alltså är x (t) + x (t) + 0, (At + B)e t. (At + B)e t, t < 0, (Ct + D)e t, t > 0 för några värden på konstanterna. Observera att x(t) B då t 0 från vänster och x(t) D då t 0 från höger. Distributionsderivatan är då x (A B At)e t, t < 0, (t) = (D B)δ(t) + (C D Ct)e t, t > 0.
Transformer och differentialekvationer M3, 00/0 sid. 5 av 5 Deriverar vi en gång till får vi på samma sätt x (t) = (C D A + B)δ(t) + (D B)δ (t) + Eftersom vi vet att ekvationen är uppfylld utanför 0 så ger detta ((A B At)e t ), t < 0, ((C D Ct)e t ), t > 0. x (t) + x (t) + (C D A + B)δ(t) + (D B)δ (t) + (D B)δ(t), vilket är lika med δ(t) om D = B och C = A +. Allmänna lösningen till är alltså x (t) + x (t) + δ(t) (At + B)e t, t < 0, ((A + )t + B)e t, t > 0. Observera att ingen av dessa funktioner är deriverbar i 0 (vänsterderivatan är A B och högerderivatan A + B), så ekvationen () saknar strängt taget lösning. Om man enbart kräver att vänstergränsvärdena x(0 ) = x (0 ) är 0 får man A = B = 0, ger 0, t < 0, (3) te t, t > 0. Kräver man att högergränsvärdena x(0 + ) = x (0 + ) = 0 får man A =, B = 0, ger te t, t < 0, 0, t > 0. (4) Vi ser att vår metod med Laplacetransform gav svaret (3), medan Mathematica gav svaret (4). Maple ger helt enkelt medelvärdet av dessa två svar. Anledningen till att vår räkning med Laplacetransform hittar den lösning som är 0 till vänster har att göra med hur vi definierat L(δ(t)). Man kan ge vattentäta argument för att e as, a > 0, L(δ(t a)) = 0, a < 0, men för a = 0 måste man göra ett val. Vi har definierat L(δ(t)) =, så att e as, a 0, L(δ(t a)) = 0, a < 0. Hade vi istället definierat L(δ(t)) = 0 så hade vi hittat Mathematicas lösning och med L(δ(t)) = / Maples lösning. Vill man hitta lösningen (3) med Maple eller Mathematica kan man helt enkelt ersätta begynnelsevillkoren med x( ) = x ( ) = 0 (eller något annat negativt värde vilket som helst).