3.6 De klassiska polynomens ortogonalitetsegenskaper.

Relevanta dokument
3.3. Interpolationsmetoder

Interpolation. 8 december 2014 Sida 1 / 20

TANA09 Föreläsning 8. Kubiska splines. B-Splines. Approximerande Splines. B-splines. Minsta kvadrat anpassning. Design av kurvor och ytor.

Interpolation Modellfunktioner som satisfierar givna punkter

Approximerande Splines. B-splines. Minsta kvadrat anpassning. Design av kurvor och ytor.

Numerisk Analys, MMG410. Lecture 13. 1/58

Kapitel 7. Numerisk derivering och integration

LAB 3. INTERPOLATION. 1 Inledning. 2 Interpolation med polynom. 3 Splineinterpolation. 1.1 Innehåll. 3.1 Problembeskrivning

Numerisk Analys, MMG410. Lecture 12. 1/24

SF1625 Envariabelanalys Lösningsförslag till tentamen

9.3. Egenvärdesproblem

Material till kursen SF1679, Diskret matematik: Lite om kedjebråk. 0. Inledning

ÖVN 11 & 12 DEL A - DIFFTRANS - DEL2 - SF Nyckelord och innehåll. Inofficiella mål

Del I: Lösningsförslag till Numerisk analys,

MAA7 Derivatan. 2. Funktionens egenskaper. 2.1 Repetition av grundbegerepp

Tentamen, del 2 Lösningar DN1240 Numeriska metoder gk II F och CL

5B1134 Matematik och modeller Lösningsförslag till tentamen den 11 oktober 2004

DERIVATA. = lim. x n 2 h h n. 2

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

4. Bestäm eventuella extrempunkter, inflexionspunkter samt horisontella och vertikala asymptoter till y = 1 x 1 + x, och rita funktionens graf.

Euler-Mac Laurins summationsformel och Bernoulliska polynom

10x 3 4x 2 + x. 4. Bestäm eventuella extrempunkter, inflexionspunkter samt horizontella och vertikala asymptoter. y = x 1 x + 1

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

NUMPROG, 2D1212, vt Föreläsning 1, Numme-delen. Linjära ekvationssystem Interpolation, Minstakvadratmetoden

3 differensekvationer med konstanta koefficienter.

Föreläsning 5. Approximationsteori

Teorifrågor. 6. Beräkna konditionstalet för en diagonalmatris med diagonalelementen 2/k, k = 1,2,...,20.

Ansvariga lärare: Yury Shestopalov, rum 3A313, tel (a) Problem 1. Använd Eulers metod II (tre steg) och lös begynnelsevärdesproblemet

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Sammanfattning (Nummedelen)

8. Euklidiska rum 94 8 EUKLIDISKA RUM

TATA42: Föreläsning 9 Linjära differentialekvationer av ännu högre ordning

Kurvanpassning. Kurvanpassning jfr lab. Kurvanpassning jfr lab

TANA17 Matematiska beräkningar med Matlab

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A. r cos t + (r cos t) 2 + (r sin t) 2) rdrdt.

ALA-a Innehåll RÄKNEÖVNING VECKA 7. 1 Lite teori Kapitel Kapitel Kapitel Kapitel 14...

Upphämtningskurs i matematik

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Kontinuitet och gränsvärden

u(x) + xv(x) = 0 2u(x) + 3xv(x) = sin(x) xxx egentliga uppgifter xxx 1. Sök alla lösningar till den homogena differentialekvationen

f(x + h) f(x) h f(x) f(x h) h

Tentamen : Lösningar. 1. (a) Antingen har täljare och nämnare samma tecken, eller så är täljaren lika med noll. Detta ger två fall:

Lipschitz-kontinuitet

Prov 1 2. Ellips 12 Numeriska och algebraiska metoder lösningar till övningsproven uppdaterad a) i) Nollställen för polynomet 2x 2 3x 1:

5B1134 Matematik och modeller Uppgifter från kontrollskrivningar och tentamina under läsåren och

Linjärisering, Jacobimatris och Newtons metod.

Lennart Carleson. KTH och Uppsala universitet

6.3. Direkta sökmetoder

