8
Practicum 1 NBGM: Forsythe & Smith Ben Matth´ e en Pieter Wuille 11 april 2005 Opgave A We kunnen controleren dat Forsythe en Smith werken door opeenvolgendeveel- termbenaderingen op te stellen van een veeltermfunctie van graad n. Vanaf een benadering van graad n zou de fout in de buurt van de machineprecisie moeten liggen. (zie figuur 1). We kunnen ook de invloed van de gewichten nagaan. Zie figuur 2 waarbij we een Gausscurve benaderden met een 6 e graads veelterm, zowel met uniforme als met Chebyshev gewichten. Opgave B Hierbij de implementatie van de gevraagde functies: function c= poly (a,b) c=a * b; function [ alfx , betx , alfy , bety , a] = forsythe2D(x,y,f , wx,wy,m,n) [ alfy , bety , b, maxresy] = forsythe(y, f, wy , n); [ alfx , betx , at , maxresx] = forsythe(x, b’, wx , m) ; a=at ’ ; -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 1 2 3 4 5 f -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 10 -20 10 -15 10 -10 10 -5 10 0 1 2 3 4 5 Figuur 1: De benaderingen en hun overeenkomstige fout 1

Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

Practicum 1 NBGM: Forsythe & Smith

Ben Matthe en Pieter Wuille

11 april 2005

Opgave A

We kunnen controleren dat Forsythe en Smith werken door opeenvolgende veel-termbenaderingen op te stellen van een veeltermfunctie van graad n. Vanaf eenbenadering van graad n zou de fout in de buurt van de machineprecisie moetenliggen. (zie figuur 1).

We kunnen ook de invloed van de gewichten nagaan. Zie figuur 2 waarbijwe een Gausscurve benaderden met een 6e graads veelterm, zowel met uniformeals met Chebyshev gewichten.

Opgave B

Hierbij de implementatie van de gevraagde functies:

function c = poly (a , b )c=a∗b ;

function [ a l f x , betx , a l f y , bety , a ] = forsythe2D (x , y , f ,wx , wy ,m, n)

[ a l f y , bety , b , maxresy ] = f o r s y t h e ( y , f , wy , n) ;[ a l f x , betx , at , maxresx ] = f o r s y t h e (x , b ’ , wx , m) ;a=at ’ ;

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

12345f

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 110−20

10−15

10−10

10−5

100

12345

Figuur 1: De benaderingen en hun overeenkomstige fout

1

Page 2: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

135f

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 1−0.2

0

0.2

0.4

0.6

0.8

1

1.2

135f

Figuur 2: De benaderingen met uniforme en Chebyshev gewichten

function matrix = smith2D ( s , t , a l f x , betx , a l f y , bety , a ,m, n )agent = smith ( s , a l f x , betx , a ’ ,m) ;matrix = smith ( t , a l f y , bety , agent ’ , n) ;

function d = poly2D ( a , b , c )d=b ’∗ a∗c ;

function b = orthog ( a l f a , beta , n )b=zeros (n+1,n+1) ;b (1 , 1 ) =1; b (2 , 1 )=−a l f a (1 ) ; b (2 , 2 ) = 1 ;for k = 2 : n ,b ( k+1 ,1)=−a l f a ( k ) ∗b( k , 1 )−beta ( k ) ∗b(k−1 ,1) ;for j =1:k−2,

b ( k+1, j +1)=b(k , j )−a l f a ( k ) ∗b(k , j +1)−beta ( k ) ∗b(k−1,j +1) ;

endb( k+1,k )=b(k , k−1)−a l f a ( k ) ∗b(k , k ) ;b ( k+1,k+1)=1;end

Zie figuur 3 voor de benadering van f(x, y) = cos(x)sin(y) op [0, 1]× [−1, 0].De coefficient van de term in x2y bedraagt ongeveer −0.5023.

Opgave C

We hebben verschillende pogingen ondernomen om de functie f(x) = Arcsin(x)te benaderen op [0, 1]. Door middel van de methode van Forsythe toe te passenop de functiewaarden zelf, hebben we equidistante punten geprobeerd en Cheby-shev punten. We hebben ook de invloed gecontroleerd van de gewichtsfunctie(die lichtjes positief was, gaf aan de randen bv. betere resultaten, maar hiervoorkan men al evengoed Chebyshev punten gebruiken), en van het herschalen vande abscissen tot [−1, 1], wat geen merkbaar verschil opleverde (wat logisch is:de x-waarden komen zowiezo al niet buiten [−1, 1]). Indien we de transformatie

p(x) = π−f(x)√1−x doorvoeren, wordt het benaderen veel eenvoudiger, we benaderen

