Problemlösning 2 Stokastisk simulering., Problemlösning 2 Stokastisk simulering 1/13

Relevanta dokument
Exempel ode45 parametrar Miniprojekt 1 Rapport. Problemlösning. Anastasia Kruchinina. Uppsala Universitet. Januari 2016

Biokemi. SF1538 Projekt i simuleringsteknik. Skolan för teknikvetenskap. Introduction. Michael Hanke. Kemiska reaktioner

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Monte Carlo-metoder. Bild från Monte Carlo

Ordinära differentialekvationer, del 1

SIMULINK. En kort introduktion till. Polplacerad regulator sid 8 Appendix Symboler/block sid 10. Institutionen för Tillämpad Fysik och elektronik

Simulering av Poissonprocesser Olle Nerman, Grupprojekt i MSG110,GU HT 2015 (max 5 personer/grupp)

SF1911: Statistik för bioteknik

Matematisk statistik 9 hp Föreläsning 3: Transformation och simulering

Kinetik, Föreläsning 1. Patrik Lundström

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Kap 2 Reaktionshastighet. Reaktionshastighet - mängd bildat eller förbrukat ämne per tidsenhet

SF1901: Sannolikhetslära och statistik

Beräkningsvetenskap introduktion. Beräkningsvetenskap I

Kinetik. Föreläsning 1

k 1 B k 2 C ges av dx 1 /dt = k 1 x 1 x 1 (0) = 100 dx 2 /dt = k 1 x 1 k 2 x 2 x 2 (0) = 0 dx 3 /dt = k 2 x 2 x 3 (0) = 0

Tentamen i Beräkningsvetenskap II, 5.0 hp, Del A

Laboration 2: 1 Syfte. 2 Väntevärde och varians hos en s.v. X med fördelningen F X (x) MATEMATISK STATISTIK, AK FÖR BYGG, FMS 601, HT-08

Ordinära differentialekvationer fortsättning

Institutionen för Tillämpad Fysik och elektronik Umeå Universitet BE. Introduktion till verktyget SIMULINK. Grunderna...2

3 Jämförelse mellan Polyas urna och en vanlig urna

Demonstration av laboration 2, SF1901

SF1900 Sannolikhetsteori och statistik, HT 2017 Laboration 1 för CINEK2

Reaktionskinetik...hur fort går kemiska reaktioner

Kurs 2D1213, Laboration 2: Att lösa ordinära differentialekvationer med finita differensmetoden

Introduktion till Simulink

Introduktionsföreläsning. Kursens innehåll. Kursens upplägg/struktur. Beräkningsvetenskap I

Beräkningsvetenskap introduktion. Beräkningsvetenskap I

TMV151/181 Matematisk analys i en variabel M/Td, 2013 MATLAB NUMERISK LÖSNING AV ORDINÄRA DIFFERENTIALEKVATIONER

Lycka till!

Ordinära differentialekvationer (ODE) 1 1

Stokastisk simulering och Monte Carlo-metoder. Beräkningsvetenskap 2, 2009.

Två gränsfall en fallstudie

Biologi: en utmaning för Numerisk Analys

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

Föreläsning 3, Matematisk statistik Π + E

Datorövning 1: Fördelningar

Kemisk reaktionskinetik. (Kap ej i kurs.)

Beräkningsvetenskap I. Exempel på tillämpningar: Vad är beräkningsvetenskap? Informationsteknologi

Kontrollera att följande punkter är uppfyllda innan rapporten lämnas in: Första sidan är ett försättsblad (laddas ned från kurshemsidan)

1 Förberedelser. 2 Teoretisk härledning av värmeförlust LABORATION 4: VÄRMEKRAFTVERK MATEMATISK STATISTIK AK, MAS 101:A, VT-01

In Bloom CAL # 5. Virka inte v för hårt / don t crochet r to tight. V 35 / r 35 (5) Upprepa v 18. [38 1-lm-bågar / sida och 2 lm / hörn]

LUNDS UNIVERSITET 1(6) STATISTISKA INSTITUTIONEN Per-Erik Isberg

Laboration 3. Ergodicitet, symplektiska scheman och Monte Carlo-integration

KEM A02 Allmän- och oorganisk kemi. KINETIK 1(2) A: Kap

Ordinära differentialekvationer,

Händelsestyrd simulering. Inledning. Exempel

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Introduktion till verktyget SIMULINK. Grunderna...2. Tidskontinuerliga Reglersystem Övningsuppgift...13

Kapitel 12. Kemisk kinetik

