DN1212 för M: Projektrapport. Krimskramsbollen. av Ninni Carlsund

Relevanta dokument
Tentamen del 1 SF1546, , , Numeriska metoder, grundkurs

Laboration 3. Funktioner, vektorer, integraler och felskattning

Laboration 3. Funktioner, vektorer, integraler och felskattning

DN1212 Numeriska Metoder och Grundläggande Programmering DN1214 Numeriska Metoder för S Lördag , kl 9-12

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

Sammanfattning (Nummedelen)

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

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

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

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

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

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

SF1669 Matematisk och numerisk analys II Lösningsförslag till modelltentamen DEL A

DN1212+DN1214+DN1215+DN1240+DN1241+DN1243 mfl Tentamen i Grundkurs i numeriska metoder Del 2 (av 2) Lördag , kl 9-12

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

LABORATION cos (3x 2 ) dx I =

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

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Runge-Kuttas metoder. Repetition av FN6 (GNM kap 6.

Numeriska metoder för fysiker Lördag , kl 10-14

Intervallhalveringsmetoden, GKN sid 73. Sekantmetoden, GKN sid 79

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

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 20

Laboration 4. Numerisk behandling av integraler och begynnelsevärdesproblem

Uppgift 1 R-S. Uppgift 2 R-M. Namn:...

OH till Föreläsning 14, Numme I2, God programmeringsteknik

Beräkning av integraler

DN1212+DN1214+DN1215+DN1240+DN1241+DN1243 mfl Lördag , kl 9-12 Tentamen i Grundkurs i numeriska metoder Del 1 (av 2)

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

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

Föreläsning 1. Numeriska metoder grundkurs II, DN1240. Carina Edlund Mottagningstid i rum 4516: onsdagar kl.

Denna föreläsning. DN1212 Numeriska metoder och grundläggande programmering FN Differentialekvationer. Repetition av FN5 (GNM kap 6.

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

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

TENTAMEN I GRUNDKURS I NUMERISKA METODER - DEL 2

OH till Föreläsning 12, NumMet O1, God programmeringsteknik

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

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

LÖSNINGSFÖRSLAG TILL TENTAMEN 2 SF1664

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 ( )(

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Måndagen den 16 mars 2015

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

OH till Föreläsning 15, Numme K2, God programmeringsteknik

SF1669 Matematisk och numerisk analys II Lösningsförslag till tentamen DEL A

DN1212. Numeriska metoder och grundläggande programmering. för P1, 9 hp (högskolepoäng)

Ordinära differentialekvationer,

2D1210, Numeriska Metoder, GK I för V 2.

SF1664 Tillämpad envariabelanalys med numeriska metoder Lösningsförslag till tentamen DEL A

SF1511. Numeriska metoder och grundläggande programmering. för M1, 9 hp (högskolepoäng)

Omtentamen i DV & TDV

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

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

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

Ordinära differentialekvationer,

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

Sekantens riktningskoefficient (lutning) kan vi enkelt bestämma genom. k = Men hur ska vi kunna bestämma tangentens riktningskoefficient (lutning)?

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

Föreläsning 8, Numme i2,

Rapportexempel, Datorer och datoranvändning

Betygskriterier Matematik D MA p. Respektive programmål gäller över kurskriterierna

DN1240, numo08 Stefan Knutas, Fredrik Båberg, B.10: Nalle-Maja gungar

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

Laboration 2 Ordinära differentialekvationer

DN1212. Numeriska metoder och grundläggande programmering. för Bio3, 9 hp (högskolepoäng)

Tentamen i Beräkningsvetenskap II, 5.0 hp,

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

f (a) sin

2D1240 Numeriska metoder gk2 för F2 Integraler, ekvationssystem, differentialekvationer

Föreläsningen ger en introduktion till differentialekvationer och behandlar stoff från delkapitel 18.1, 18.3 och 7.9 i Adams. 18.

Laboration 6. Ordinära differentialekvationer och glesa system

MMA127 Differential och integralkalkyl II

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.

Labb 3: Ekvationslösning med Matlab (v2)

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

PRÖVNINGSANVISNINGAR

Lösningsanvisningar till de icke obligatoriska workoutuppgifterna

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

4 Numerisk integration och av differentialekvationer

SF1625 Envariabelanalys Lösningsförslag till tentamen DEL A

Gruppuppgifter 1 MMA132, Numeriska metoder, distans

En vanlig uppgift är att bestämma max resp min för en trigonometrisk funktion och de x- värden för vilka dessa antas.

DN1212. Numeriska metoder och grundläggande programmering. för P1, 9 hp (högskolepoäng)

SF1517 (tidigare DN1212) Numeriska metoder och grundläggande programmering. för P1, 9 hp (högskolepoäng)

R AKNE OVNING VECKA 1 David Heintz, 31 oktober 2002

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Konvergens för iterativa metoder

Uppgift 1. (SUBPLOT) (Läs gärna help, subplot innan du börjar med uppgiften.) 1 A) Testa och förklara hur nedanstående kommandon fungerar.

KTH Matematik SF1633 Differentialekvationer I, för I1 Kontrollskrivning nr 2, Måndag den 31 mars 2008, kl Version: A Namn:... Personnr:...

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

DN1212. Numeriska metoder och grundläggande programmering. för T1, 9 hp (högskolepoäng)

TMA226 datorlaboration

de uppgifter i) Under m-filerna iv) Efter samlade i en mapp. Uppgift clear clc Sida 1 av 6