Fixpunktsiteration. Kapitel Fixpunktsekvation. 1. f(x) = x = g(x).

1 Föreläsning 12, Taylors formel, och att approximera en funktion med ett polynom

Uppsala Universitet Matematiska Institutionen Thomas Erlandsson, Sebastian Pöder

Tentamen, del 2 DN1240 Numeriska metoder gk II för F

5B1146 med Matlab. Laborationsr. Laborationsgrupp: Sebastian Johnson Erik Lundberg, Ann-Sofi Åhn ( endst tal1-3

MATEMATIKPROV, LÅNG LÄROKURS BESKRIVNING AV GODA SVAR

S n = (b) Med hjälp av deluppgift (a) beräkna S n. 1 x < 2x 1? i i. och

Institutionen för Matematiska Vetenskaper TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1/TM1, TMA

Gamla tentemensuppgifter

Armin Halilovic: EXTRA ÖVNINGAR

5B1134 Matematik och modeller Lösningsförslag till tentamen den 29 augusti 2005

TAIU07 Matematiska beräkningar med Matlab

Meningslöst nonsens. December 14, 2014

där x < ξ < 0. Eftersom ξ < 0 är högerledet alltid mindre än Lektion 4, Envariabelanalys den 30 september 1999 r(1 + 0) r 1 = r.

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

Institutionen för matematik KTH. Tentamensskrivning, , kl B1210 och 5B1230 Matematik IV, för B, M, och I.

x 1 1/ maximum

Omtentamen i DV & TDV

Kapitel 7. Kontinuitet. 7.1 Definitioner

3 Deriveringsregler. Vi ska nu bestämma derivatan för dessa fyra funktioner med hjälp av derivatans definition

Trigonometriska formler Integraler och skalärprodukter Fourierserier Andra ortogonala system. Fourierserier. Fourierserier

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 26 november 2015 Sida 1 / 28

KTH Matematik Tentamensskrivning i Differentialekvationer och transformer III, SF1637.

Maclaurins och Taylors formler. Standardutvecklingar (fortsättning), entydighet, numerisk beräkning av vissa uttryck, beräkning

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Frågorna 1 till 6 ska svaras med sant eller falskt och ger vardera 1

Tentamen IX1304 Matematik, Analys , lösningsidéer

7x 2 5x + 6 c.) lim x 15 8x + 3x Bestäm eventuella extrempunkter, inflexionspunkter samt horizontella och vertikala asymptoter

KTH 2D1240 OPEN vt 06 p. 1 (5) J.Oppelstrup

Kapitel 8. Lösning av ordinära differentialekvationer

Viktiga begrepp, satser och typiska problem i kursen MVE460, 2015.

Omtentamen i DV & TDV

Konvergens för iterativa metoder

KOKBOKEN. Håkan Strömberg KTH STH

Lösningar till Tentamen i Beräkningsvetenskap II, 5.0 hp, Del A. 1. (a) ODE-systemet kan skrivas på formen

MA2001 Envariabelanalys

SF1661 Perspektiv på matematik Tentamen 24 oktober 2013 kl Svar och lösningsförslag. z 11. w 3. Lösning. De Moivres formel ger att

Approximation av funktioner

Övningshäfte 3: Polynom och polynomekvationer

Institutionen för Matematik TENTAMEN I LINJÄR ALGEBRA OCH NUMERISK ANALYS F1, TMA DAG: Fredag 16 januari 2009 TID:

HANDLEDNING TILL LABORATION I GEOMETRI

Dagens ämnen. Linjära ekvationssystem: Successiv elimination Vektorer Definitionen Grundläggande räkneoperationer Bas och koordinater Ortsvektorer

Lösningsförslag till övningsuppgifter, del V

OH till Föreläsning 5, Numme K2, Läsa mellan raderna. Allmän polynom-interpolation, S Ch 3.1.0

5 Om f (r) = 0 kan andraderivatan inte avgöra vilken typ av extrempunkt det handlar om. Återstår att avgöra punktens typ med teckenstudium.

Euklides algoritm för polynom

SF1624 Algebra och geometri Lösningsförslag till tentamen Lördagen den 5 juni, 2010 DEL A

