Simulering I. Don t panic! * Morten Dam Jørgensen. * Large friendly letters

Relaterede dokumenter
Programmering. Det rent og skært nødvendige, det elementært nødvendige! Morten Dam Jørgensen

1. Bevægelse med luftmodstand

Matematisk modellering og numeriske metoder

Bevægelse med luftmodstand

Newtons love - bevægelsesligninger - øvelser. John V Petersen

Matematisk modellering og numeriske metoder. Lektion 1

Dynamik. 1. Kræfter i ligevægt. Overvejelser over kræfter i ligevægt er meget vigtige i den moderne fysik.

Matematisk modellering og numeriske metoder. Lektion 13

Kræfter og Arbejde. Frank Nasser. 21. april 2011

Lektion 8 Differentialligninger

Brugsvejledning for Frit fald udstyr

Matematisk modellering og numeriske metoder. Lektion 19

Danmarks Tekniske Universitet

En verden af fluider bevægelse omkring en kugle

Computerstøttet beregning

Eulers metode. Tom Pedersen //Palle Andersen. Aalborg University. Eulers metode p. 1/2

Test grafisk afledede Højere partielle afledede Differentiationsordenen er ligegyldig Partielle differentialligninger Test Laplaces ligning

Projekt 4.9 Bernouillis differentialligning

Dokumentation - Del 3 Måling og modellering af turbulent strømning og partikelspredning

MM502+4 forelæsningsslides. uge 6, 2009

Kinematik. Lad os betragte en cyklist der kører hen ad en cykelsti. Vi kan beskrive cyklistens køretur ved hjælp af en (t,s)-tabel, som her:

Løsningsforslag til fysik A eksamenssæt, 23. maj 2008

Vektorfunktioner. (Parameterkurver) x-klasserne Gammel Hellerup Gymnasium

Danmarks Tekniske Universitet

Matematik A. Højere teknisk eksamen. Forberedelsesmateriale. htx112-mat/a

Peter Ahlgren & Henrik Dahl Nykredit Portefølje

Kuglers bevægelse i væske

Numeriske metoder i matlab

Lektion ordens lineære differentialligninger

Naturvidenskab. En fællesbetegnelse for videnskaberne om naturen, dvs. astronomi, fysik, kemi, biologi, naturgeografi, biofysik, meteorologi, osv

Introduktion til Laplace transformen (Noter skrevet af Nikolaj Hess-Nielsen sidst revideret marts 2013)

Opgaver til Maple kursus 2012

Matematisk modellering og numeriske metoder. Lektion 11

Matematisk modellering og numeriske metoder. Overskrifter

Numeriske metoder 2011: Adams-Bashforth-Moulton Predictor-Corrector method

Formelsamling til Fysik B

Matematik A. Studentereksamen

Klasse 1.4 Michael Jokil

Numeriske metoder - til løsning af differentialligninger - fra borgeleo.dk

Matematik A. Studentereksamen

Matematisk modellering og numeriske metoder. Lektion 13

i x-aksens retning, så fås ). Forskriften for g fås altså ved i forskriften for f at udskifte alle forekomster af x med x x 0

FY01 Obligatorisk laboratorieøvelse. Matematisk Pendul. Jacob Christiansen Afleveringsdato: 10. april 2003 Morten Olesen Andreas Lyder

Kræfter og Energi. Nedenstående sammenhæng mellem potentiel energi og kraft er fundamental og anvendes indenfor mange af fysikkens felter.

BASE. Besvarelse til individuel skriftlig test

Reaktionskinetik - 1 Baggrund. lineære og ikke-lineære differentialligninger. Køreplan

Tyngdekraft i Scratch

Her skal vi se lidt på de kræfter, der påvirker en pil når den affyres og rammer sit mål.

Eksamen i fysik 2016

1. Kræfter. 2. Gravitationskræfter

Resonans 'modes' på en streng

July 23, FysikA Kvantefysik.notebook

Gaslovene. SH ver Hvad er en gas? Fysiske størrelser Gasligninger... 3

Cresta Asah Fysik rapport 16 oktober Einsteins relativitetsteori

Lektion 12. højere ordens lineære differentiallininger. homogene. inhomogene. eksempler

At bringe en bemandet rumkapsel til sikker landing

Undervisningsbeskrivelse

1. Tryk. Figur 1. og A 2. , der påvirkes af luftartens molekyler med kræfterne henholdsvis F 1. og F 2. , må der derfor gælde, at (1.1) F 1 = P.

Differentialligninger

Faldmaskine. , får vi da sammenhængen mellem registreringen af hullerne : t = 2 r 6 v