namelijk de veelterm-expansie p(x) = a0 + a1x+ a2x2 + a3x

3 + . . . en blijkt een

2

Page 3: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

0

0.2

0.4

0.6

0.8

1

−1−0.8

−0.6−0.4

−0.20

0

0.2

0.4

0.6

0.8

1

Figuur 3: Benadering van f(x, y) = cos(x)sin(y) op [0, 1]× [−1, 0]

veel lagere graad te volstaan.Zie figuur 4.

Opgave D

We passen de methode van Forsythe toe met gewichten evenredig met de precisievan de meetwaarden (dus meetwaarden op tijdstippen 4 en 5 met gewicht 10,de rest gewicht 1).We hebben de gevraagde snelheid op het tijdstip 3 bepaald door de geschatte6e graads veelterm af te leiden en te evalueren in het punt 3. Deze waardebedroeg ongeveer 0.5191. Uit de grafiek blijkt dat tamelijk nauwkeurig te zijn,aangezien de geschatte veelterm rond 3 mooi samenvalt met de curve door demeetwaarden. Daarop kan men duidelijk zien dat de richtingscoefficient van deraaklijn in het punt 3 ongeveer 1

2 bedraagt.Zie figuur 5.

Opgave E

We zijn als volgt te werk gegaan om een benadering op te stellen voor de kans-dichtheid van de afbuiging van het elektron:

1. De functie R = f(T ) werd naar rechts verschoven zodat het punt met delaagste kans op π viel.

2. Daarna werd het stuk rechts van dat minimum over 2π naar links ver-schoven, zodat het aansloot met de rest van de functie (zodat een functiemet slechts 1 piek verkregen werd)

3. Dan werd het geheel herschaald naar [−1, 1].

4. Dit leek min of meer op een Gausscurve, met een algemeen voorschrift

f(x) = C ∗exp(− (x−a)2

b ). Dit is niet zo mooi veelterm-achtig, en dus werdhet logaritme genomen van de verdelingsfunctie.

3

Page 4: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1−0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Figuur 4: Benaderingen van f(x) = Arcsin(x): linksboven 3e graads equidis-tant; rechtsboven 3e graads Chebyshev; linksonder 8e graads Chebyshev; recht-sonder 3e graads Chebyshev na transformatie (en terugtransformatie).

0 2 4 6 8 10 12−0.5

0

0.5

1

1.5

2

0 2 4 6 8 10 12−0.5

0

0.5

1

1.5

2

Figuur 5: Benaderingen van 4e en 6e graad voor de beweging van de robotwagen.

4

Page 5: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

−1 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 10

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

−0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

0.05

0.1

0.15

0.2

0.25

Figuur 6: De benadering van de kansverdeling van de afbuiging van de elek-tronen: links de 14e graadsbenadering van de getransformeerde kansverdel-ing;rechts ingezoomd op het stuk tussen 0 en π

4 .

5. Hierop werd de methode van Forsythe toegepast. We kozen voor een 14egraads benadering (vanaf daar was er geen significante verbetering meervan de benadering; zie figuur 6).

6. Deze benadering werd numeriek geıntegreerd dmv. quad tussen −π en π,na terugtransformatie (zie eerste 3 puntjes).

7. De benadering werd herschaald door te delen door de hierboven gevondenwaarde, zodat het geheel genormaliseerd werd.

Hieruit volgde dat de kans dat een elektron een hoek maakt tussen 0 en π4

ongeveer 3.0371% was.

Opgave F

Nadat we serieus wat tijd spendeerden met het bepalen van de coordinaten vanpuntjes op de tekening, goten we deze in een matrix. Dan bepaalden we deparameter T van elk van deze punten. Deze waarde nam telkens toe met deafstand tussen twee opeenvolgende punten. Deze T werd herschaald op [−1, 1]owv stabiliteitsredenen. Hierop pasten we een Forsythe benadering toe vanenkele opeenvolgende graden. Graad 30 leek vrijwel de mooiste resultaten op televeren (vanaf een zekere graad werd het onstabiel; vanaf graad 60 was dit zelfszeer duidelijk te merken). Zie figuur 7.

De code:

function oefF ( f i l e , n )TT = linspace (−1 ,1 ,200) ;S=load ( f i l e ) ;k=s ize (S , 1 ) ;T = [ 0 ; cumsum( sqrt ( ( S ( 2 : k , 1 )−S ( 1 : k−1 ,1) ) .ˆ2+(S ( 2 : k

, 2 )−S ( 1 : k−1 ,2) ) . ˆ 2 ) ) ] ’ ;T = T∗2/T( k )−1;P = S ’ ;p l = n e w p l o t l i s t ;

5

Page 6: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