Andra lagen. 2. Sedan man sålunda funnit, att ' a. = 1 1 h (a st.) = a : n, n n n n där a och n beteckna hela tal, definierar

Sekant och tangent Om man drar en rät linje genom två punkter på en kurva får man en sekant. (Den gröna linjen i figuren).

Veckoblad 4, Linjär algebra IT, VT2010

Lösningar till utvalda uppgifter i kapitel 1

Sidor i boken f(x) = a x 2 +b x+c

Transkript:

Vetenskapliga beräkningar III 34 3.6 De klassiska polynomens ortogonalitetsegenskaper. I nedanstående tabell anges egenskaperna för några av de vanligaste ortogonala polynomen. Polynomen är normerade så, att ortogonalitetsvillkoret b a w(x)p n (x)p m (x)dx = { 0 m n 1 m = n är uppfyllt. De satisfierar dessutom Rodrigues formel: P n (x) = 1 d n a n w(x) dx n {w(x)[g(x)]n }, om P n betecknar P n, C n (ν),... etc. Mera information om ortogonala polynom kan man t.ex. finna i M. Abramowitz and I.A. Stegun: Handbook of mathematical functions, Dover Publ., 1965. Polynomet p n (x) (a, b) w(x) g(x) a n (n + 1) 1 P n (x) ( 1, +1) 1 1 x ( 1) n n n! Legendre ] 1 Cn(x) ν ( 1, +1) (1 x ) ν 1 1 x ( 1) n n n! Γ(ν)Γ(ν+n+ 1 ) Γ(ν+ 1 )Γ(n+ν) ν Γ(ν) [ n!(n+ν) πγ(n+ν) Gegenbauer [ n!γ(α+β+n+1)(α+β+n+1) α+β+1 Γ(α+n+1)Γ(β+n+1) [ π(1+δ n0 ) Jacobi ] 1 P n (α,β) ( 1, +1) (1 x) α (1 + x) β 1 x ( 1) n n n! ] 1 T n (x) ( 1, +1) (1 x ) 1 1 x ( 1) n n Γ(n+ 1 ) π Tjebysjev ( π n n!) 1 H n (x) (, + ) e x 1 ( 1) n Hermite [ ] 1 L (α) n (x) (0, + ) x α e x x n! n! Γ(1+α+n Laguerre

Vetenskapliga beräkningar III 35 3.7 Approximation med rationella funktioner En rationell funktion är en funktion, som kan uttryckas som kvoten av två polynom. En karaktäristisk egenskap för sådana funktioner är, att om man adderar en konstant till argumentet, eller multiplicerar det med en konstant, så är den fortsättningsvis en rationell funktion. Rationella funktioner är lämpliga approximationsfunktioner isynnerhet för funktioner som har diskontinuiteter (godtyckligt stora eller godtyckligt små värden, som också kallas poler) inom det studerade intervallet, eftersom en rationell funktion också kan ha poler (nollställen i nämnaren). Antag att vi vill anpassa ett antal givna datapunkter (x i, y i ), i = 1,,... till en rationell funktion R N (x) = a 0 + a 1 x + a x +... + a n x n, (N = m + n) 1 + b 1 x + b x +... + b m xm dvs vi önskar approximera y = f(x) med R N (x), och den konstanta termen i nämnaren har valts lika med 1. Hur kan vi beräkna koefficienterna a k, b k? Antag, att f(x) kan utvecklas i en Taylorserie inom intervallet 1 x +1: f(x) = c 0 + c 1 x + c x +..., c k = f (k) (0)/k!, k = 1,,... Koefficienterna i den rationella funktionen kan då bestämmas så, att f och R N överensstämmer i x, och likaså deras derivator t.o.m. ordningen N. Detta leder till en Padé approximation för funktionen f (uppkallad efter den franske matematikern Henri Padé, som skrev en artikel om approximation med rationella funktioner år 189). Denna approximation är ofta överlägsen en trunkerad Taylorserie. Om vi avbryter Taylorserien efter N termer så kan skillnaden mellan f(x) och R N (x) uttryckas f(x) R N (x) = c 0 + c 1 x + c x +... + c N x N a 0 + a 1 x + a x +... + a n x n 1 + b 1 x + b x +... + b m x m = (c 0 + c 1 x +... + c N x N )(1 + b 1 x +... + b m x m ) (a 0 + a 1 x +... + a n x n ) 1 + b 1 x +... + b m x m Genom att sätta f(x) = R N (x) för x = 0, så får vi c 0 a 0 = 0. För att de första N derivatorna av f(x) och R N (x) skall försvinna i punkten x = 0, så måste koefficienterna för alla potenser av x i täljaren försvinna. Vi får till slut

Vetenskapliga beräkningar III 36 ett ekvationssystem med m + n + 1 ekvationer i m + n + 1 obekanta: c 0 a 0 = 0 c 1 + c 0 b 1 a 1 = 0 c + c 1 b 1 + c 0 b a = 0 c n + c n 1 b 1 +... + c 0 b n a n = 0 c n+1 + c n b 1 +... + c n m+1 b m = 0 c n+m + c n+m 1 b 1 +... + c n b m = 0,.. där c k = 0 om k < 0 och b l = 0 om l > m. Genom att lösa detta ekvationssystem, kan alla koefficienterna beräknas. En rätt bra Padé approximation för exponentialfunktionen är t.ex. R 3+3 (x) = 10 + 60x + 1x + x 3 10 60x + 1x x 3, som ger värdet.71831 för e, då den motsvarande trunkerade Taylorserien ger.71805. 3.8 Bitvist polynomisk approximation Vid polynomisk interpolation låter man vanligen samma polynom passera genom alla datapunkter. Som vi sett, leder detta till problem med polynom av hög ordning. För att undvika detta har man alltsedan 1960-talet använt sig av bitvist polynomiska funktioner. I detta fall tänker man sig att definitionsintervallet för den funktion, som skall approximeras, uppdelas på en serie underintervall medels ett antal nodpunkter, som inte behöver vara ekvidistanta. Mellan två nodpunkter tänker man sig funktionen approximerad med ett polynom av låg ordning (vanligen ett linjärt eller ett kubiskt polynom). Det enklaste fallet är en bitvist linjär approximationsfunktion. Som namnet antyder, är den alltid rätlinjig mellan två nodpunkter. För en mängd av diskreta datapunkter (x i, y i ), där y i anger ett värde av en kontinuerlig funktion, består den alltså av en bruten linje L(x), som har egenskapen L(x i ) = y i, i = 1,..., n. Allmänt kan ett godtyckligt värde av approximationsfunktionen beräknas ur formeln x x i+1 x x i L(x) = y i + y i+1, om x i x x i+1, i = 1,,..., n 1. x i x i+1 x i+1 x i Om man väljer nodpunkterna tätare, blir approximationen bättre, vilket är önskvärt. I praktiken har man dock inte alltid möjlighet att välja nodpunkterna som

Vetenskapliga beräkningar III 37 man behagar. Mellan nodpunkterna är approximationsfunktionens derivata L y i (x) = + y i+1 = y i+1 y i, om x i <x<x i+1, i = 1,,..., n 1. x i x i+1 x i+1 x i x i+1 x i Som vi ser, sammanfaller derivatan med funktionens differenskvot. Approximationsfunktionens derivata är således också en god approximation för funktionens derivata. Ett problem med den bitvist linjära approximationsfunktionen är att den har hörn. Polynom av högre ordning ger upphov till jämnare approximationsfunktioner. En vanlig approximationsfunktion av detta slag är en bitvist kubisk funktion, som är ett tredjegradens polynom mellan två närliggande nodpunkter. En approximationsfunktion av detta slag som passerar genom datapunkterna behöver dock inte vara entydig mellan nodpunkterna, utan därtill krävs att derivatorna är kontinuerliga. En approximationsfunktion som har en kontinuerlig första derivata kallas Hermites kubiska interpolant (efter Charles Hermite, lärare vid l École Polytechnique i Paris på 1800 talet). Om ytterligare den andra derivatan är kontinuerlig, kallas approximationsfunktionen för en kubisk spline funktion. Däremot lönar det sig inte att också kräva att den tredje derivatan är kontinuerlig, eftersom den är konstant. En metod att definiera en kubisk interpolant är att välja n stycken basfunktioner c i (x) och ĉ i (x), i = 1,,..., n, som alla antas vara bitvist kubiska funktioner med kontinuerliga derivator inom intervallet [x 1, x n ]. Om vi definierar c i (x i ) = 1, c i (x j ) = 0, i j, och ĉ i (x j ) = 0, i, j, så är funktionen n C(x) = [y i c i (x) + d i ĉ i (x)] i=1 en hermitesk kubisk interpolant för alla värden av d i. För derivatorna kan vi ytterligare uppställa villkoren c j(x i ) = 0, i, j och ĉ i(x i ) = 1, ĉ i(x j ) = 0, j i, som leder till n C (x k ) = [y i c i(x k ) + d i ĉ i(x k )] = d k ĉ k(x k ) = d k. i=1 En sådan approximationsfunktion är lämplig att använda, om man förutom funktionsvärdena, även känner värdena av funktionens derivata i datapunkterna. Om värdena av parametern d i är obekanta, kan man uppskatta dem utgående från datapunkterna, tex genom att tänka sig en parabel dragen genom de tre punkterna (x i 1, y i 1 ), (x i, y i ), och (x i+1, y i+1 ). Dess derivata i punkten x i är då δ i = ih i 1 + i 1 h i h i 1 + h i, om i = y i+1 y i h i. Som approximation för d,..., d n 1 kan vi då använda δ i, och 1 och n ger approximationer för d 1 resp. d n.

Vetenskapliga beräkningar III 38 3.9 Spline interpolation I många fall vill man ha en jämnare interpolationsfunktion än vad man kan åstadkomma med en vanlig kubisk interpolant. En kubisk interpolant som är definierad över intervallet [x 1, x n ], som är uppdelat i n 1 underintervall, har exakt n fria parametrar 1, vilket stämmer överens med antalet parametrar d i. Om man kräver, att andra derivatan C (x) också skall vara kontinuerlig i intervallgränserna, får man ytterligare n bindvillkor. Vid en spline interpolation har man alltså ännu kvar två fria parametrar. Ordet spline är lånat från engelskan, där det är en benämning på en elastisk mall (använd av bl.a. skeppsbyggare), som kan böjas så att den passerar genom ett antal givna punkter. Att beräkna spline interpolanter är tekniskt mer krävande än vanliga kubiska interpolanter. Vi måste uttrycka C (x) i allmän form, och därpå lösa det lineära ekvationssystem, som följer av villkoret, att andra derivatan skall vara kontinuerlig i nodpunkterna. Ekvationssystemet har dock ingen entydig lösning, emedan vi har n ekvationer med n obekanta (d i ). För att få en entydig lösning bör vi alltså uppställa några tilläggsvillkor. Exempel på sådana villkor är: 1) Ange derivatan av C(x) i punkterna x 1 och x n. I detta fall får vi en fullständig kubisk spline interpolant. ) Uppskatta derivatavärden ur datapunkterna (försiktigt!), och beräkna härur d 1 och d n. Beräkna t.ex ett uttryck för det kubiska polynom som passerar genom de fyra första datapunkterna, och beräkna därpå derivatan i x 1 och sätt d 1 lika med dess värde. Upprepa proceduren för x n. 3) Sätt C (x 1 ) = 0 = C (x n ). På detta sätt fås en naturlig spline interpolant, vilket i praktiken innebär, att spline funktionen är rätlinjig utanför dataområdet. 4) Fordra, att C (x) är kontinuerlig i punkterna x och x n 1 (icke-nodvillkoret). Detta innebär, att de kubiska funktionerna är identiska inom första och andra delintervallet, resp. det n 1:a och n:te delintervallet. Om vi använder något av dessa villkor blir koefficientmatrisen för ekvationssystemet en symmetrisk, icke singulär tridiagonal matris, och systemets lösning kräver ingen pivotering. Då spline funktionen är entydigt bestämd genom spline koefficienterna d i, kan den beräknas för alla värden av x. Ett allmänt sätt att definiera en spline funktion är följande: Antag, att det slutna intervallet [a, b] uppdelas på en räcka punkter x 0, x 1, x,... x n som uppfyller villkoret a = x 0 < x 1 <... < x n = b. En p:te gradens spline funktion med noder i punkterna x i, i = 0, 1,,..., n betecknar då en funktion s med följande egenskaper: 1 Varje polynom har fyra koefficienter (totalt 4(n 1) parametrar), dess värde i nodpunkterna skall stämma med funktionens värden ((n 1) villkor) samt derivatorna skall vara kontinuerliga i ändpunkterna (n villkor). Differensen blir därför n.