Varmeligningen og cosinuspolynomier.

I Indledning. I Indledning Side 1. Supplerende opgaver til HTX Matematik 1 Nyt Teknisk Forlag. Opgaverne må frit benyttes i undervisningen.

Bernoulli s lov. Med eksempler fra Hydrodynamik og aerodynamik. Indhold

Energien i Vinden. Side 1 af 16. Hvor meget af vindens energi kan man udnytte?? Senest Redigeret 21/

Lektion ordens lineære differentialligninger

Fysik 2 - Den Harmoniske Oscillator

DIFFERENTIALREGNING Hvorfor er himlen blå?

Danmarks Tekniske Universitet

b. Sammenhængen passer med forskriften for en potensfunktion når a = 1 og b= k.

Vigtige ting der ikke står i fysikbogen

Modeldannelse og simulering

David Kallestrup, Aarhus School of Engineering, SRP-forløb ved Maskinteknisk retning 1

Undervisningsbeskrivelse

Matematisk modellering og numeriske metoder. Lektion 6

Teoretiske Øvelser Mandag den 13. september 2010

FYSIKOPGAVER KINEMATIK og MEKANIK

Lineære differentialligningers karakter og lineære 1. ordens differentialligninger

2. ordens differentialligninger. Svingninger.

Matematisk modellering og numeriske metoder. Lektion 5

Kasteparabler i din idræt øvelse 1

Skråplan. Esben Bork Hansen Amanda Larssen Martin Sven Qvistgaard Christensen. 2. december 2008

Danmarks Tekniske Universitet

MM501 forelæsningsslides

Matematik A. Studentereksamen

Modellering af grundvandsstrømning ved Vestskoven

Workshop i differentialligninger

Opgavesamling Matematik A HTX

Klassificering af vindhastigheder i Danmark ved benyttelse af IEC vindmølle klasser

Matematik A. Studentereksamen. Tirsdag den 27. maj 2014 kl Digital eksamensopgave med adgang til internettet. 2stx141-MATn/A

Matematisk modellering og numeriske metoder. Lektion 17

Lektion 13 Homogene lineære differentialligningssystemer

Mini SRP. Afkøling. Klasse 2.4. Navn: Jacob Pihlkjær Hjortshøj, Jonatan Geysner Hvidberg og Kevin Høst Husted

Transkript:

Simulering I Don t panic! * Morten Dam Jørgensen * Large friendly letters

Oversigt Hvad I skal tage med fra denne forelæsning Hvad er simulering Fra model til simulering Numerisk løsning af differentialligninger Frit fald Luftmodstand Sammenligning med den analytiske løsning En advarsel om præcision Et ikke-mekanisk system Conway s Life Simulation is the imitation of some real thing, state of affairs, or process. The act of simulating something generally entails representing certain key characteristics or behaviours of a selected physical or abstract system. wikipedia.org

Hvad er det I skal lære? Fra mig: En måde at tænke på Praktisk træning: Lab øvelsen i denne uge Resten af Mek1 og Mek2: Bliv gode til at omsætte fysiske problemstillinger til simuleringer (tænk struktureret). Statistik: Test af simulering i forhold til eksperiment (indirekte hypotesetest).

Fysik = Ændringer Fysikkens store kvalitet er at den bygger på et kvantitativt grundlag. Det er (typisk) ændringerne af en given størrelse vi opfatter som fysisk. Differentialligninger er grundlaget for den teoretiske beskrivelse af stort set alle fysiske fænomener.

Ingredienser Model (Et sæt differentialligninger) Begyndelsesbetingelser (Positionen af objekterne i vores system) Randbetingelser (Definition af fysikken omkring systemets grænser)

Ingredienser Model (Et sæt differentialligninger) Begyndelsesbetingelser (Positionen af objekterne i vores system) Randbetingelser (Definition af fysikken omkring systemets grænser) Model Ændringen i acceleration skal være proportional med kraftpåvirkningen Den elektromotoriske kraft genereret er proportional med ændringen i den magnetiske fluks i systemet Begyndelsesbetingelser Raketten befinder sig på et sfærisk objekt med en masse på 10 22 kg, med en ækvatoriale hastighed på 465 m/s Gletsjerens hastighed er 28 m/ døgn, den er 2 km tyk med et areal på 110.000 km 2 Randbetingelser Partiklerne er spærret inde i en tæt og restitutionsløs boks med dimensionerne: 20x20x20 cm Bilens maksimumshastighed er begrænset til 210 km/t Vejen skifter fra asfalt til grus efter 400 m

