Workshop 3: Dynamiske systemer#
Pensum til eksamen: Dynamiske systemer
Forklare hva en differensiallikning er, og gi eksempler på differensiallikninger som beskriver et praktisk problem.
Beskrive og utlede Eulers metode (Forward Euler) fra framoverdifferansetilnærmingen til den deriverte.
Løse differensiallikninger med Eulers metode.
Forklare og lage programmer som simulerer partikkeldynamikk (fart og posisjon gitt krefter mellom partikler) og reaksjonskinetikk (konsentrasjon gitt ratelover).
Forklare hva forskjellen mellom differens- og differensiallikninger er.
Løse problemer som kan beskrives med differenslikninger, spesielt beregning av rekkesummer.
Oppgaver#
Hva er en differensiallikning? Gi eksempler på differensiallikninger som beskriver et naturvitenskapelig fenomen, og begrunn hvorfor de er differensiallikninger.
Utled Eulers metode fra framoverdifferansen til den deriverte. Beskriv med ord hva metoden gjør.
Forklar hva programmet nedenfor gjør. Beskriv viktige steg i programmet og hva programmet gjør helt overordnet. Forklar hva slags modell programmet bruker, og hva modellen kan representere.
import numpy as np import matplotlib.pyplot as plt # Konstanter og variabler m = 1 # Masse i kg k = 2 # Fjærkonstant x_eq = 0 # Likevektsposisjon i m v0 = 0 # Startfart i m/s x0 = 1 # Startposisjon i m # Tidssteg dt = 1E-6 tid = 40 # Tid i s N = int(tid/dt) # Intervaller # Initialisering v = np.zeros(N+1) x = np.zeros(N+1) t = np.zeros(N+1) v[0] = v0 x[0] = x0 # Integrasjonsløkke for i in range(N): a = -k/m*(x[i]-x_eq) # Eulers metode v[i+1] = v[i] + a*dt x[i+1] = x[i] + v[i]*dt t[i+1] = t[i] + dt plt.plot(t,x) plt.show()
La oss se nærmere på enzymkinetikk. Vi har følgende når et substrat (S) binder seg til et enzym (E) og danner et enzym-substratkompleks (ES), og til slutt danner et produkt (P):
\[𝐸+𝑆 \underset{k_{-1}}{\stackrel{k_1}{\rightleftharpoons}} ES \underset{k_{-2}}{\stackrel{k_2}{\rightleftharpoons}} P + E\]Vi regner med at \(k_{-2} \approx 0\)
\[𝐸+𝑆 \underset{k_{-1}}{\stackrel{k_1}{\rightleftharpoons}} ES \underset{}{\stackrel{k_2}{\rightleftharpoons}} P + E\]\[\frac{𝑑[𝐸]}{𝑑𝑡}= −𝑘_1 [𝐸][𝑆]+𝑘_{-1} [𝐸𝑆]+𝑘_2 [𝐸𝑆]\]\[\frac{𝑑[𝑆]}{d𝑡}=−𝑘_1 [𝐸][𝑆]+𝑘_{−1} [𝐸𝑆]\]\[\frac{𝑑[𝐸𝑆]}{𝑑𝑡}=𝑘_1 [𝐸][𝑆]−𝑘_{−1} [𝐸𝑆]−𝑘_2 [𝐸𝑆]\]\[\frac{𝑑[𝑃]}{𝑑𝑡}=𝑘_2 [𝐸𝑆]\]Lag et program som simulerer omdanningen av substrat til produkt ved hjelp av et enzym gitt følgende konstanter og initialbetingelser:
Konstant/startbetingelse
Verdi
\(k_1\)
7.32 x 10\(^4\)
\(k_{-1}\)
1.22 x 10\(^{-2}\)
\(k_{2}\)
7.01 x 10\(^{-2}\)
\([E]_{0}\)
1.52 x 10\(^{-6}\) mol/L
\([S]_{0}\)
2.01 x 10\(^{-6}\) mol/L
Forklar hva som skjer i løkka i programmet ditt. Fokuser mest på det kjemifaglige og matematiske innholdet, ikke det kodetekniske.
Grunnleggende programmering:
Vis at summen av denne uendelige rekka er 1:
\[\sum_{k=1}^\infty \frac{1}{2^k}\]Vekst av bakterier kan over tid beskrives med følgende diskrete modell (differenslikning):
\[B_{t+1} = B_t + k\cdot B_t\left(1 - \frac{B_t}{b}\right)\]der k er vekstkonstanten til populasjonen b er bæreevnen. Regn ut hvor mange bakterier vi har i en petriskål etter 24 timer dersom \(k = 0.01\) per time og \(b = 150\ 000\).