André Jaun, HT-2005 Anteckningar från lektioner i Numeriska Metoder fys-åk2. (Sid 93) Trapetsregeln Adaptiva metoder ODE-metod Förbehandlande metoder

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

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

v0.2, Högskolan i Skövde Tentamen i matematik

Attila Szabo Niclas Larson Gunilla Viklund Mikael Marklund Daniel Dufåker. GeoGebraexempel

Mathematica. Utdata är Mathematicas svar på dina kommandon. Här ser vi svaret på kommandot från. , x

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Kontrollskrivning KS1T

2D1212. Numeriska metoder och grundläggande programmering. för P1 och T1, 6 poäng

Transkript:

Författare: Ninni Carlsund DN1212-projekt: Krimskramsbollen Kursledare: Ninni Carlsund DN1212 för M: Projektrapport Krimskramsbollen av Ninni Carlsund. 2010-04-29 1

Författare: Ninni Carlsund DN1212-projekt: Krimskramsbollen Kursledare: Ninni Carlsund 2. Sammanfattning Kramsparametern k hos en krimskramsboll har beräknats. Den välkända kramsekvationen har lösts med hjälp av numerisk integration och ekvationslösning. Olika val av numeriska metoder diskuteras. Flera olika k-värden har funnits lösa ekvationen och ett av dem har bestämts noggrannt. 3. Innehåll Kap Rubrik Sid 1 Framsida 1 2 Sammanf attning 2 3 Innehåll 2 4 N omenklatur 2 5 P roblembeskrivning 2 6 V ald algoritm 3 7a Sekantmetoden 3 7b Högerledet 3 7c V änsterledet 4 8 N oggrannhetsbedömning 4 9 Resultat 5 10 Egenarbetsinsats 5 11 Ref erenser 5 12.1 Bilaga : Matlab kod : Huvudprogram 5 12.2 Bilaga : Matlab kod : Funktionsfil xxx.m... 7 12.3 Bilaga : Matlab kod : Funktionsfil yyy.m... 8 12.4 Bilaga : Matlab kod :... 10 4. Nomenklatur: Storhet Namn Enhet k Kramsparameter a Accelerationskonstant s 2 b Dämpningskonstanten s c Höjd offset m x Bollenspositionilngsled m y Bollenspositionihöjdled m B Sluttid s L Kurvlängd m 5. Problemställning: Höjden y(x) hos en krimskramsboll bestäms av differentialekvationsproblemet a y (x) b y (x) + k y(x) = y(x) cos(x) + c y(0) = 1, y (0) = 0 där sluttiden B är 20 sekunder, dämpningskonstanten b är 1 sekund, accelerationskonstanten a är 10 s 2 och höjd-offseten är c = 5 meter. k är en dimensionslös kramsparameter. Bestäm ett värde på k med minst tre decimaler så att bollen vid tiden B har färdats lika långt som den höjd den just då befinner sig på, dvs kurvlängden av kurvan y(x) för 0 < x < B blir densamma som y(b). Parametervärdena antas först vara exakta. 2

Finns det fler värden på k som löser problemet? ((Om a har en osäkerhet på ±1%, b har en osäkerhet på ±2% och c har en osäkerhet på ±0.1 hur noga kan då k-värdet bestämmas? - rapporten tar ej med denna deluppgift!)) 6. Vald algoritm Detta problem är en kombination av - Differentialekvationslösning (högerledet) - Integralskattning (bågländsberäkningen, dvs vänsterledet) - Ickelinjär ekvationslösning (få högerledet lika med vänsterledet) Vi har valt att lösa differentialekvationsprobelemt med Runge-Kuttas metod, integralen med trapetsregeln och ekvationen med sekantmetoden. Huvudloopen i programmet är sekantmetoden. Vi gissar ett värde på k, beräknar först högerledet mha Runge-Kuttas metod, sedan med hjälp av trapetsregeln och de från högerledet beräknade y(x)-värdena beräknar vi vänsterledet. Vi tar sedan skillnaden mellan höger- och vänsterled och kollar om detta blir noll. Om inte får vi iterera vidare med sekantmetoden tills skillnaden blir noll. 7a. Sekantmetoden Från REF1 fås formlen för sekantetoden: k n+1 = k n f(k n ) k n k n 1 f(k n ) f(k n 1 ) där f(k n ) = HL(k n ) V L(k n ) Man itererar tills k N k N 1 blir mindre än önskad noggrannhet. Sekantmetoden behöver två startgissningar på k för att kunna starta. Dessa fick vi genom att göra (rätt grova) skattningar höger- och vänsterledet för ett flertal olika värden på k. För alogoritmer, se nedan. Lösningar finns där kurvorna skär varandra. Vi valde startvärdena k 0 = X och k 1 = Y, se figur 1. FIG 1. 7b. Högerledet För att beräkna värdet av högerledet måste lösningen till differentialekvationen skattas. Det enklaste valet är Matlabs inbyggda ode45, REF2. Vi gjorde det först och beräknade högerledets värde för ett antal olika k. Pga svårigheter med att sedan beräkna vänsterledet, se nedan, bytte vi till Runge-Kuttas metod REF3 som har fix steglängd. Vi använde steglängden h = B/320. Både Runge-Kutta och ode45 kräver att man skriver om differentialekvationen till ett system av första ordningen. Vi inför därför ( ) y(x) ū = y (x) 3