Luftens bevægelse omkring en flyvinge Randbetingelser Randbetingelser fluid hastighed = 0 ved vingerne Navier-Stokes Model for fluid bevægelse Begyndelsesbetingelser Flyets hastighed, position af vingerne, luftens viskositet, volumen, densitet...

Frit fald Et objekt i frit fald (uden luftmodstand) HHGTTG Vi antager at tyngdeaccelerationen er konstant: F g = mg Vi kan benytte Newtons 2. lov til at finde positionen y(t) ved at sætte F = Fg m d2 y dt 2 = F d 2 y dt 2 = g Vi ønsker at løse denne 2. ordens-differentialligning...

Frit fald 2-ordens ligning For at lette den numeriske løsning omskriver vi, d 2 y dt 2 = g Til et system af to 1. ordens differentialligninger, dy dt = v dv dt = g (Analytisk løsning) y(t) = y(0) + v(0)t v(t) = v(0) + v(0) 1 2 gt2 gt Husk Enhver normal differentialligning (ODE) af n-orden kan omskrives til et system af n første-ordens differentialligninger.

Frit fald Vi kan approksimere de afledede, hvis vi husker grundantagelsen bag differentiering, og i stedet laver endelige skridtstørrelser t... y(t + t) y(t) t v(t + t) v(t) t = v(t) = g lim t!0! dy dt = v dv dt = g

Frit fald Differensligningen kan nu omskrives sådan at vi får den næste værdi af funktionen y(t) givet den forrige og ændringsforholdet. y(t + t) y(t) t v(t + t) v(t) t = v(t) = g t & 0 For små men endelige t værdier, kan vi omskrive udtrykket for y(t+ t) y(t + t) =y(t)+v(t) t v(t + t) =v(t) g t

Frit fald y(t + t) =y(t)+v(t) t v(t + t) =v(t) g t Vi kan nu løse differens - ligningerne med summering, som numerisk analogi til integration ved analytisk løsning. g = -9.8; y0 = 100; v0 = 0; % start y = y0; v = v0; % sæt start t = 0; dt = 0.1; % tid % Euler metoden while y > 0 % stop ved y=0 t = t + dt; y = y + v.* dt; v = v + g.* dt; plot(t,y,'b+') end % Analytisk løsning t = 0:0.1:t; y = y0 + v0 + (0.5.* g.* t.^2); plot(t,y,'r')

Frit fald y(t + t) =y(t)+v(t) t v(t + t) =v(t) g t g = -9.8; y0 = 100; v0 = 0; % start y = y0; v = v0; % sæt start t = 0; dt = 0.1; % tid % Euler metoden while y > 0 % stop ved y=0 t = t + dt; y = y + v.* dt; v = v + g.* dt; plot(t,y,'b+') end % Analytisk løsning t = 0:0.1:t; y = y0 + v0 + (0.5.* g.* t.^2); plot(t,y,'r')

Frit fald Spørgsmål: Hvis vi ville indføre luftmodstand (drag), hvordan skulle vi bære os ad? ~F drag = 1 2 ~v2 C d A g = -9.8; y0 = 100; v0 = 0; % start y = y0; v = v0; % sæt start t = 0; dt = 0.1; % tid % Euler metoden while y > 0 % stop ved y=0 t = t + dt; y = y + v.* dt; v = v + g.* dt; plot(t,y,'b+') end ~v Densitet af mediet (luft) Hastigheden af legemet relativt til mediet C d A Drag koefficient (dimensionsløs) Tværsnittet af objektet i bevægelsesretningen http://en.wikipedia.org/wiki/drag_(physics)

Frit fald ~v C d A ~F drag = 1 2 ~v2 C d A Densitet af mediet (luft) Hastigheden af legemet relativt til mediet Drag koefficient (dimensionsløs) Tværsnittet af objektet i bevægelsesretningen http://en.wikipedia.org/wiki/drag_(physics) F drag (v n )=ma drag (v n ) a drag (v n )=F drag (v n )/m v drag = v tyngde = tf(v)/m tg v n+1 = v n + v drag + v tyngde g = -9.8; y0 = 100; v0 = 0; % start y = y0; v = v0; % sæt start m = 1; % masse af objekt rho = 0.1; C_d = 1.2; A = 1; t = 0; dt = 0.1; % tid while y > 0 % stop ved y=0 t = t + dt; y = y + v.* dt; end dv_g = g.* dt; dv_d = dt./m.*... (0.5*rho* v^2*c_d*a); v = v + dv_g + dv_d plot(t,y,'b+')

