Beräkningsvetenskap I/KF Sept 2015 Laboration: Integraler Inledning Integraler är ofta av karaktären att de överhuvudtaget inte kan lösas analytisk. Det kan bero på att det är mycket svårt att hitta en sådan lösning, men ibland även därför att det inte finns någon (känd) analytisk lösning. Det är därför ofta numeriska metoder som används. Kort introduktion 1. Principen vid numerisk integrering är att intervallet delas in i delintervall och på varje sådant delintervall approximeras integranden med en enklare funktion. Den enklare funktionen är sådan att den kan integreras exakt med ett formeluttryck. Integralens värde approximeras då med summan av delintervallens integraler. 2. Det finns flera olika metoder för integrering. Två enkla metoder heter Trapetsmetoden respektive Simpsons metod. Vi ska här med två demoprogram titta på hur dessa två metoder fungerar principiellt. Att göra sedan du läst introduktionen ovan 1. Demo av Trapetsmetoden och Simpsons metod Ladda ner Matlab-filerna quaddemo.m från kurshemsidan. Ladda dessutom ner func1.m. Funktionen quaddemo innehåller ett demoprogram för Trapetsmetoden och Simpsons metod, och func1 är Matlab-funktioner som definierar integranden f(x) = cos(2x)+sin(x) a) Lös med quaddemo integralen 2π ∫ cos(2x) + sin(x) dx −π Observera att integranden finns definierad i func1 och att denna funktion ska vara inparameter till quaddemo. Använd inte för många intervall utan testa med t ex 10, 20 och 30 intervall. För att veta hur quaddemo ska anropas läser du hjälptexten (help quaddemo). Observera att du inte ska ändra, editera några filer. Du ska enbart använda filerna. b) Funktionen func1 kan även beräkna f(x) = cos(p1·x)+sin(p2·x) för olika värden på p1 och p2. Testa att beräkna integralen av f(x) med olika värden på p1 och p2. Läs hjälptexten för hur man gör. Var uppmärksam på: > > > > Hur antalet intervall är kopplat till hur noggrann lösningen verkar bli Hur man i grafiken kan se diskretiseringsfelet Hur val av metod (Trapets eller Simpson) verkar påverka noggrannheten Hur de båda metoderna verkar fungera principiellt. Försök ”härleda” metoderna utgående från grafiken (åtminstone för Trapetsmetoden är det möjligt). Beräkningsvetenskap I/KF Sept 2015 2. Demo av Simpsons metod med adaptivitet I quaddemo ovan var du tvungen att ange hur många intervall området skulle delas in i, dvs vilken diskretisering som skulle användas. I MATLABs inbyggda funktioner för integrering behöver man inte ange antalet intervall. Istället hittar funktionerna själva intervall som gör att lösningens noggrannhet uppfyller en viss tolerans. Sådana metoder kallas adaptiva och du ska nu titta på hur Simpsons metod fungerar när man lagt till sådan adaptivitet. Ladda ner MATLAB-funktionen adaptsimp.m från kurshemsidan. Denna innehåller en demoversion av adaptiv Simpsons metod. c) Lös samma integraler som i deluppgift 1 ovan (använd func1). Observera att man här inte kan variera antal intervall utan man varierar noggrannheten. Testa med lite olika val av noggrannhet och se vad som händer. Testa även olika värden på p1 och p2 på samma sätt som i uppgift b). Var uppmärksam på: Ø Hur steglängden ”ser ut” här i jämförelse med metoderna utan adaptivitet (principiell skillnad) Ø Hur integrandens ”utseende” påverkar steglängden
© Copyright 2024