Den 28 augusti 2001

Faltning av följder och funktioner

Christer O. Kiselman

Innehåll:

1. Inledning

2. Faltning av följder 2.1. Beteckningar för följder 2.2. Faltningsprodukten av två följder 2.3. Faltningsekvationer 2.4. Fouriertransformen av en faltningsprodukt

3. Faltning av funktioner 3.1. Definition av faltningsprodukten 3.2. Fouriertransformen av en faltningsprodukt Referens

1. Inledning

Under mina föreläsningar hösten 2001 på kursen Fouriermetoder för teknologer på utbildningsprogrammen Miljö- och vattenteknik och Kemiteknik följer jag boken av Håkan Sollervall och Bo Styf [1999] ganska noga. En punkt där jag går jag litet utanför boken är faltning. Här presenterar jag det grundläggande om faltning av följder och funktioner.

2. Faltning av följder

2.1. Beteckningar för följder Vi tittar först på följder som är indicerade med heltalen Z. En sådan följd är alltså en funktion på Z. Den kan till exempel ha komplexa värden. Vi skriver med vanliga funktionsbeteckningar x: Z → C. Det finns flera andra sätt att beteckna följder:

x = (x_{j})_{j∈Z} = (x(j))_{j∈Z} = (..., x(−2), x(−1), x(0), x(1), x(2), ...).

För varje heltal j ∈ Z är ett komplext tal x(j) definierat. Följden x = (x(j))_{j} innehåller oändligt många element; uppräkningen går åt två håll.

Om man skriver x(j) så syftar man på ett enda element; om man skriver (x(j)) eller (x(j))_{j} eller (x_{j})_{j} så syftar man på hela följden. Parentestecknen binder variabeln (indexet) j: x_{j} och x_{k} är inte samma sak, men (x_{j}) och (x_{k}) är precis samma följd! Man skiljer på mängder och följder: mängden {1, 2, 2, 3} har tre element; följden (1, 2, 2, 3) har fyra element eller komponenter. Mängden {1, 2, 2, 3} är lika med mängden {2, 1, 2, 3} medan följderna (1, 2, 2, 3) och (2, 1, 2, 3) är olika.

Ofta studerar man följder som indiceras med N = {0, 1, 2, 3, ...} i stället för Z. En sådan följd kan ofta med fördel identifieras med en följd som indiceras med Z och som har värdet noll för alla negativa index. Mer exakt: om vi definierar