Frit fald Hvis vi hopper ud fra en Airbus A380 i 10 kilometers højde, har har ændringen i atmosfærens densitet så betydning? Let s find out! ~F drag = 1 2 (y)~v 2 C d A En adiabatisk atmosfære (don t ask): rho0 = 1.2; % kg/m^4-1 gamma = 1.4; y0 = 29400; % m rho = @(y) rho0 *(1 - (gamma-1)./gamma* y/y0).^(1/ (gamma-1)); while y > 0 % stop ved y=0 t = t + dt; y = y + v.* dt; dv_g = g.* dt; dv_d = dt./m.* (0.5*rho(y)* v^2*c_d*a); (y) = 0 1 1 y y 0 1/( 1) end v = v + dv_g + dv_d plot(t,y,'b+')

Resultatet

Modellens præcision

Valg af skridtstørrelse Euler metoden er ikke den bedste i verden, og størrelsen af tidsskridtet har stor betydning for resultatet Lokale fejl Akkumulerende fejl En god regl, sæt dt til den højeste værdi du kan, som ikke ændrer resultatet i forhold til en lavere værdi. t={0,0001, 0.001,0.01,0.1,1,...,42} Vi vil se på mere præcise metoder i Mek2. Jo længere man kører en simulering des større betydning får præcisionen, da små fejl i hvert tidsskridt akkumulerer indtil simuleringen løber løbsk Demo: jumper.m

Conway s Game of Life Et zero-player spil i.e. en simulering "Universet" er et uendeligt gitter (som en uendelig skakplade), hver celle i gitteret har en af to tilstande: levende eller død. Hver celler har i alt otte naboceller.

Conway s Game of Life I hvert tidskridt sker følgende, Alle levende celler med mindre end 2 levende naboer dør pga. underbefolkning. Alle levende celler med to eller tre levende naboer lever videre til den næste generation. Alle levende celler med mere end tre levende naboer dør af overbefolkning. Alle døde celler med præcis tre levende naboer bliver levende ved reproduktion. Det er begyndelsesbetingelserne som er afgørende for dynamikken

Conway s Game of Life < 2 levende naboer 2 3 levende naboer 3 > levende naboer Døde med 3 levende naboer

Conway s Game of Life < 2 levende naboer 2 3 levende naboer 3 > levende naboer Døde med 3 levende naboer Grafik fra: http://www.leda-tutorial.org/en/official/ch02s02s02.html

n = 100; % grid size (n x n) X = randi(2,n,n)-1; % MAGIC GOES HERE!!!! Y = X; colormap bone for t=1:1000000 % number of steps image(y) % Tegn gitter for x=1:size(x,1) for y=1:size(x,2) if x == 1 if y == 1 s = sum(sum(x(x:x+1, y:y+1))) - X(x,y); B elseif y == size(x,2) s = sum(sum(x(x:x+1, y-1:y))) - X(x,y); else E s = sum(sum(x(x:x+1, y-1:y+1))) - X(x,y); end elseif x == size(x,1) K if y == 1 s = sum(sum(x(x-1:x, y:y+1))) - X(x,y); elseif y == size(x,2) L s = sum(sum(x(x-1:x, y-1:y))) - X(x,y); else s = sum(sum(x(x-1:x, y-1:y+1))) - X(x,y); A end else if y == 1 s = sum(sum(x(x-1:x+1, y:y+1))) - X(x,y); G elseif y == size(x,2) s = sum(sum(x(x-1:x+1, y-1:y))) - X(x,y); else E s = sum(sum(x(x-1:x+1, y-1:y+1))) - X(x,y); end end R if X(x,y) == 1 && s < 2 % Too few neighbours, underpopulation Y(x,y) = 0; elseif X(x,y) == 1 && (s == 2 s == 3) % balance Y(x,y) = X(x,y); elseif X(x,y) == 1 && s > 3 % over-population Y(x,y) = 0; elseif X(x,y) == 0 && s == 3 % Spawn new cell Y(x,y) = 1; end end end pause(0.01) X = Y; end

Opsummering Modeller ~= løsninger, løsninger er næsten umulige af finde eksakt Simulering og numerisk løsning i stedet Numerisk løsning af ODEer er nemt, men præcisionen er en vigtig detalje Hvor realistisk skal vores simulering være? Der findes andre typer simulering end bare løsning af differentialligninger, nogle benytter slet ikke matematiske strukturer Morten kan også skrive grimt kode..

Aflevering 2 Programmering Betingelser Løkker Variable Datastrukturer Funktioner Forvent at i skal kode lidt selv Åben så MATLAB! (P.s. I var rigtig gode i aflevering 1 - awesome!)

Næste uge Statistik (med Troels Petersen) Det I kender: middelværdi, spredning osv.. Det I ikke kender: Fitting, hypotesetest og andre lækkerier