Facit Tentamen i Beräkningsvetenskap I (1TD393 - nya versionen, 5hp!)

Relevanta dokument
ELLER (fyll bara i om du saknar tentamenskod): Datum: 32 maj Bordsnummer: Kontrollera att du fått rätt tentamensuppgifter

ELLER (fyll bara i om du saknar tentamenskod): Datum: 32 maj Bordsnummer: Kontrollera att du fått rätt tentamensuppgifter

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Tentamen i Beräkningsvetenskap I (nya versionen), 5.0 hp, Del A

Facit Tentamen i Beräkningsvetenskap I (1TD393) STS ES W K1

Facit Tentamen i Beräkningsvetenskap I (1TD393) STS ES W K1

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Tentamen i Beräkningsvetenskap I/KF, 5.0 hp,

Sammanfattninga av kursens block inför tentan

Tentamen i Beräkningsvetenskap I (nya versionen), 5.0 hp, Del A

FÖRSÄTTSBLAD TILL TENTAMEN. ELLER (fyll bara i om du saknar tentamenskod): Datum: 16 januari Bordsnummer:

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Lösningsförslag Tentamen i Beräkningsvetenskap I, 5.0 hp,

Facit Tentamen i Beräkningsvetenskap I, STS ES W K1

Facit Tentamen i Beräkningsvetenskap I, STS ES W K1

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

Tentamen i Beräkningsvetenskap I, DV, 5.0 hp, OBS: Kurskod 1TD394

Tentamen i Beräkningsvetenskap I (1TD393)

Tentamen i: Beräkningsvetenskap I och KF

Tentamen i Beräkningsvetenskap I och KF, 5.0 hp,

Fallstudie: numerisk integration Baserad på läroboken, Case Study 19.9

Matematisk analys för ingenjörer Matlabövning 2 Numerisk ekvationslösning och integration

Tentamen i: Beräkningsvetenskap I och KF

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

Block 2: Lineära system