med startvärdet vilket ger ū 0 = ( ) 1 0 ( ) ( ) y (x) y = ū u (x) = 2 (x) (x) a u 2 (x) b u 1 (x) + u 1 (x) cos(x) + c ˆ=f(x, ū) Runke-Kuttas metod stegar sedan fram ū(x) enligt: k 1 = hf(x n, ū n ) k 2 = hf(x n + h/2, ū n + k 1 /2) k 3 = hf(x n + h/2, ū n + k 2 /2) k 4 = hf(x n + h, ū n + k 3 ) ū n+1 = ū n + (k 1 + 2 k 2 + 2 k 3 + k 4 )/6 x n+1 = x n + h med x n = x 0 + nh, x 0 = 0 och x N = B. 7c. Vänsterledet Formeln för båglängden av kurvan y(x) mellan x = a och x = b är REF4. L = b a 1 + (y (x)) 2 dx Det enklaste sättet i Matlab att skatta en integral är med den inbyggda funktionen quad. Den kräver dock att man kan skapa en integrand-funktion som kan anropas för valfritt x. Det kan vi inte här. Vi vet inte hur funktionen för y(x) ser ut. Genom att lösa differentialekavtionen i högerledet kan vi dock beräkna värden på y(x) i utvalda punkter x. Först beräknade vi dessa y(x)-värden med ode45 men den rutinen väljer själv adaptivt (dvs varierande) steglängd, vilket gjorde integralberäkningen klurig. Vi bytte därför till differentialekvationslösaren till Runge-Kuttas metod REF3 och integrallösaren till trapetsregeln REF5 eftersom båda använder sig av fix steglängd. Vi använder således samma steglängd i både höger- och vänterledet. Trapetsregeln skattar L enligt där L(h) = h ( 1 2 g(x 0) + g(x 1 ) + g(x 2 ) + + g(x N 1 ) + 1 2 g(x N)) g(x n ) = 1 + (y (x n )) 2 Värdet på y (x n ) får vi från högerledsberäkningen. (Det är värdena i u 2 (x n )) 8. Noggrannhetsbedömning Typiska värden för krimskramsbollar av de vanligaste flimsmaterialen brukar ligga mellan 0.8 och 2.3 (REF6) så vårt värde är högst rimligt. I de tre metoderna har vi valt ett värde i vardera: avbrottskriteriet till sekantmetoden och steglängden i Runge-Kutta och trapetsregeln. Samtliga val påverkar noggrannheten i resultatet. Vi valde avbrottskriteriet i sekantmetoden till 0.5 10 5. Detta räcker till tre decimaler med god marginal. 4

Vi körde först programmet med steglängden h = B/40. Sedan halverade vi successivt steglängden tills den inte längre påverkade de intressanta siffrorna i k-värdet. h = B/320 räcker. Säkerhetskontroller: - Vi kollade att korrektionerna i sekantmetoden avtog som de bör, t n /(t n 1 t n 2 ) K, se REF1. - Vi kollade att ändringarna i k-värdet avtog en faktor 4 när h halverades (vilket skall gälla för trapetsregeln, REF5). - Vi bytte differentialekvationen till y = k och provkörde programmet. Problemet kan då lösas analytiskt och programmet gav rätt svar. 9. Resultat Då parametrarna antas exakta blir k-värdet 1.234 med tre säkra decimaler. Värdet är rimligt jämfört med de vanligaste typerna av krimskramsbollar. Enligt grafen i figur 1 syns att det finns fler värden på k som uppfyller ekvationen. Kurvorna skär varandra på flera ställen. Det skulle motsvara att krimskramsbollar av flera olika matrial kan uppfylla villkoren. (( Här skulle också komma resultatet från beräkningarna med störda parametrar.)) ********* För P kommer här ett avsnitt om granskning. M måste inte ha det. ********* 10. Egen arbetsinsats Jag har diskuterat ideer och algoritmer med framför allt Al Lihop och Inge Nalls. All kod utom dudt.m är skriven av mig. Med funktionen dudt.m fick jag hjälp av H Jälpson. 11. Referenser 1. Pohl, Grunderna i Numeriska Metoder, sid X. 2. Chapman, Programming for Engineers, sid Y. 3. Pohl, Grunderna i Numeriska Metoder, sid Z. 4. BETA,... 5. Pohl, Grunderna i Numeriska Metoder, sid W. 6. Tabellverk för Krimskramsbollar,..., sid V. 12. Bilagor: Matlab-program % proj.m = Program for...... function up=dudt(t,u);... 5