Koblede diffligninger og interpolasjon
IN-KJM1900, Fjerde forelesning, 6.november
Mål for økta:¶
- Oversikt over pensum
- Introduksjon av deloppgave 2
- Detaljert gjennomgang av hydrologisk delmodell
- Ny teori:
- Koblede differensialligninger
- Interpolasjon
Merk: Vi rakk ikke ? gjennomg? hele den hydrologiske delmodellen, s? deler av dette vil bli gjennomg?tt 13.november.
Orakeltjeneste, uke 45
Orakelhjelp tilbys ved Kjemisk Institutt p? f?lgende tidspunkter denne uka
Tirsdag 6/11 | 14.00-16.00 |
Onsdag 7/11 | 13.00-15.00 |
Torsdag 8/11 | 13.00-15.00 |
Merk deg at torsdags?kta er flyttet, og at den ikke lenger er i konflikt med samretting fra 10.15-12.00.
Se ogs? nettressurser.
Innlevering av deloppgave 2
- Fristen for ? levere deloppgave 2 av prosjektet er s?ndag 18. november klokka 23.59.
- Oppgaven leveres (som normalt) p? Devilry.? ?
- Vi oppfordrer til ? benytte samrettinga p? torsdagene klokka 10.15-12.00
- Gruppetimene g?r som normalt
- Sp?rsm?l om prosjektet?
Pensum IN-KJM1900
(Vil ogs? publiseres p? semestersidene.)
Felles med IN1900, fra A Primer on Scientific Programming with Python, Fifth Edition av Hans Petter Langtangen:
Kapittel | Innhold | Unntak |
---|---|---|
1 | Computing with formulas | 1.6 og 1.7 |
2 | Loops and lists | Ingen |
3 | Functions and branching | 3.3 |
4 | User input and error handling | 4.4, 4.8, 4.10 |
5 | Array computing and curve plotting | 5.5.1, 5.5.3, 5.7 og 5.9-5.12 |
Pensum IN-KJM1900
Fra samme bok, men dekket i kjemidelen av kurset:
Kapittel | Innhold | Unntak |
---|---|---|
6 | Dictionaries and strings | 6.3-6.7 |
Appendiks A | Sequences and difference equations | A.2 |
Appendiks B | Discrete Calculus | B.4 |
Appendiks C | Differential equations | C.3-C.4 |
Appendiks E | Programming of differential equations | E.1.7, E.2.4, E.3-E.4 |
I tillegg er prosjektoppgaven pensum. Eksamen vil i stor grad sammenfalle med det som introduseres i prosjektet.
Diskretisering
Vi har tidligere sett p? diskret kalkulus, alts? en form for matematikk som beskriver diskrete funksjoner:Kontinuerlig | Diskret |
$x$ | $x_i = i\cdot\Delta x$ |
$f(x)$ | $f_i = f(x_i) = f(i\cdot\Delta x)$ |
$\frac{d}{dx}$ | $D^+$ |
$\int$ | $\sum$ |
Interpolasjon
Interpolasjon er en teknikk hvor vi benytter diskrete datapunkter for ? gj?re et mer eller mindre kvalifisert gjett p? hva som finnes mellom. Dette er p? en m?te en "anti-diskretisering".Interpolasjon
I dette kurset vil vi benytte en interpolasjons-funksjon fra scipy, som importeres og benyttes p? f?lgende m?te:from scipy.interpolate import interp1d
import numpy as np
# data punkter for testing
data_x = np.array([1,2,3,4])
data_y = np.array([1,7,3,5])
y_interp = interp1d(data_x, data_y, 2) #gj?r en andre ordens interpolasjon
x = np.linspace(1,4,100) #?k oppl?sningen p? grid
y = y_interp(x) #beregn funksjonsverdiene til den interpolerte funksjonen
Prosjektets del 2: Birkenesmodellen
- Numerisk modell for vannbevegelse og kjemi i jordv?ske.
- Tilpasset observasjoner i nedb?rsfelt i Birkenes kommune, Aust-Agder.
- Flere publikasjoner p? 70-, 80- og 90-tallet.
- Kjemisk modell koblet til hydrologisk modell.
Hydrologisk delmodell: Symboler og notasjon
Hydrologisk delmodell, detaljert introduksjon:
- Nedb?rsfelt modellert som reservoarer $\mathbf{A}$ og $\mathbf{B}$
- For et reservoar, for eksempel merket $\mathbf{M}$:
- Vannstand som funksjon av tid: $M(t)$
- Str?m ut: $Q_M(t)$
- Evaporasjon: $E_M(t)$
- Nedb?r ("precipitation") $P_M(t)$
- Generelt: subindeks indikerer reservoar.
- Avrenning til bekk. Fysiske ma?linger gjort her.
-
Her benyttes fet font for "merkelappene" p? reservoarene.
Reservoar $\mathbf{A}$
Vi beskriver f?rst modellen for reservoar A: Vannstand som funksjon av tid: $A(t)$ m?les i $mm$. Vann str?mmer inn i reservoaret kun gjennom nedb?ren $P(t)$. Vann str?mmer ut fra reservoaret gjennom evaporasjon $E_A$ og en bekk $Q_A$. Vannstr?m/fluks m?les i $mm/dag = mm \cdot dag^{-1}$.Reservoar $\mathbf{A}$
Regler for reservoar $\mathbf{A}$:- Ingen avrenning ($Q_A = 0$) n?r vannstanden $A(t)$ er mindre enn $A_{min}$
- Avrenning intensiveres n?r vannstanden $A(t)$ ?ker over $A_{min}$
- Evaporasjon er en funksjon av temperatur $E_A := E_A(T)$
Reservoar $\mathbf{A}$
Vannstanden i $\mathbf{A}$ p?virkes positivt (?kes) av nedb?ren $P$, og negativt av evaporasjon $E$ og utstr?mming til bekken $Q_A$, alts? er $A := A(t, P_A, E_A, Q_A)$.- Symbolet $\delta$ er en liten gresk delta ($\Delta$), og brukes konvensjonelt for ? beskrive endringer og differanser. Andre steder kan vi bruke $\Delta$ eller noen ganger $h$.
- Dimensjonen til $\delta t$ er tid, vannstr?m/fluks har dimensjon masse per tid ($mm/d?gn$) og $\delta A$ har dimensjonen masse. (Mer spesifikt mener vi her masse per kvadratmeter.)
- Sp?rsm?l til diskusjon: g?r dimensjonene i uttrykket for endringen opp? Diskuter.
Reservoar $\mathbf{A}$
Stadig gjelderEn diffligning for reservoar $\mathbf{A}$
Igjen, med utgangspunkt iEn numerisk l?sning av diffligningen for reservoar $\mathbf{A}$
Vi begynner som vanlig med ? diskretisere variablene, i dette tilfellet tiden $$t \rightarrow t_i = i \cdot \Delta t$$Dette gir
En numerisk l?sning av diffligningen for reservoar $\mathbf{A}$
Til slutt l?ser vi den ukjente $A(t_{n+1})$ algebraisk:Reservoar $\mathbf{B}$
Vi beskriver n? modellen for reservoar $\mathbf{B}$: Vannstand som funksjon av tid: $B(t)$ m?les i $mm$. Vann str?mmer inn i reservoaret kun gjennom bekken $Q_A(t)$. Vann str?mmer ut fra reservoaret gjennom evaporasjon $E_B$ og en bekk $Q_B$.Reservoar $\mathbf{B}$
Regler for reservoar $\mathbf{B}$:- Innstr?mming fra $Q_A$ avtar n?r vannstanden i $\mathbf{B}$ tiltar. ($A_{sig}$ er en funksjon av $B(t)$ )
- Ingen utstr?mming til bekk n?r vannstanden er under $B_{min}$.
- $\mathbf{B}$ har i tillegg en maksgrense $B_{max}$, hvor alt overskytende vann g?r direkte i bekken $Q_{over}$
- Evaporasjon er en funksjon av temperatur $E_B := E_B(T)$
Innstr?mming til reservoar $\mathbf{B}$
Parameteren $A_\text{sig}$ er en funksjon av $B(t)$, $B_{min}$ og $B_{max}$:\begin{equation} \label{eq:Asig} A_\text{sig} = \left\{ \begin{array}{lcl} 1 & ~~ & B \leq B_\text{min} \\ 1- 0.25\cdot\frac{B-B_\text{min}}{B_\text{max}-B_\text{min}} & ~~ & B_\text{min} < B \leq B_\text{max} \\ 0 & ~~ & B_\text{max} < B \end{array} \right., \qquad B_\text{max}=80\;mm. \end{equation}
Er dette en form for interpolasjon?
Reservoar $\mathbf{B}$
Vannstanden i $\mathbf{B}$ p?virkes positivt (?kes) av innstr?mming fra $\mathbf{A}$ (gjennom bekken $Q_A$, og negativt av evaporasjon $E_B$ og utstr?mming til bekken $Q_B$. Alts? er $B := B(t, P_A, E_A, Q_A, Q_{over})$.Hva skjer her?
Vi ser p? de to differensialligningene vi har funnet for modellen s? langt:Koblede ligninger
Vi ser p? de to differensialligningene vi har funnet for modellen s? langt:Numerisk l?sning av ligningssettet
Vi kan l?se numerisk for $B(t)$ p? samme m?e som for $A(t)$, og finner at ligningssettet v?rt er\begin{align} A_{n+1} &= A_n + \cdot P_n \Delta t - \cdot E_{A,n}\Delta t - \cdot Q_{A,n} \Delta t. \\ B_{n+1} &= B_n + \cdot A_{\text{sig},n} \cdot Q_{A,n} \Delta t - \cdot E_{B,n}\Delta t - \cdot Q_{B,n} \Delta t - \cdot Q_{\text{over},n} \Delta t . \end{align}
Hvilke st?rrelser kjenner vi ved f?rste iterasjon?
Vi kan l?se numerisk for $B(t)$ p? samme m?e som for $A(t)$, og finner at ligningssettet v?rt er\begin{align} A_{1} &= A_0 + \cdot P_0 \Delta t - \cdot E_{A,0}\Delta t - \cdot Q_{A,0} \Delta t. \\ B_{1} &= B_0 + \cdot A_{\text{sig},0} \cdot Q_{A,0} \Delta t - \cdot E_{B,0}\Delta t - \cdot Q_{B,0} \Delta t - \cdot Q_{\text{over},0} \Delta t . \end{align}