−20 0 20 40 60 80 100 120−100

−90

−80

−70

−60

−50

−40

−30

−20

−10

0

38

0 10 20 30 40 50 60 70 80 90−100

−90

−80

−70

−60

−50

−40

−30

−20

−10

0

30punten

Figuur 7: Benaderingen van de chinese 2.

l = length (n ) ;for i =1: l ,[ a l f a , beta , a , maxres ] = f o r s y t h e (T, P, ones ( s ize (T) ) ,n ( i

) ) ;PP = smith (TT, a l f a , beta , a , n ( i ) ) ;i f ( i==l ) ,

p l = a d d p l o t l i s t ( pl , num2str(n ( i ) ) ,PP( 1 , : ) ,−PP( 2 , : ) , ’− ’ ) ;

elsepl = a d d p l o t l i s t ( pl , num2str(n ( i ) ) ,PP( 1 , : ) ,−PP

( 2 , : ) , ’−. ’ ) ;endendpl = a d d p l o t l i s t ( pl , ’ punten ’ ,P( 1 , : ) ,−P( 2 , : ) , ’+k ’ ) ;d o p l o t l i s t ( pl , ’ p l o t ’ , 4 ) ;

Opgave G

Om de ergste pieken in de fouten te verminderen, bedachten we volgende meth-ode:

1. Maak eerst een benadering van een bepaalde graad met uniforme gewichts-functie.

2. Bepaal de fout die deze benadering teweeg brengt in de meetpunten (hetgegeven rooster)

3. Bepaal voor elke rij/kolom de logaritme van de gemiddelde kwadratischefout in die rij/kolom, herschaald zodat het kleinste van deze logaritmestelkens 0 is.

4. De vorige gewichtsvector voor de rijen en voor de kolommen wordt ver-menigvuldigd met 1 plus het hierboven bepaalde logaritme.

5. Deze nieuwe gezichtsvectoren worden herschaald zodat het kleinste gewicht1 is, en eventuele gewichten die dan boven de 100 uitkomen worden afge-

6

Page 7: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

knot tot 100 (kwestie van ook niet teveel belang te hechten aan de moeil-ijkste stukken en de rest niet te verwaarlozen)

6. Doe een nieuwe benadering, met die logaritmes als gewichten. Dit zorgtervoor dat dehoogste pieken in de fouten gedempt worden, ten koste vaneen licht gemiddeld nauwkeurigheidsverlies (vooral aan de randen somsduidelijk)

7. Herhaal de voorgaande stappen eventueel enkele malen, desgevallend metdezelfde graad.

Figuur 8 geeft de benadering en de fout weer bij graad n=5,15,50, gebruikmakend van de hierboven beschreven techniek (telkens 7 iteraties)

De code:

function l = oefG (N)load ’mons . mat ’ ;x=X( : , 1 ) ’ ; minX=min( x ) ; maxX=max( x ) ; sX=2∗(x−minX) /(

maxX−minX)−1;y=Y( 1 , : ) ; minY=min( y ) ; maxY=max( y ) ; sY=2∗(y−minY) /(

maxY−minY)−1;f=Z ;wX=ones ( s ize ( x ) ) ;wY=ones ( s ize ( y ) ) ;for i =1: s ize (N, 2 )n=N( i ) ;

[ a l f x , betx , a l f y , bety , a ] = forsythe2D (sX , sY , f ,wX,wY, n , n ) ;

l = smith2D (sX , sY , a l f x , betx , a l f y , bety , a , n , n) ;e = ( f−l ) . ˆ 2 ;eX = sqrt (sum( e ’ ) ) ; eX=eX . /min(eX) ;eY = sqrt (sum( e ) ) ; eY=eY . /min(eY) ;wX = wX.∗(1+ log (eX) ) ; wX=wX. /min(wX) ;wY = wY.∗(1+ log (eY) ) ; wY=wY. /min(wY) ;wX = (1− h e a v i s i d e (wX−100) ) .∗wX + 100∗ h e a v i s i d e (wX

−100) ;wY = (1− h e a v i s i d e (wY−100) ) .∗wY + 100∗ h e a v i s i d e (wY

−100) ;endfigure (1 ) ;surf (X,Y, ( abs ( f−l ) ) , f ) ;figure (2 ) ;surf (X,Y, l ) ;

7

Page 8: Practicum 1 NBGM: Forsythe & Smithsipa.be/static/periostuff/pract1.pdf · 2005-04-11 · Practicum 1 NBGM: Forsythe & Smith Ben Matth e en Pieter Wuille 11 april 2005 Opgave A We

Figuur 8: Benaderingen en hun fouten van de Olympus Mons bij graad 5, 15 en50.

8