KINETIK 1(2) A: Kap Vad är kinetik? 14.1 Koncentration och reaktionshastighet. KEM A02 Allmän- och oorganisk kemi

Avsnitt 12.1 Reaktionshastigheter Kemisk kinetik Kapitel 12 Kapitel 12 Avsnitt 12.1 Innehåll Reaktionshastigheter Reaktionshastighet = Rate

Modellering och styrning av ett biologiskt reningsverk

EXISTENS AV EN UNIK LÖSNING TILL FÖRSTAORDNINGENS BEGYNNELSEVÄRDESPROBLEM

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

Tentamen i Teknisk-Vetenskapliga Beräkningar

Miniprojekt: MEX och molekyldynamik

Laboration i Automationsteknik FK: Del 1: Polplacering. Del 2: Markovkedjor

SF1901: Sannolikhetslära och statistik

Modellering och styrning av ett biologiskt reningsverk

Optimering och simulering: Hur fungerar det och vad är skillnaden?

Tentamen i Beräkningsvetenskap II, 5.0 hp,

TANA81: Simuleringar med Matlab

Matematisk statistik 9 hp Föreläsning 4: Flerdim

LABORATIONSHÄFTE NUMERISKA METODER GRUNDKURS 1, 2D1210 LÄSÅRET 03/04. Laboration 3 3. Torsionssvängningar i en drivaxel

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

SF1901 Sannolikhetsteori och statistik I

Introduktionsföreläsning

Liten MATLAB introduktion

Analys av elektriska nät med numeriska metoder i MATLAB

TMS136. Föreläsning 2

REGLERTEKNIK Laboration 4

Reglerteknik M3. Inlämningsuppgift 3. Lp II, Namn:... Personnr:... Namn:... Personnr:...

Reliability analysis in engineering applications

Lab 3 Kodningsmetoder

17.1 Kontinuerliga fördelningar

Introduktionsföreläsning. Outline. Beräkningsvetenskap I. Sara Zahedi Hanna Holmgren. Institutionen för Informationsteknologi, Uppsala Universitet

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Övning 0. Python för den som kan MATLAB. Lättare att läsa färdig kod än att skriva själv Det krävs övning för att automatiskt få detaljerna rätt:

F8: Resterna. Substitutionschiffer (Lab 3) Permutationer Rekursion Formelbehandling Simulering Iteration, frekvens-dubbling och kaos Radplanering

Föreläsning 11. Slumpvandring och Brownsk Rörelse. Patrik Zetterberg. 11 januari 2013

Första sidan är ett försättsblad (laddas ned från kurshemsidan) Alla frågor som nns i uppgiftstexten är besvarade

Inlämningsuppgift 4 NUM131

Tentamen i Miljö och Matematisk Modellering för TM Åk 3, MVE345 MVE maj 2012,

1. Lös ut p som funktion av de andra variablerna ur sambandet

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

Introduktionsföreläsning

Laboration 2 Ordinära differentialekvationer

Värmedistribution i plåt

Tentamen i Beräkningsvetenskap II, 5.0 hp,

Bilaga 4, Skapa grafiskt användargränssnitt med guide

R AKNE OVNING VECKA 1 David Heintz, 31 oktober 2002

Obligatoriska uppgifter i MATLAB

SF1920/SF1921 Sannolikhetsteori och statistik, VT 2018 Laboration 1 för CELTE2/CMATD3

TAMS14/36 SANNOLIKHETSLÄRA GK Poissonprocessen (komplettering) Torkel Erhardsson 14 maj 2010

Vetenskapsdagen 2016 SciLab för laborativa inslag i matematik eller fysik

Kapitel 3. Stökiometri. Kan utföras om den genomsnittliga massan för partiklarna är känd. Man utgår sedan från att dessa är identiska.

Matematisk modellering - Projekt. djurförflyttningar. Viktor Griph Anders Jonsson

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

Transkript:

Problemlösning 2 Stokastisk simulering, Problemlösning 2 Stokastisk simulering 1/13

Strategier Flera lösningsmetoder är möjliga Deterministisk/kontinuerlig metod (ODE-lösare) Stokastisk/diskret (Continuous time discrete space Markov Process), Problemlösning 2 Stokastisk simulering 2/13

Simulering av kemiska system Lȧt oss ha ett system med 3 reaktiva ämnen A, B, och C som reagerar enligt A + B k 1AB 0, B k 3B C, A k 2A B, C k 4C 0. Reaktionsschemat kan skrivas som en kontinuerlig process i tiden som ett system av ODE:er, da dt = k 1AB k 2 A, db dt = k 1AB + k 2 A k 3 B, dc dt = k 3B k 4 C., Problemlösning 2 Stokastisk simulering 3/13