Vetenskapliga beräkningar III 39 a) Inom varje delintervall [x i, x i+1 ], i = 0, 1,..., n 1 är s(x) ett p:te gradens polynom. b) s(x) och de (p 1):a derivatorna är kontinuerliga inom intervallet [a, b]. Av denna definition följer direkt, att om s 1 (x) och s (x) är två spline funktioner av samma grad, så gäller detta också för en godtycklig linjär kombination αs 1 (x)+ βs (x). Spline funktionerna kommer således att generera ett linjärt rum. Teorin för de kubiska spline funktionerna baserar sig på följande sats, som inte här kommer att bevisas. Vi inför beteckningarna y i y i 1 x i x i 1 = h i, = d i, h i x x i 1 = t om x [x i 1, x i ]. h i Varje kubisk spline funktion med noderna x i, i = 0, 1,..., n, som interpolerar de givna värdena y i i nodpunkterna, kan inom intervallet [x i 1, x i ) beskrivas som ett polynom av formen q i (x) = ty i + (1 t)y i 1 + h i t(1 t)[(k i 1 d i )(1 t) (k i d i )t] där k 0, k 1,..., k n satisfierar det tridiagonala ekvationssystemet h i+1 k i 1 + (h i + h i+1 )k i + h i k i+1 = 3(h i d i+1 + h i+1 d i ) (i = 1,,..., n 1). (i = 1,,..., n), Emedan ovanstående ekvationssystem har n + 1 obekanta, men innehåller endast n 1 ekvationer, behövs det ytterligare två villkor för att man entydigt skall kunna bestämma spline funktionen, som vi ovan har givit exempel på. Då man använder en biblioteksrutin (t.ex. spline i MATLAB) för att beräkna en spline funktion, är det viktigt att studera dokumentationen för att komma underfund med hur spline koefficienterna beräknas. Genom jämförelse med den funktion, som använts för att beräkna datapunkterna, kan man få en uppfattning om felet vid approximationen. Om denna funktion har en kontinuerlig fjärde derivata, så kan man visa, att felet är proportionellt mot fjärde potensen av delintervallens längd, vilket säger något om snabbheten varmed felen minskar, då delningen görs tätare. Om den ursprungliga funktionen är tillräckligt jämn, kan man uppskatta dess derivator ur spline funktionens derivator. Spline funktioner kan också användas för flerdimensionell interpolation. Spline funktionerna är i viss mån överreklamerade. Det finns många exempel, bl.a. ur fysiken, på att spline approximation kan ge dåliga resultat, speciellt vid snabba förändringar i datapunkterna. Vid analys av spektra lönar det sig sålunda att använda spline funktioner endast för att approximera bakgrunden. För att undgå detta problem har man på senare tid försökt införa en spänningsparameter σ (analogt med föreställningen om ett elastiskt band), och inkludera funktioner av typen e σx och e σx i approximationsfunktionen. I allmänhet kan man säga, att det alltid lönar sig att rita en graf av interpolationsfunktionen, och jämföra den med datapunkterna, för att kunna avgöra om approximationen är förnuftig.