y(j) = \{ \begin{matrix}x(j), & j ∈ N, \\ 0, & j ∈ Z ∖ N, \end{matrix}

så kan vi i nästan alla sammanhang identifera x: N → C med y: Z → C.

2.2. Faltningsprodukten av två följder Om två följder x, y: Z → C är givna, så definierar man deras faltningsprodukt x∗y genom formeln

(x ∗ y)(n) = ∑_{j∈Z} x(j)y(n − j), n ∈ Z,

förutsatt att summan existerar i någon lämplig mening. Operationen att bilda faltningsprodukten kallas faltning. Ofta kallar man även en faltningsprodukt för en faltning. Summan går över alla produkter x(j)y(k) där j och k väljes så att deras summa är n och där n är just argumentet för faltningsprodukten.

Alla följder kan inte faltas med varandra. Om vi med 1 betecknar följden (1)_{j∈Z}, alltså den vars alla element är 1, så ser vi att faltningsprodukten x ∗ 1 kan definieras om och endast om summan ∑ x(j) kan definieras, dvs. om och endast om serien är konvergent (i någon acceptabel mening). Produkten 1 ∗ 1 kan alltså inte definieras.

Om vi antar att x(j) är noll för alla j < a och att y(j) är noll för alla j < b, så existerar alltid faltningsprodukten: den ges av en ändlig summa

(x ∗ y)(n) = ∑_{j=−∞}^{∞} x(j)y(n − j) = ∑_{j=a}^{n−b} x(j)y(n − j), n ∈ Z.

Om nämligen j < a, så är faktorn x(j) noll; om j > n − b, så är n − j < b och faktorn y(n − j) är noll. Alltså överlever endast termer med a ⩽ j ⩽ n − b. Om speciellt a = b = 0, dvs. om båda följderna är noll till vänster om origo, så blir

(x ∗ y)(n) = ∑_{0}^{n} x(j)y(n − j), n ∈ Z.

Man ser att (x∗y)(n) = 0 om n < 0, ty vi har som en allmän konvention att summan över den tomma mängden är noll. Detta gör att även x ∗ y får egenskapen att vara noll för negativa index.

Vi kan alltid definiera faltningsprodukten av två följder (x(j))_{j∈N} och (y(j))_{j∈N}; den är

(x ∗ y)(n) = ∑_{j=0}^{n} x(j)y(n − j), n ∈ N,

helt i överensstämmelse med idén att identifiera en följd indicerad av N med en följd indicerad av Z vars värden är noll för negativa index.

Det finns ett neutralt element för faltningen: nämligen följden δ, som definieras av att δ(0) = 1, δ(j) = 0 för alla j ∈ Z ∖ {0}. Vi har δ ∗ x = x ∗ δ = x för alla följder x. I samband härmed kan vi definiera

δ_{k}(j) = \{ \begin{matrix}1,  j = k, \\ 0,  j ≠ k. \end{matrix}

Då gäller förstås δ_{0} = δ, och man har till exempel δ_{k} ∗δ_{m} = δ_{k+m}, k, m ∈ Z. Speciellt är δ_{−k} invers till δ_{k}.

Faltningen är kommutativ: x∗y = y∗x. Den är också associativ om vi betraktar följder på N:

x ∗ (y ∗ u) = (x ∗ y) ∗ u.

Beviset är lätt eftersom alla summor man behöver är ändliga i detta fall. Däremot är faltningen inte associativ i allmänhet, vilket följande exempel visar. Definiera H genom H(n) = 1 då n ⩾ 0, H(n) = 0 annars. Då är H ∗ (δ − δ_{1}) = δ, medan (δ − δ_{1}) ∗ 1 = 0. Vi får alltså

(H ∗ (δ − δ_{1})) ∗ 1 = δ ∗ 1 = 1, medan H ∗ ((δ − δ_{1}) ∗ 1) = H ∗ 0 = 0.

(Detta hänger samman med att produkten H ∗ 1 inte kan definieras.) För följder på N kan dessa besvärligheter inte inträffa. Man kan definiera H ∗ H till exempel, medan H ∗ 1 inte kan förekomma.

2.3. Faltningsekvationer Vi har sett att H∗(δ−δ_{1}) = δ, dvs. H och δ−δ_{1} är varandras inverser. Här är (δ−δ_{1})∗ en differensoperator, eftersom (δ − δ_{1}) ∗ x = y betyder att y(j) = x(j) − x(j − 1), medan H∗ är en summationsoperator, eftersom H∗x = u betyder att u(n) = ∑_{0}^{n} x(j) för följder som är noll på den negativa axeln.

Låt nu x vara en följd med egenskapen att x(j) = 0 för stora negativa värden på j (vi skriver j ≪ 0). Om x ≠ 0 så har x en invers. Om nämligen x(j) = 0 då j < k medan x(k) ≠ 0, så kan vi ta ett y med y(j) = 0 då j < −k och som uppfyller de oändligt många ekvationerna

x(k)y(−k) = 1, x(k)y(−k + 1) + x(k + 1)y(−k) = 0,
x(k)y(−k + 2) + x(k + 1)y(−k + 1) + x(k + 2)y(−k) = 0, ...

Trots att det är oändligt många ekvationer, så kan vi lätt lösa dem, bara det sker i en viss ordning. Vi löser först den första genom att ta y(−k) = 1/x(k), därefter den andra, som nu innehåller blott en obekant, nämligen y(−k + 1), osv.

Speciellt elegant blir detta ekvationssystem ifall k = 0 och x(0) = 1. Detta är ett specialfall, men man kan alltid reducera sig till det genom en translation och en multiplikation med konstant, så det som följer är intressant för alla faltningsekvationer. Vi ser att i detta fall så har x = δ − (δ − x) = δ − u inversen

x^{∗(−1)} = (δ − u)^{∗(−1)} = ∑_{k=0}^{∞} u^{∗k} = δ + u + u ∗ u + u ∗ u ∗ u + · · · .

Serien kallas för Neumannserien efter Karl Gottfried Neumann (1832–1925) och är ju ingenting annat än den vanliga formeln för den geometriska seriens summa, ∑_{0}^{∞} z^{k} = (1 − z)^{−1}. Det finns dock en viktig skillnad: den geometriska serien konvergerar ju endast då |z| < 1, medan faltningsserien ∑ u^{∗k} konvergerar för alla u med u(j) = 0 då j ⩽ 0, oberoende av hur stora de är. Det är till och med så att serien konvergerar på ett mycket fint sätt: för varje fixt index n så gäller att ∑_{k=0}^{∞} u^{∗k}(n) = ∑_{k=0}^{m} u^{∗k}(n) för alla m ⩾ n. Detta beror på att u^{∗k}(n) = 0 för alla k > n. Partialsumman blir alltså konstant efter ett tag om man är intresserad av värdet av inversen för ett visst index. Det gör att kalkylen är mycket lämpad för datorberäkningar. Exempel 2.3.1. Fibonacciföljden f = (1, 1, 2, 3, 5, 8, 13, ...) (efter Fibonacci, Leonardo da Pisa, Leonardus Pisanus filius Bonacci, cirka 1174 – cirka 1250) definieras av att f(n+2) = f(n+1)+f(n) för alla n ⩾ 0, och att f(0) = f(1) = 1. Om vi kompletterar den till en följd f = (f(n))_{n∈Z}, genom att sätta värdena till noll för negativa index, så innebär detta att den uppfyller faltningsekvationen f ∗(δ −u) = δ, där u = δ_{1} +δ_{2}. Alltså är f faltningsinversen till δ − u, så att, med hjälp av Neumannserien,

f = (δ − u)^{∗(−1)} = ∑_{k=0}^{∞}(δ_{1} + δ_{2})^{∗k}.

2.4. Fouriertransformen av en faltningsprodukt Fouriertransformen av en följd x: Z → C är en funktion x̂: R → C definierad av

x̂(t) = ∑ x(j)e^{−ijt}, t ∈ R,

om summan konvergerar. Denna funktion är periodisk med perioden 2π, och kan alltså definieras på cirkeln R/2πZ = R mod 2πZ. Ibland kan man definiera den för vissa komplexa t; således blir den en funktion på en viss delmängd av C/2πZ.

Sats 2.4.1. Fouriertransformen av en faltningsprodukt x ∗ y är

{ \atop (x ∗ y)}(t) = x̂(t)ŷ(t),

för de t ∈ C sådana att ∑ |x(j)e^{−ijt}| och ∑ |y(j)e^{−ijt}| konvergerar.

Bevis. Vi räknar med absolutkonvergenta serier. Vi får

{ \atop (x ∗ y)}(t) = ∑_{n}(x ∗ y)(n)e^{−int} = ∑_{n} ∑_{j} x(j)e^{−ijt}y(n − j)e^{−i(n−j)t}

= ∑_{j} x(j)e^{−ijt} ∑_{n} y(n − j)e^{−i(n−j)t}.

Om vi nu utför summationen med avseende på n, så ser vi att summan blir ŷ(t) oberoende av j: trots att j förekommer i termerna försvinner detta index efter summation. Vi har alltså fått värdet till

∑_{j} x(j)e^{−ijt}ŷ(n) = x̂(t)ŷ(t).

Transformationen förvandlar faltningsprodukten till en vanlig punktvis produkt. I boken betraktas z-transformen av en följd (x(j))_{j∈N}. Den betecknas där med

X och definieras av

X(z) = ∑_{j∈N} x(j)z^{−j},

för de komplexa z sådana att summan har en mening. För följder (x(j))_{j∈N} blir således x̂(t) = X(e^{it}) för alla komplexa t sådana att summan har mening: vi kan finna x̂ om vi känner X. Omvänt, om x̂ är given så kan vi finna X, ty vi behöver bara definiera X(z) = x̂(t), där t är ett av de komplexa tal som uppfyller e^{it} = z. Det finns flera sådana, men det spelar ingen roll vilket vi väljer, eftersom x̂ har perioden 2π.

Notera att |e^{−ijt}| = exp(− Re(ijt)) = exp(j Im t). Om vi endast har med index j ⩾ 0, så ger exponentialfunktionen exp(j Im t) ett kraftigt avtagande i j då imaginärdelen Im t är negativ. Det motsvarar att z^{−j} = e^{−ijt} avtar snabbt då j → +∞ om |z| är stort; z-transformen har då större chans att existera. Mer precist ser vi att z-transformen blir väldefinierad då |z| > r om följden x inte växer värre än att vi har en uppskattning |x(j)| ⩽ Cr^{j}, j ∈ N. Då blir också Fouriertransformen x̂(t) väldefinierad för t med imaginärdel Im t < − log r.

Vi får omedelbart av förra satsen ett resultat för z-transformen av en faltningsprodukt:

Corollarium 2.4.2. Om x = (x(j))_{j∈N} och y = (y(j))_{j∈N} är två följder som kan uppskattas med |x(j)|, |y(j)| ⩽ Cr^{j}, j ∈ N, så existerar z-transformerna X, Y, U för x, y och u = x ∗ y och de uppfyller ekvationen

U(z) = X(z)Y (z), |z| > r.

Exempel 2.4.3. Vi tittar igen på Fibonacciföljden f och faltningsekvationen f ∗ (δ − u) = f ∗ (δ − δ_{1} − δ_{2}) = δ. Om vi tar z-transformen av båda leden så får vi F (z)(1 − U(z)) = F (z)(1 − z^{−1} − z^{−2}) = 1. Således är

F (z) = \frac{1}{1 − U(z)} = \frac{1}{1 − 1/z − 1/z^{2}} = \frac{z^{2}}{z^{2} − z − 1} = \frac{Az}{z − θ_{1}} + \frac{Bz}{z − θ_{2}} ,

där θ_{1} = \frac{1}{2}(\sqrt{5} + 1) och θ_{2} = \frac{1}{2}(−\sqrt{5} + 1) är de två rötterna till z^{2} − z − 1 = 0. Man finner att A = θ_{1}/\sqrt{5}, B = −θ_{2}/\sqrt{5}. Räkningarna gäller för komplexa z med tillräckligt stort absolutbelopp; givetvis kan vi också räkna med z = e^{it} om t har kraftigt negativ imaginärdel. Detta ger upphov till Binets formel för Fibonaccitalen (Jacques Philippe Marie Binet, 1786–1856):

f(n) = \frac{1}{\sqrt{5}} (θ_{1}^{n+1} − θ_{2}^{n+1}) = \frac{1}{\sqrt{5}} ((\frac{1 + \sqrt{5}}{2})^{n+1} − (\frac{1 − \sqrt{5}}{2})^{n+1}) , n ∈ N.

För stora n är således f(n) ≈ θ_{1}^{n+1}/\sqrt{5}. Approximationen är så bra att man får rätt värde för alla n om man tar det närmaste heltalet till θ_{1}^{n+1}/\sqrt{5}.

3. Faltning av funktioner

3.1. Definition av faltningsprodukten Vi definierar nu faltningsprodukten av två funktioner f, g: R → C som h = f ∗ g, där värdena ges av

h(x) = (f ∗ g)(x) = ∫_{R} f(y)g(x − y)dy, x ∈ R,

förutsatt att integralen existerar. Vi ser att argumentet för h är summan av argumenten för f och g; man integrerar f(y)g(z) över alla y och z sådana att y + z = x, argumentet för h. Summation över Z i faltningen av två följder motsvaras här av integration över R.

Om funktionerna är sådana att de är noll till vänster om origo, så blir faltningsprodukten

h(x) = (f ∗ g)(x) = ∫_{R} f(y)g(x − y)dy = ∫_{0}^{x} f(y)g(x − y)dy, x ∈ R.

Om f och g är kontinuerliga till exempel, så existerar faltningen för alla x, ty vi behöver ju bara integrera en kontinuerlig funktion över ett slutet begränsat intervall [0, x].

Faltningen är kommutativ: f ∗ g = g ∗ f så fort den ena faltningsprodukten har mening. Den är inte associativ av samma skäl som för följder. Vi kan härma exemplet med följderna och definiera f = H, Heavisidefunktionen, g(x) = sin x då 0 ⩽ x ⩽ 2π och noll för övrigt, och h = 1. Då blir (f ∗g)(x) = 1−cos x för 0 ⩽ x ⩽ 2π och noll för övrigt. Vidare (f ∗ g) ∗ h = 2π och f ∗ (g ∗ h) = 0. (Här kan f ∗ h inte definieras.) För funktioner som är noll på den negativa axeln (och till exempel styckvis kontinuerliga) kan detta fenomen inte inträffa: faltningen är då associativ. Exempel 3.1.1. Låt oss titta på faltningen av två karakteristiska funktioner, f = χ_{[a,b]} och g = χ_{[c,d]}, där a < b och c < d. Funktionen f tar alltså värdet 1 i intervallet [a, b] och 0 utanför detta. Faltningsprodukten f ∗ g blir då en funktion som är noll utanför intervallet [a + c, b + d]. Om vi antar att d − c ⩾ b − a så kan vi beskriva f ∗ g så här. Den är noll till vänster om a + c, växer sedan med lutningen 1 från a + c till b + c, är sedan konstant lika med b − a i intervallet [b + c, a + d], avtar med lutningen −1 från a + d till b + d och är sedan noll till höger om b + d. Den är således styckvis affin, dvs. styckvis ett polynom av grad ⩽ 1. Man ser att integralen av den nya funktionen blir (b − a)(d − c), dvs. lika med produkten av de två faktorernas integraler. Vi skall snart generalisera det påståendet. Man kan sedan bilda faltningen f ∗ g ∗ h av tre karakteristiska funktioner; man får då en funktion som är styckvis ett polynom av grad ⩽ 2, osv. Om vi så bildar alla lineärkombinationer av sådana funktioner, så får vi ett lineärt rum av funktioner som är styckvis polynomiella. Man kallar dessa funktioner för splinefunktioner; ett svenskt namn som jag föreslagit är rifunktioner efter kurvritningsverktyget ri.^{1} De olika polynomen skall passa ihop så väl som möjligt, dvs. så många derivator som möjligt skall vara kontinuerliga. Så blir det automatiskt när man faltar karakteristiska funktioner.

3.2. Fouriertransformen av en faltningsprodukt

Sats 3.2.1. Fouriertransformen av en faltningsprodukt f ∗ g är

{ \atop (f ∗ g)}(ω) = f̂(ω)ĝ(ω), ω ∈ R,

1Ett ri (pluralis rin), en smal böjlig ribba som används för att rita kurvor. Ordet saknas i Svenska Akademiens Ordlista, men står i till exempel Nordisk Familjebok, andra upplagan, liksom förstås i Svenska Akademiens Ordbok. åtminstone om funktionerna är absolutintegrabla över hela reella axeln.

Bevis. Vi räknar friskt med omkastning av integrationsordningen:

{ \atop (f ∗ g)}(ω) = ∫_{R}(f ∗ g)(x)e^{−iωx}dx = ∫_{R} dx ∫_{R} dy f(y)g(x − y)e^{−iωx}

= ∫_{R} dy ∫_{R} dx f(y)g(x − y)e^{−iωx} = ∫_{R} dy f(y)e^{−iωy} ∫_{R} dx g(x − y)e^{−iω(x−y)}.

Den inre integralen kan nu beräknas, och den blir ĝ(ω) oberoende av y, trots att y förekommer. Därför blir

{ \atop (f ∗ g)}(ω) = ∫_{R} dy f(y)e^{−iωy}ĝ(ω) = f̂(ω)ĝ(ω).

Exempel 3.2.2. Vi kan nu beräkna Fouriertransformen för en rifunktion. Vi vet att den karakteristiska funktionen för intervallet [a, b] har transformen

{ \atop χ_{[a,b]}}(ω) = ∫_{a}^{b} e^{−itω}dt = [\frac{e^{−itω}}{−iω} ]_{a}^{b} = \frac{e^{−ibω} − e^{−iaω}}{−iω} , ω ∈ R ∖ \{0\}.

Då ω = 0 är integralens värde uppenbarlingen b−a, vilket också är det sista uttryckets gränsvärde då ω ≠ 0, ω → 0.

Vi får så transformen av faltningsprodukterna som vanliga produkter av dessa transformer. Exempelvis får faltningsprodukten h = χ_{[−b,b]} ∗ χ_{[−b,b]} transformen ĥ(ω) = 4ω^{−2} sin^{2} bω, definerad som 4b^{2} i origo. Därmed är det åtminstone antytt hur Fouriertransformen av en rifunktion kan beräknas.

Referens

Sollervall, Håkan, & Styf, Bo 1999 Transformteori för ingenjörer. Skebobruk: Bokförlaget Kub. ISBN 91-89104-03-X.

Författarens adress: Uppsala universitet, Matematiska institutionen,

Box 480, SE-751 06 Uppsala.

Telefon: 018-4713216 (a); 018-300708 (h) Fax: 018-4713201

Datoradress: kiselman@math.uu.se  URL: http://www.math.uu.se/~kiselman