Stor skala (miljoner molekyler) A, B och C tolkas som koncentrationer som tar värden mellan 0 och 1. Propensiteterna, ω 1 (a, b, c) = k 1 AB, ω 2 (a, b, c) = k 2 A, ω 3 (a, b, c) = k 3 B, ω 4 (a, b, c) = k 4 C, betecknar reaktionshastigheterna., Problemlösning 2 Stokastisk simulering 4/13

Numerisk lösning En kontinuerlig modell löses med en ODE-lösare; 1 function dudt = f(t,u,p) 2 A = U (1); 3 B = U (2); 4 C = U (3); 5 6 dadt = -p.k1*a*b - p.k2*a; 7 dbdt = -p.k1*a*b + p.k2*a - p.k3*b; 8 dcdt = p.k3*b - p.k4*c; 9 10 dudt = [ dadt ; dbdt ; dcdt ];, Problemlösning 2 Stokastisk simulering 5/13

Numerisk lösning Skapa initialdata i samma ordning som variablerna är definierade i funktions-filen; 1 x0 = [A0; B0; C0 ]; Skicka med parametrarna; 1 p.k1 = k1; 2 p.k2 = k2; 3 p.k3 = k3; 4 p.k4 = k4; Lös systemet; 1 [t,u] = ode45 (@(t,u)f(t,u,p),[t0, tn],x0 ); eller 1 [t,u] = ode15s (@(t,u)f(t,u,p),[t0, tn],x0 );, Problemlösning 2 Stokastisk simulering 6/13

Liten skala (enstaka molekyler) A, B, och C tolkas som antalet molekyler och antar icke-negativa heltalsvärden. Propensiteterna betecknar nu sannolikheten att en reaktion äger rum under en tidsenhet. Processen är alltsȧ inte längre kontinuerlig. T.ex. reaktionen A + B k 1AB 0 betyder att antalet av molekylerna A och B minskar med ett, med sannolikhet k 1 AB per tidsenhet., Problemlösning 2 Stokastisk simulering 7/13

Stökiometri Vi kan istället skriva upp systemet pȧ stökiometrisk form; r Reaktion ω r 1 A och B förbrukas ω 1 = k 1 AB 2 A blir B ω 2 = k 2 A 3 B blir C ω 3 = k 3 B 4 C förbrukas ω 4 = k 4 C eller som stökiometri-matris/vektorer; 1 1 0 N = 1 1 0 0 1 1, n r = N(r, :). 0 0 1 En reaktion kan dȧ skrivas som x ωr (x) x + n r., Problemlösning 2 Stokastisk simulering 8/13

Gillespies algoritm I allmänhet kan vilket system som helst simuleras genom följande algoritm, 1 function x = ssa (U, N, x0, t0, tf) 2 x = x0; 3 t = t0; 4 while t < tf 5... 6 tau = get_next_reaction_time (...); 7 r = get_next_reaction_number (...); 8 x = x + N(r,:) ; 9 t = t + tau ; 10 end, Problemlösning 2 Stokastisk simulering 9/13

Huvuduppgift Er huvuduppgift för miniprojekt 2 är att; Skriv funktionen get next reaction time Skriv funktionen get next reaction number Stoppa in i Gillespies algoritm pȧ sidan 21 i Hellanders kompendium 2000 1800 A R 1600 1400 1200 Number 1000 800 600 400 200 0 0 10 20 30 40 50 60 70 80 90 100 Time, Problemlösning 2 Stokastisk simulering 10/13

Tips get next reaction time Sampla slumptal frȧn exponentialfördelningen get next reaction number Hitta minsta r sȧ att a0 (x)u 2 r ω k (x) cumsum(x), find(expr) k=1, Problemlösning 2 Stokastisk simulering 11/13

Anmärkning Vi vet inte pȧ förhand hur mȧnga tidssteg som behövs. Matlabs dynamiska minnesallokering är SJUKT lȧngsam. Ca 250 000 tidssteg mellan t = 0 och t = 100. 1 A = R = zeros ( miljoner,1); 2 while t < tf 3 A(i) = X (1); R(i) = X( end ); 4 >> Elapsed time is 9.631500 seconds 1 while t < tf 2 A(i) = X (1); R(i) = X( end ); 3 >> Elapsed time is 667.979062 seconds, Problemlösning 2 Stokastisk simulering 12/13

Lycka till! Deadline 12:e oktober, Problemlösning 2 Stokastisk simulering 13/13