Vetenskapliga beräkningar III 40 3.10 Bézier kurvor och B-spline funktioner Vid datorstödd design (CAD), som numera är en ytterst viktig metod vid industriell formgivning, gäller det att interaktivt pröva olika parametrar, tills det grafiska mönstret ser riktigt ut. År 196 utvecklades program för detta av fransmännen Bézier och de Casteljau vid Renault och Citröen verken. Metoden bygger på Bernstein polynomen, som vi redan tidigare berört i samband med Weierstrass approximationsteorem. Om vi antar, att datapunkterna är givna inom det slutna intervallet [a, b], så kan den i:te Bernstein funktionen, som är ett n:te gradens polynom, uttryckas som ( ) n (b x) Bi n n i (x a) i (x) =, i = 0, 1,..., n, i (b a) n med den vanliga beteckningen för binomialkoefficienten ( ) n i n! i!(n i)!. Om n = 3, så blir de fyra kubiska Bernstein funktionerna B 3 0(x) = (b x)3 (b a), 3 B3 1(x) = 3 (b x) (x a), B 3 (b x)(x a) (b a) (x) = 3, B 3 (b a) 3(x) 3 = 3 (x a)3 (b a) 3. För att beräkna värden av Bernstein funktionerna använder man rekursionslikheterna B 0 0(x) = 1, B n 1 (x) = 0, B n i (x) = B n n+1(x) = 0 som är stabilare. (b x)bn 1 i (x) + (x a)b n 1 (b a) i 1 (x), 0 i n Eftersom alla polynomen Bi n kombinationen är av n:te graden, så gäller detta även den linjära n P n (x) = p i Bi n (x). i=0 Koefficienterna p i kan beräknas genom att lösa det linjära ekvationssystem som bildas, om man antar, att P n (x i ) sammanfaller med de n + 1 datapunkterna y i. Sambandet mellan koefficienterna p i och datapunkterna y i visar sig bli rätt så enkelt. Man kan lätt visa, att för P n (x) kommer de första och sista koefficienterna p 0 och p n att sammanfalla med datapunkterna i intervallets ändpunkter. Också