0.31 = f(x 2 ) = b 1 + b 2 (x 3 x 1 ) + b 3 (x 3 x 1 )(x 3 x 2 ) = ( ) + b 3 ( )(

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

Tentamen i Beräkningsvetenskap II, 5.0 hp,

MMA132: Laboration 2 Matriser i MATLAB

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

LABORATION cos (3x 2 ) dx I =

Block 5: Ickelineära. ekvationer? Läroboken. Löpsedel: Icke-lineära. ekvationer. Vad visade laborationen? Vad visade laborationen?

a = a a a a a a ± ± ± ±500

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

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Felfortplantning och kondition

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

NUMPROG, 2D1212, vt Föreläsning 9, Numme-delen. Stabilitet vid numerisk behandling av diffekvationer Linjära och icke-linjära ekvationssystem

2 Matrisfaktorisering och lösning till ekvationssystem

LABORATION 2. Trapetsregeln, MATLAB-funktioner, ekvationer, numerisk derivering

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

Laboration 3. Funktioner, vektorer, integraler och felskattning

Omtentamen i DV & TDV

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Konvergens för iterativa metoder

Föreläsning 14: Exempel på randvärdesproblem. LU-faktorisering för att lösa linjära ekvationssystem.

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Sekantmetoden Beräkningsmatematik TANA21 Linköpings universitet Caroline Cornelius, Anja Hellander Ht 2018

Laboration 3. Funktioner, vektorer, integraler och felskattning

Ickelinjära ekvationer

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

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

Linjära ekvationssystem

Beräkningsvetenskap introduktion. Beräkningsvetenskap I

TAIU07 Matematiska beräkningar med Matlab

Linjära ekvationssystem

Tentamen i Beräkningsvetenskap II, 5.0 hp,

SKRIVNING I VEKTORGEOMETRI

TANA17 Matematiska beräkningar med Matlab

Tentamen i Teknisk-Vetenskapliga Beräkningar

Gemensamt projekt: Matematik, Beräkningsvetenskap, Elektromagnetism. Inledning. Fysikalisk bakgrund

f (a) sin

Icke-linjära ekvationer

TMA226 datorlaboration

Varning!!! Varning!!!

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

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

DATORLABORATION FÖR KURSEN ENVARIABELANALYS 2

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Akademin för utbildning, kultur och kommunikation MMA132 Numeriska Metoder Avdelningen för tillämpad matematik Datum: 2 juni 2014

Ordinära differentialekvationer,

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

TMV166 Linjär algebra för M. Datorlaboration 2: Matrisalgebra och en mekanisk tillämpning

Ordinära differentialekvationer,

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB

Laboration: Vektorer och matriser

Rapportexempel, Datorer och datoranvändning

Tentamen del 2 SF1511, , kl , Numeriska metoder och grundläggande programmering

Kurs DN1215, Laboration 3 (Del 1): Randvärdesproblem för ordinära differentialekvationer

FMNF15 HT18: Beräkningsprogrammering Numerisk Analys, Matematikcentrum

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter

Lösningsanvisningar till vissa av de icke obligatoriska workout-uppgifterna i Beräkningsvetenskap II

TANA09 Föreläsning 5. Matrisnormer. Störningsteori för Linjära ekvationssystem. Linjära ekvationssystem

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Torsdagen den 4 juni 2015

LAB 4. ORDINÄRA DIFFERENTIALEKVATIONER. 1 Inledning. 2 Eulers metod och Runge-Kuttas metod

Numeriska metoder för ODE: Teori

Beräkningsvetenskap introduktion. Beräkningsvetenskap I

Laboration 6. Ordinära differentialekvationer och glesa system

LAB 1. FELANALYS. 1 Inledning. 2 Flyttal. 1.1 Innehåll. 2.1 Avrundningsenheten, µ, och maskinepsilon, ε M

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Standardform för randvärdesproblem

Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI

Kort sammanfattning av Beräkningsvetenskap I. Varning!!! Varning!!!

SF1625 Envariabelanalys Lösningsförslag till tentamen

Miniprojekt: Vattenledningsnätet i Lutorp 1

Transkript:

Facit Tentamen i Beräkningsvetenskap I (1TD393 - nya versionen, 5hp!) Utför överskådlig beräkning, och presentera svar på följande frågor. Det bifogade svarsarket måste användas, så lös först uppgifterna på ett kladdpapper, överför senare en ren och tydlig lösning på svarsarket. Del A Uppgift 1: Integraler Uppfyllda mål: mål 1 betyg 3, mål 3 betyg 3 a: 2p Vid integration av en funktion f(x) från a till b med trapetsformeln erhålls svaret 150.1 för steglängd h = 0.5. Vi gör nu tankeexperimentet att vi känner till det korrekta svaret och låter det vara exakt 150. Felet i vår beräkning är i så fall 0.1. Ungefär vilket fel vid motsvarande beräkning med steglängden h = 0.25 skulle du då förvänta dig (funktionsfelet antas vara försumbart)? Motivera med formel. Uppgift 1a Formler: Felet: R = b a 12 h2 f (ξ) Beräkning: 0.1/4 = 0.025 0.025 ty felet minskar med ungefär en faktor fyra vid halverad steglängd när trapetsmetoden används. b: 2p Om man vill säga att felet i Simpsons formel går snabbare mot noll än felet i trapetsformeln, kan man uttrycka sig som att Simpsons formel har högre... än trapetsformeln. Vilket är det sökta begreppet? Uppgift 1b Det sökta begreppet är noggrannhetsordning. Uppgift 2: Icke-linjära funktioner Uppfyllda mål: mål 2 betyg 3, mål 3 betyg 3 a: 1p Skriv ekvationen x+x 2 = e x på en form som lämpar sig om du vill beräkna x med Newton- Raphsons metod. Uppgift 2a f(x) = x+x 2 e x ger att vi söker det x så att f(x) = 0 b: 1p Antag att x 0 = 1. Beräkna x 1 med hjälp av en iteration med Newton-Raphson metod. Uppgift 2b 3.5496 Beräkning: f (x) = 1+2x e x x 1 = 1 1+12 e 1+2 e = 3.5496 c: 2p Toleransen är 0.5 10 1 (dvs 1 decimals noggrannhet). Kontrollera om det behövs fler iterationer för att noggrannhetskravet ska uppfyllas (dessa behöver i så fall inte utföras av dig).

Uppgift 2c Det behövs fler iterationer. Beräkning: Det absoluta felet är ungefär x 1 x 0 = 1 0.17488 = 0.82512 vilket 0.5 10 1. Noggrannhetskravet är således inte uppfyllt. Uppgift 3: a: 2p Begrepp inom beräkningsvetenskapen Uppfyllda mål: mål 1 betyg 3 Några nyckelbegrepp i den här kursen är diskretiseringsfel, maskinepsilon, underflow, overflow, iteration, konditionstal, noggrannhetsordning, adaptivitet. Nedan ser du några utskrifter från Matlab (delvis tagna från en av laborationerna i kursen). För var och en av dessa, ange ett nyckelbegrepp som är relaterat till det du ser och förklara också på vilket sätt det är relaterat. Observera att du enbart ska använda ett nyckelbegrepp per exempel. >> a = 1e-10; b = 1e-26; >> a+b ans = 1.000000000000000e-10 Uppgift 3a Maskinepsilon. I förhållande till 10 10 är 10 26 så litet att precisionen (antal värdesiffror) inte räcker till. Omskrivet är additionen 10 10 (1 + 10 16 ) och vi vet att maskinepsilon, ǫ M är det minsta tal som kan adderas till ett för att få ett resultat större än ett. Således drar vi av ovanstående slutsatsen att ǫ M > 10 16. b: 2p >> x= A\b; Warning: Matrix is close to singular or badly scaled. Results may be inaccurate. RCOND = 2.422326e-17. Uppgift 3b Begreppet är konditionstal. Matlab varnar för att matrisen är illakonditionerad och resultatet av beräkningen därför osäker. Uppgift 4: 4p Linjära ekvationssystem Uppfyllda mål: mål 2 betyg 3 En LU-faktorisering av en matris A har gett följande resultat 1 0 0 4 4 4 L = 3/4 1 0 U = 0 4 0 P = 1/4 3/4 1 0 0 1 Antag att vi har högerledet b = 0 1 0 0 0 1 1 0 0 Lös systemet Ax = b genom att använda resultatet av LU-faktoriseringen. Du ska alltså visa att du behärskar algoritmen för att lösa ekvationssystem givet en LU-faktorisering. 2 4 1

Uppgift 4 x = 6 1 6 Beräkna x genom att lösa L U x = P b. Ansätt y = U x. Då kan vi lösa ekvationen i två steg, först beräkna y ur L y = P b(framåtsubstitution) och därefter använda y för att beräkna x i U x = y (bakåtsubstitution). Alltså: 1. Beräkna P b = 0 1 0 0 0 1 1 0 0 2 4 1 = 4 1 2 Beräkning: 2. Framåtsubstitution: Beräkna y 1 ur 1y 1 +0y 2 +0y 3 = 4 ger y 1 = 4. Därefter, 0.75 4+1y 2 +0y 3 = 1 ger y 2 = 4. Sista raden ger 0.25 4 0.75 4+1y 3 = 2 ger y 3 = 6. 3. Bakåtsubstituon ger x: Först x 3 ur 0x 1 +0x 2 +1x 3 = 6 ger x 3 = 6. Därefter x 2 ur 0x 1 +4x 2 +0 6 = 4 ger x 2 = 1. Sist beräknas x 1 ur 4x 1 +4 1 4 6 = 4 ger x 1 = 6 Uppgift 5: Matlabkunskap Uppfyllda mål: mål 4 betyg 3 Nedanstående Matlab-funktion beräknar en summa: function s = harmonic(n) % if n ~= 0 s = 0; for k = 1:n s = s + 1/k; end else disp( Varning, inga termer i summan! ); s = NaN; end a: 2p Antag att du ger följande kommando: serie1 = harmonic(antal1); Vilket värde på antal1 kommer att medföra att kommandona i if-satsens else-gren utförs? Uppgift 5a Om antal1 har värdet 0 utförs else-grenen. b: 2p Vilket värde antar variabeln serie2 om du anropar funktionen med serie2 = harmonic(2);. Uppgift 5b serie2 får värdet 1.5 Beräkning: Repetitionssatsen (for) gör att beräkningen upprepas för k =1 och k=2. Första varvet: s = 0 + 1/1 ger att s får värdet 1. Andra varvet: s = 1 + 1/2 ger att s får värdet 1.5.

Del B Uppgift 6: 6p Sjön Tämnaren I en utredning om sjön Tämnaren i nordvästra Uppland mäter du sjödjupet i ett tvärsnitt av sjön där den är som bredast. Mätningen går till så att du åker båt längs en rät linje från ena stranden av sjön till den andra. På olika ställen längs vägen mäter du sjödjupet med ekolod. Låt x 0 = 0 vara koordinaten för vänstra stranden, x n koordinaten för högra stranden och x j,j = 1,...,n 1, koordinaterna för mätpunkterna. Mätvärdet vid punkten x j betecknar vi med d j. Vid de två strandpunkterna är djupet noll. Djupmätningarna kan av praktiska skäl inte göras med helt jämna mellanrum i x-led, utan avståndet mellan intilliggande mätpunkter varierar. Skriv nu ett program i Matlab, som beräknar arean av det aktuella tvärsnittet av sjön genom att använda någon av de beräkningsalgoritmer som har ingått i kursen. Samtliga mätvärden ska utnyttjas. I ditt program ska du förutsätta att x- och d-värdena finns lagrade i två vektorer x respektive d, som finns sparade i filen measurements.mat. I den här uppgiften får du högre poäng om du själv formulerar beräkningsalgoritmen i Matlab, lägre poäng om du använder ett inbyggt Matlab-kommando för algoritmen. För full poäng krävs dessutom att du argumenterar för varför den algoritm du valt är den lämpligaste i detta fall, bland de algoritmer som ingått i kursen. Det blir inget avdrag för rena matlabfel, så länge det framgår att programmet i princip är korrekt.

Uppgift 6 En lösning motsvarande mål 2, betyg 4, ska i princip innehålla följande: Beräkningen av tvärsnittsarean är detsamma som beräkning av integralen: xn x 0 d(x)dx där d(x) är djupet vid position x. Denna integral kan beräknas numeriskt med användning av de givna mätvärdena. Vi väljer att göra detta med trapetsformeln. Eftersom mätpunkterna ligger med ojämna mellanrum, så måste vi tillämpa trapetsformeln på varje delintervall för sig och sedan summera resultaten. En lösning som därtill motsvarar mål 2, betyg 5 innehåller en argumentation i stil med nedanstående: De två metoder för numerisk kvadratur som har ingått i kursen är trapetsformeln och Simpsons formel. Simpsons formel förutsätter att det åtminstone är lika avstånd mellan punkterna i varje dubbelintervall. Detta villkor är inte uppfyllt i det aktuella fallet. Trapetsformeln går däremot att tillämpa här, på det sätt som beskrivits ovan. Trapetsformeln är därför den enda av de metoder som ingått i kursen, som går att använda i detta fall. En lösning som dessutom motsvarar mål 4, betyg 3 innehåller ett program i stil med: load measurements.mat area = trapz(x,d) disp( Area: num2str(area) kvadratmeter ) En lösning som motsvarar mål 4, betyg 4 innehåller i stället ett program i stil med: load measurements.mat n = length(x); area = 0; for i = 1:n-1 area = area + 0.5*(x(i+1)-x(i))*(d(i+1)+d(i)); end disp( Area: num2str(area) kvadratmeter ) Uppgift 7: 6p Sensormätdata från vattenkraftverk Uppfyllda mål: x:4 I ett vattenkraftverk finns s stycken sensorer utplacerade. Mätdata från dessa skickas med tidsintervallet 10 5 sekunder till en dator som utför 10 9 flyttalsoperationer per sekund. Mätvärdena lagras i en vektor v. Denna vektor används för att ställa upp ekvationssystemet Ac = b, där A är en s s-matris och b en s 1-vektor. Lösningsvektorn c innehåller kontrollvariabler, som används för automatisk reglering av kraftverket. Matrisen A är konstant över tid, medan vektorn b beror på mätvärdena i v. För varje nytt ekvationssystem som ska lösas kommer det alltså att vara ett nytt högerled, men samma matris. Koefficientmatrisen A är full, det vill säga flertalet värden i matrisen är nollskilda. Frågan är nu: om man löser ekvationssystemet på lämpligt sätt, hur många sensorer går det då att ha, om datorn ska hinna beräkna c för en uppsättning mätdata innan nästa uppsättning mätdata kommer in till datorn?

Uppgift 7 En lösning som motsvarar mål 1, betyg 5 innehåller i princip nedanstående: Antalet sensorer påverkar ekvationssystemets storlek. Med s sensorer får vi s ekvationer och s obekanta. Exekveringstiden för att lösa ekvationssystemet beror på problemstorleken och kan alltså i detta fall uppfattas som en funktion t(s). För att datorn ska hinna beräkna c innan nästa uppsättning mätdata kommer måste det gälla att t(s) 10 5. Vi söker det största värde på s för vilket detta gäller. En lösning som dessutom motsvarar mål 2, betyg 4 innehåller även något i stil med: I det här fallet har alla ekvationssystemen samma koefficientmatris A. Endast högerledet beror på de inkommande mätvärdena. Det är en typisk situation när det är lämpligt att använda LU-faktorisering. Man kan LU-faktorisera A en gång för alla, innan mätvärdena börjar strömma in. Tiden t(s) för att lösa ekvationssystemet, givet L, U och P, kommer då att vara proportionell mot n 2 (i stället för proportionell mot n 3, som vore fallet om vi inte utnyttjade LU-faktoriseringen), eftersom A är en full matris. För att motsvara mål 3, betyg 4 ska lösningen därtill i princip innehålla följande: Med ovanstående val av beräkningsmetod gäller närmare bestämt att t(s) = 2s 2 t f, där t f är tiden för en flyttalsoperation. Eftersom det i detta fall utförs 10 9 flyttalsoperationer per sekund, så är t f här 10 9 sekunder. För att datorn ska hinna lösa ekvationssystemet innan nästa uppsättning mätdata inkommer får alltså s högst vara så stort att 2s 2 10 9 = 10 5. Slutsatsen blir att s = 10 2 / 2 70. Det går att ha högst 70 sensorer. Uppgift 8: Vattenflöde i rörledning I en av kursens laborationer arbetade du med följande modell för vattenflödet F i en rörledning med radie r 0 : Uppfyllda mål: x:5 F(r 0 ) = r0 0 2πrv(r)dr a: 6p På din nya arbetsplats får du uppgiften att skriva ett program i Matlab, där användaren får mata in ett flödesvärde C. Programmet ska sedan använda modellen ovan för att bestämma rördimensionen r 0 så att flödet blir precis C. Det förutsätts att den som använder programmet tillhandahåller en fil v.m, med en matlabfunktion för vattnets strömningshastighet v(r). Visa hur ditt program kan utformas så att det löser problemet genom att använda Matlabs inbyggda kommandon quad och fzero. Det förutsätts att du känner till ungefär hur anropen till dessa kommandon ser ut. I övrigt ger rena matlabfel inget avdrag, så länge det framgår att algoritmen i princip är riktig.

Uppgift 8a En lösning motsvarande mål 2, betyg 5 innehåller i princip följande: Vattenflödet F kan betraktas som en funktion av r 0. Uppgiften gäller att finna r 0 så att F(r 0 ) = C, där C är ett givet värde. Detta är en ickelineär ekvation, eftersom F(r 0 ) är en icke-lineär funktion. Icke-lineära ekvationer kan i Matlab lösas med fzero, som då förutsätter att ekvationen är omformulerad så att högerledet är 0. Vi formulerar alltså ekvationen som g(r 0 ) = 0, där g(r 0 ) = F(r 0 ) C. För att fzero ska kunna lösa ekvatiionen måste g(r 0 ) implementeras som en Matlab-funktion g(r0). I beräkningen av g(r 0 ) ingår beräkningen av F(r 0 ), som är en integral av f(r) = 2πrv(r) och alltså kan hanteras av Matlabs inbyggda funktion quad, som i sin tur förutsätter att integranden f(r) finns implementerad som en Matlab-funktion f(r). För att motsvara mål 4, betyg 5 ska lösningen dessutom innehålla ett i princip korrekt program baserat på ovanstående idé: I filen f.m finns: function y = f(r) y = 2*pi*r*v(r); I filen g.m finns: function y = g(r0) global C y = quad(@f,0,r0) - C; Huvudprogrammet kan nu formuleras exempelvis så här: global C C = input( Ange önskat flödesvärde: ); a = 0; b = 1; while g(b) < 0, b = 2*b; end [r0, gr0] = fzero(@g,[a b]); disp([a För att ge önskat flöde ska rörets radie vara: num2str(r0)]) I programmet ovan bygger beräkningen av ett lämpligt startintervall [a b] på observationen att g(0) = 0 C < 0. Vi sätter alltså a = 0 och söker sedan en övre intervallgräns b så att g(b) 0. nar en uppskattning av felet i det beräknade r 0 -värdet, enligt ovanstående idé. För att motsvara mål 3, betyg 5 ska lösningen vara ungefär så här: I kursen har vi visat att om x är den exakta men okända lösningen till f(x) = 0 och x är ett närmevärde till x, så gäller det att: x x = f( x) / f (η), där η är en punkt mellan x och x. Det exakta värdet på η är inte känt, men om x är någorlunda nära x kan vi få en rimligt närmevärde till felet genom att anta att f (η) f ( x), vilket leder till: x x f( x) / f ( x). I det aktuella fallet kan vi tillämpa denna ungefärliga feluppskattning. Låt r 0 beteckna den exakta lösningen till vårt problem och r 0 den lösning som beräknas av fzero. Feluppskattningen ovan kan med beteckningarna i vårt problem uttryckas: r 0 r 0 g( r 0 ) / g ( r 0 ). Vi kan inte direkt tillämpa denna felformel i vårt program, eftersom vi inte har tillgång till funktionen g. Men enligt den idé som beskrivs i uppgiftstexten, så kan vi beräkna ett närmevärde till g (r 0 ) genom: g (r 0 ) (g(r 0 +h) g(r 0 ))/h, för någon lämplig, liten steglängd h. Man kan diskutera mera ingående vad som är ett lämpligt värde på h, men här sätter vi helt enkelt h = 0.1. Ovanstående idé, implementerad i Matlab som ett tillägg till huvudprogrammet ovan, kan se ut så här: gprimr0 = (g(r0+0.1)-gr0)/0.1; fel = abs(gr0/gprimr0); disp([ Absoluta felet i den beräknade radien är till beloppet ca: num2str(fel)])

Uppfyllda mål: x:5 b: 2p Följande är ett utdrag från Matlabs hjälptext för fzero: [X,FVAL]= FZERO(FUN,...) returns the value of the function described in FUN, at X. I ett tidigare avsnitt av hjälptexten framgår det att X är det ungefärliga nollställe till FUN som fzero har funnit. Värdet FVAL tillsammans med information om derivatan av FUN i punkten X kan användas för att beräkna ett ungefärligt värde på absoluta felet i X. I ditt program ovan har du inte tillgång till derivatan, men du skulle kunna beräkna en approximation av derivatan, enligt den formel som vi använde i en av kursens laborationer. Din chef vill nu att du i slutet av ditt program från (a) ska lägga till några rader, som beräknar en uppskattning av felet i det beräknade r 0 -värdet, enligt ovanstående idé. Uppgift 8b Se 8a Formler: Beräkning: Se 8a f (x) f(x+h) f(x h) 2h