Vetenskapliga beräkningar III 41 de övriga koefficienterna kan relateras till datapunkterna, t.o.m. genom att man gissar sig fram, så att man kan få en föreställning om utseendet av P n (x) redan innan man räknat ut den! I praktiken görs detta genom att man väljer ett antal kontrollpunkter i planet. Om man låter p i vara en punkt i planet, kan man definiera en vektoriell Bézier kurva n P n (x) = p i Bi n (x). i=0 P n kommer då att följa en kurva i planet. Bézier utvidgade sin metod också till tredimensionella ytor genom att generera kartesiska produkter av två kurvor. Också om Béziers kurvor och ytor lämpar sig utmärkt för att lösa olika formgivningsproblem, behöver man rätt så komplicerade geometriska konstruktioner för att kontinuiteten skall bevaras vid gränsen mellan två kurvor eller ytor. Dessa problem kan undvikas genom att man använder spline funktioner. Vi har tidigare visat, att en kubisk spline funktion kan uttryckas i formen C(x) = [y i c i (x) + d i ĉ i (x)], i där koefficienterna d i kan beräknas genom att man löser ett linjärt ekvationssystem. Varken c i eller ĉ i är spline funktioner, eftersom de inte kan deriveras två gånger. Många gånger är det bättre att uttrycka approximationsfunktionen som en linjär kombination av spline funktioner: C(x) = i a i N 3 i (x). Vanligen används en speciell typ av kubiska spline funktioner, som kallas B-spline funktioner ( B- kommer av det engelska ordet Bellshaped, eller Basic). En kubisk B-spline funktion Ni 3 (x) för ekvidistanta noder x i,..., x i+4 kan definieras på följande sätt: (x x i ) 3, x i x<x i+1 Ni 3 (x) = 1 h 3 + 3h (x x i+1 ) + 3h(x x i+1 ) 3(x x i+1 ) 3, x i+1 x<x i+ 6h 3 h 3 + 3h (x i+3 x) + 3h(x i+3 x) 3(x i+3 x) 3, x i+ x<x i+3 (x i+4 x) 3, x i+3 x<x i+4 För alla övriga värden av x försvinner spline funktionen. Man kan då visa, att en godtycklig kubisk spline funktion kan entydigt framställas med B-spline funktioner inom intervallet [x 0, x n ]: C(x) = m+1 i= 3 a i N 3 i (x). Av denna ekvation följer att B-spline-funktionens koefficienter är analoga med Bézier kurvans koefficienter. Om man låter koefficienterna svara mot godtyckliga punkter i planet får man de såkallade Bézier B-splinefunktionerna. En förändring av B-spline funktionens koefficienter kommer därvid att ha samma effekt, som om man skulle förändra en Bézier kurvas kontrollpunkter.