From b44739baee1cdcb119423495db2b121f1582d9fa Mon Sep 17 00:00:00 2001 From: Jonas Hahn Date: Fri, 9 May 2025 08:27:01 +0200 Subject: [PATCH] updates --- S2/AGLA/preamble.typ | 6 +- S2/AnaMech/VL/AnMeVL5.typ | 107 +++++++++++++++++++++++++++++ S2/AnaMech/preamble.typ | 6 +- S2/AnaMech/punkt.txt | 2 + S2/AnaMech/template.typ | 6 -- S2/CWR/VL/CwrVL4.typ | 103 ++++++++++++++++++++++++++++ S2/CWR/preamble.typ | 8 ++- S2/CWR/template.typ | 7 -- S2/DiffII/VL/DiIIVL1.typ | 28 +++++--- S2/DiffII/VL/DiIIVL2.typ | 14 +++- S2/DiffII/VL/DiIIVL4.typ | 1 - S2/DiffII/VL/DiIIVL5.typ | 137 +++++++++++++++++++++++++++++++++++++ S2/DiffII/koenig.typ | 16 ----- S2/DiffII/preamble.typ | 6 +- S2/DiffII/template.typ | 7 -- S2/ExPhyII/VL/ExIIVL4.typ | 30 ++++---- S2/ExPhyII/VL/ExIIVL5.typ | 139 ++++++++++++++++++++++++++++++++++++++ S2/ExPhyII/notes.txt | 9 +++ S2/ExPhyII/preamble.typ | 3 +- S2/ExPhyII/template.typ | 6 -- S2/Neuro/VL/NeuroVL3.typ | 62 +++++++++++++++++ S2/Neuro/preamble.typ | 3 +- S2/Neuro/template.typ | 6 -- data/default.typ | 2 +- data/template.typ | 18 ++++- data/theorems.typ | 5 +- pdfs/template.pdf | Bin 12388 -> 0 bytes 27 files changed, 648 insertions(+), 89 deletions(-) create mode 100644 S2/AnaMech/VL/AnMeVL5.typ create mode 100644 S2/AnaMech/punkt.txt delete mode 100644 S2/AnaMech/template.typ create mode 100644 S2/CWR/VL/CwrVL4.typ delete mode 100644 S2/CWR/template.typ create mode 100644 S2/DiffII/VL/DiIIVL5.typ delete mode 100644 S2/DiffII/koenig.typ delete mode 100644 S2/DiffII/template.typ create mode 100644 S2/ExPhyII/VL/ExIIVL5.typ create mode 100644 S2/ExPhyII/notes.txt delete mode 100644 S2/ExPhyII/template.typ create mode 100644 S2/Neuro/VL/NeuroVL3.typ delete mode 100644 S2/Neuro/template.typ delete mode 100644 pdfs/template.pdf diff --git a/S2/AGLA/preamble.typ b/S2/AGLA/preamble.typ index 30a64af..6702918 100644 --- a/S2/AGLA/preamble.typ +++ b/S2/AGLA/preamble.typ @@ -1,6 +1,10 @@ #import "../../data/default.typ": * +#import "../../data/theorems.typ": * -#let conf(num: none, ueb: false, body) = { +#let rot = math.op("rot") +#let grad = math.op("grad") + +#let conf(num: none, date: "", type: none, body) = { // Global settings show: default diff --git a/S2/AnaMech/VL/AnMeVL5.typ b/S2/AnaMech/VL/AnMeVL5.typ new file mode 100644 index 0000000..3613b51 --- /dev/null +++ b/S2/AnaMech/VL/AnMeVL5.typ @@ -0,0 +1,107 @@ +// Main VL Template +#import "../preamble.typ": * + +#show: conf.with( + // May add more flags here in the future + num: 5 +) + += Wiederholung + +Zunaechst werden N Massepunkte mit jeweils konstanter Masse betrachtet. + +Als Aufgabe ist eine Gleichung fuer jeden Ortsvektor in Abhaengigkeit der Zeit gesucht. + +Newton II loest dieses Problem als AWP von 3N DGL 2. Ordnung mit dann 6N Integrationskonstanten. + +Kraefte. + += Gesamtenergie + +Zunaechst hat jedes Teilchen im System eine kinetische und potentielle Energie. + +Ein Kraftfeld ist konservativ wenn es die Ableitung eines Potentials ist. Dadurch ist die Gesamtenergie erhalten. + +$ + arrow(f)= -arrow(nabla) V (arrow(r)) +$ + +#example[ + Zentralkraftfelder. + + $ + arrow(f)= f (r) arrow(e)_(r), space arrow(e)_(r) = (arrow(r)) / (abs(arrow(r))) + $ + Potential: + $ + V (arrow(r)) = - integral_(r)^(r_0 ) f (r')d r' + $ + + $j + - arrow(nabla) V (arrow(r)) = f (r) arrow(nabla) r = f (r) arrow(e)_(r) + $ +] + + +$ + m_i dot.double(arrow(r))_(i) = sum_(j != i)^(3 N) arrow(f)_(i j) + arrow(f)^("ext") _(i) +$ + +#definition[ + Zweiteilchenpotentiale. + + $ + v_(i j) = v (arrow(r)_(i), arrow(r)_(j) ) \ + arrow(f)_(j i) = - arrow(nabla) _(arrow(r)_(i) - arrow(r)_(j) ) v_(j i) \ + v _(i j) = V_(W W) (abs(arrow(r)_(1) - arrow(r)_(j) )), x_(i) - x _(j) \ + arrow(nabla) phi (x,y,z) = vec(partial / (partial x) phi, partial / (partial y) phi, partial / (partial z)phi ) + $ + + + Hier ist also der neue Nabla-Operator + $ + arrow(nabla) _(arrow(r)_(i) - arrow(r)_(j) ) = vec(dif / (dif x_(i) - x_j ) , dif / (dif y_i - y_j ), dif / (dif z_i - z_j ) ). + $ +] + +Fuer N MP laesst sich die Energie im allgemeinen bestimmen durch + +$ + E = sum_(i)^(N) m_i/2 (dot(arrow(r)))^2 + 1/2 sum_(i != j)^(N) v_(i j) + sum_(i)^(N) v^("ext") (arrow(r)_i ) \ + ==> (dif E) / (dif t) +$ + +Q: Warum nur die Haelfte des Zweiteilchenpotentials? +A: Wir bekommen zwei mal von zwei Seiten das gleiche Potential. + +=== Grenzfaelle + ++ $v_(i j) = 0 ==> "N freie Teilchen" ==> "N entkoppelte DGL (jeweils 3)"$ ++ Starrerkoerper $abs(arrow(r)_(i) - arrow(r)_(j))= "const"$ ++ Annahme Gleichgewicht $arrow(r)^(0) _(1) , ...$ + +Q: Wie funkioniert die Reduktion eines zwei Teilchenproblems auf ein Teilchenproblem? + += Zweikoerperprobleme + +Wie betrachten zwei Massepunkte mit den Ortsvektoren $arrow(r)_(1) "und" arrow(r)_(2) $. Es wird angenommen, dass das System abgeschlossen ist. + +Die Reduktion auf ein 1 TL Problem erfolgt durch eine Koordinantentransformation +$ + M arrow(R) = m_1 arrow(r)_(1) + m_2 arrow(r)_(2) \ + arrow(r) = arrow(r)_(1) - arrow(r)_(2) +$ + +Was fuer BWGL ergeben sich jetzt? + +$ + m_1 dot.double(arrow(r)) = arrow(f)_(1 2) \ + m_2 dot.double(arrow(r)) = arrow(f)_(1 2) \ + M (dot.double(arrow(r))_(1) + dot.double(arrow(r))_(2) )= arrow(f)_(1 2) + arrow(f)_(2 1) = arrow(0)\ + dot.double(arrow(R)) = arrow(0) \ + dot.double(arrow(r)) = dot.double(arrow(r))_(1) - dot.double(arrow(r))_(2) \ + = (arrow(f)_(1 2) ) / (m_1 ) - (arrow(f)_(2 1) ) / (m_2 ) \ + = arrow(f)_(1 2) ((1) / (m_1 ) + (1) / (m_2 ) ) \ + = (1) / (mu) +$ + diff --git a/S2/AnaMech/preamble.typ b/S2/AnaMech/preamble.typ index c3a0878..4e1c4ad 100644 --- a/S2/AnaMech/preamble.typ +++ b/S2/AnaMech/preamble.typ @@ -1,6 +1,10 @@ #import "../../data/default.typ": * +#import "../../data/theorems.typ": * -#let conf(num: none, ueb: false, body) = { +#let rot = math.op("rot") +#let grad = math.op("grad") + +#let conf(num: none, date: "", type: none, body) = { // Global settings show: default diff --git a/S2/AnaMech/punkt.txt b/S2/AnaMech/punkt.txt new file mode 100644 index 0000000..9d770fe --- /dev/null +++ b/S2/AnaMech/punkt.txt @@ -0,0 +1,2 @@ +Blatt 1: 31/40 +Blatt 2: 19/40 diff --git a/S2/AnaMech/template.typ b/S2/AnaMech/template.typ deleted file mode 100644 index f27b5c1..0000000 --- a/S2/AnaMech/template.typ +++ /dev/null @@ -1,6 +0,0 @@ -#import "../preamble.typ": * - -#show: conf.with(num: 1) - -= Uebersicht - diff --git a/S2/CWR/VL/CwrVL4.typ b/S2/CWR/VL/CwrVL4.typ new file mode 100644 index 0000000..4c18f2a --- /dev/null +++ b/S2/CWR/VL/CwrVL4.typ @@ -0,0 +1,103 @@ + // Main VL template +#import "../preamble.typ": * + +// Fix theorems to be shown the right way in this document +#import "@preview/ctheorems:1.1.3": * +#show: thmrules + +// Main settings call +#show: conf.with( + // May add more flags here in the future + num: 4, + type: 0, // 0 normal, 1 exercise + date: datetime.today().display(), + //date: datetime( + // year: 2025, + // month: 5, + // day: 1, + //).display(), +) + += Stabilitaet des Euleralgorithmus im harmonischen Oszillator + +Aussagen ueber die Langazeitstabilitaet. + +Beispiel fuer Stabilitaet ist die gedaempfte harmonische Schwingung. + +$ + dot.double(y) + gamma dot(y) + omega_0^2 y = 0. +$ + +Auf dieses System kann wieder der Euler-Algorithmus angewendet werden. + +Dabei propagiert der Fehler mit $arrow(e) (t + Delta t)$ + +$ + (dif T) / (dif e) = mat( + 1, Delta t; + - omega_0 ^2 Delta t, 1- gamma Delta t; + ). +$ +Wenn man die EW von dieser Matrix bestimmt, dann ist der Betrag von allen Eigenwerten kleiner als Eins, +wenn $omega_0 Delta t < gamma < 2 omega_0 $ fuer die unterdaempfte Schwingung. + += Fehlerkontrolle + +$ + y (t + Delta t ) = y ^((0)) (t + Delta t ) + c Delta t ^(m + 1) + O (Delta t ^(m + 2) ), +$ +wobei $m$ die Ordnung des Algoritmus, $m + 1$ der lokale Fehler und $m$ der globale Fehler ist. + +== Zweischritt-Verfahren + +Neben dem Fehler durch bestimmen von einem Schritt kann der Fehler bei zwei Schritten gebildet werden. +Dann kann davon die Differenz gebildet werden und es koennen so Aussagen ueber das Verhalten des Systems gewonnen werden. + +$ + y (t) = y^(0) (t) \ + y (t + (Delta t ) / (2) ) = y^(0) (t + (Delta t ) / (2) ) + c (t + (Delta t ) / (2) )^(m + 1) + ...\ + y_2 (t + Delta t) = y^(0) (t + Delta t ) + 2 c ((Delta t ) / (2) )^(m + 1) + ... +$ + +Das Ziel ist hier $Delta t $ so zu waehlen, dass der Fehler kleiner als $s_0 $ wird. + + +// Random calculations need to understand this +$ + abs(c) Delta t ^(m + 1) (1 - (1) / (2^(m) )) = abs(y_1 - y_2 ) \ + abs(c) tilde(Delta t )^(m + 1) <= delta_0 \ + ((tilde(Delta t )) / (Delta t ) )^(m + 1) (1) / (1 - (1) / (2^(m) ) ) <= (delta_0 ) / (abs(y_1 - y_2 )) \ + tilde(Delta t )^(m + 1) <= (delta_0 ) / (abs(y_1 - y_2 )) Delta t ^(m + 1) (2^(m) - 1) \ + < (delta_0 ) / (abs(y_1 - y_2 )) Delta t ^(m + 1) \ + tilde(Delta t )< Delta t ((delta_0 ) / (abs(y_1 - y_2 )))^((1) / (m + 1) ) +$ + +== Der Algorithmus + +- Zuerst wird ein $Delta t $ gewaehlt. +- Dann wird das Einschritt- und das Zweischritt-Verfahren durchgefuehrt +$ + tilde(Delta t )_("opt") = Delta t ((delta_0 ) / (abs(y_1 - y_2 )) )^((1) / (m + 1) ) +$ + ++ $tilde(Delta t ) < Delta t $: neue Integration von $t$ nach $t p_l Delta t $ mit dem verkleinerten Zeitschritt $tilde(Delta t )"opt"$ ++ $tilde(Delta t ) > Delta t $: behalte Ergebnis $y_2 (t + Delta t )$ und erhoehe um naechsten Zeitschritt $Delta t$ auf $tilde(Delta t )_("opt") $ + +Dies ist wichtig fuer Probleme wo es notwendig ist die Zeitschritte an die Konfiguration des Systems anzupassen. +Zum Beispiel ist dies gut im Keplerproblem, denn dort kann sich das Objekt entweder sehr schnell oder sehr langsam bewegen. +Dies ist ein Prozess der mitlaufgen gelassen werden kann. +Molekulardynamik Simulationen brauchen dies nicht so wie Astrophysik Simulationen. + +Beispiel des Fussballtors mit verschiedenen Kraeften +- Wind +- Gravitation +- Reibung +- Magnus + +Fuer die Modellbildung werden dann verschiedene Prameter des Systems und die Wirkung auf die Umwelt aufgeschrieben. +- Wechselwirkungen +- Erhaltungssaetze +- Gleichungen + +Entdimensionalisierung fuer den Computer. + diff --git a/S2/CWR/preamble.typ b/S2/CWR/preamble.typ index a2933af..01665f6 100644 --- a/S2/CWR/preamble.typ +++ b/S2/CWR/preamble.typ @@ -1,12 +1,16 @@ #import "../../data/default.typ": * +#import "../../data/theorems.typ": * -#let conf(num: none, ueb: false, body) = { +#let rot = math.op("rot") +#let grad = math.op("grad") + +#let conf(num: none, date: "", type: none, body) = { // Global settings show: default // Set the header [CWR \ Vorlesung #(num)] - // Make tcahe outline + // Make outline outline() // load the document diff --git a/S2/CWR/template.typ b/S2/CWR/template.typ deleted file mode 100644 index 4a5b8f7..0000000 --- a/S2/CWR/template.typ +++ /dev/null @@ -1,7 +0,0 @@ -// Diff template -#import "../preamble.typ": * - -#show: conf.with(num: 1) - -= Uebersicht - diff --git a/S2/DiffII/VL/DiIIVL1.typ b/S2/DiffII/VL/DiIIVL1.typ index 6cb8030..70a73f1 100644 --- a/S2/DiffII/VL/DiIIVL1.typ +++ b/S2/DiffII/VL/DiIIVL1.typ @@ -2,9 +2,9 @@ #show: conf.with(num: 1) #set heading(numbering: "1.1.") -Tutorium ist immer Mi 2-6pm +Tutorium ist immer am Mittwoch von 2-6pm. -Tutoren sind Oscar Cossarat und Simon Fischer +Tutoren sind Oscar Cossarat und Simon Fischer. Das Hauptziel ist das Wissen aus dem ersten Semester ueber $f: RR -> RR$ auf meherer Dimensionen zu verallgemeinern. @@ -23,28 +23,36 @@ $==>$ Konvergenz im $RR^n$ ? #example[ Auf $CC$ haben wir die Abstandsfunktion $ - d(a, b) = abs(a-b), quad a,b in CC, + d(a, b) = abs(a-b), quad a,b in CC $ - wobei $abs(z) = abs(z_1+i z_2) := sqrt(z_1^2+z_2^2)$, $z_1, z_2 in RR$. + definiert, wobei $abs(z) = abs(z_1+i z_2) := sqrt(z_1^2+z_2^2)$, $.. z_1, z_2 in RR$. ] #definition[ - Sei $n in NN$. Wir definieren die Euklidische Norm als die Funktion $||dot||: RR^n -> RR^+, quad (x_1, ..., x_n) |-> sqrt(x_1^2 + ... + x_n^2 )$. + Sei $n in NN$. Wir definieren die euklidische Norm als die Funktion + $||dot||: RR^n -> RR^+, quad (x_1, ..., x_n) |-> sqrt(x_1^2 + ... + x_n^2 )$. Wir definieren die euklidische Metrik $d: RR^n times RR^n -> RR, quad x, y |-> d(x, y) = norm(x+y)$. ] -Wir schreiben $underline(x)$ fuer einen Vektor $x$. Ich werde einfache Symbole verwenden und nur im Notfall des Kontexts eine Unterscheidung machen.\ Erfuellt $d(x, y) = norm(x - y)$ die Eigenschaften einer Metrik? +Wir schreiben $underline(x)$ fuer einen Vektor $x$. \ +Ich werde einfache Symbole verwenden und nur im Notfall des Kontexts eine Unterscheidung machen. \ +Q: Erfuellt $d(x, y) = norm(x - y)$ die Eigenschaften einer Metrik? #definition[ Ein metrischer Raum ist ein Tupel $(X, d_x)$ aus einer Menge $X$ und einer Funktion $d_x: X times X -> R^+$ mit drei Eigenschaften. - + $d(x,x) = 0 and d(x,y) != 0, x != y $ + + $d(x,y) = 0 <==> x = y$ + Symetrie: $d(x,y) = d(y,x)$ - + Dreiecksungleichung + + Dreiecksungleichung: $d (x,y) <= d (x,z) + d (y,z)$ ] -Wir definieren das *Standard-Skalarprodukt* als $angle.l dot, dot angle.r: CC^n times CC^n -> CC$. +#definition[ + Wir definieren das *Standard-Skalarprodukt* als $angle.l dot, dot angle.r: CC^n times CC^n -> CC$ mit + $ + angle.l x \, y angle.r := sum_(i = 1)^(n) x_(i) overline(y_i ) + $ +] #lemma[ Cauchy-Schwarz Ungleichung @@ -123,7 +131,7 @@ Sei $x_k, k in NN$ eine Folge im $RR^n$ #theorem[ $RR^n$ mit der euklidischen Metrik ist vollstaendig. ] - #proof[ Fuer eine Cauchyfolge F von Vektoren im $RR^n$ sind die Folgen der Komponenten wieder Cauchy-Folgen im $RR$. Diese haben wegen der Vollstaendigkeit von $RR$ einen Grenzwert. Nach @lem3 konvergiert also die Folge F. ] + diff --git a/S2/DiffII/VL/DiIIVL2.typ b/S2/DiffII/VL/DiIIVL2.typ index 511b204..b5e2177 100644 --- a/S2/DiffII/VL/DiIIVL2.typ +++ b/S2/DiffII/VL/DiIIVL2.typ @@ -1,2 +1,14 @@ -= Uebersicht bla +#import "../preamble.typ": * +#show: conf.with(num: 2) +#set heading(numbering: "1.1.") + += Der $RR^n $ als normierter Raum + +#lemma[ + Hoelder Ungleichung +] + +#definition[ + Hilbertraum +] diff --git a/S2/DiffII/VL/DiIIVL4.typ b/S2/DiffII/VL/DiIIVL4.typ index f7ff4d6..83d00e7 100644 --- a/S2/DiffII/VL/DiIIVL4.typ +++ b/S2/DiffII/VL/DiIIVL4.typ @@ -3,7 +3,6 @@ #show: conf.with(num: 4) - = Wiederholung Im $RR^n $ mit $p >= 1$ gilt $norm(x)_(p) = (sum_(i=1)^(n) abs(x_i )^(p) )^(1/p) $. diff --git a/S2/DiffII/VL/DiIIVL5.typ b/S2/DiffII/VL/DiIIVL5.typ new file mode 100644 index 0000000..119c767 --- /dev/null +++ b/S2/DiffII/VL/DiIIVL5.typ @@ -0,0 +1,137 @@ +// Main VL Template +#import "../preamble.typ": * + +#show: conf.with( + // May add more flags here in the future + num: 5 +) + +$K in {RR,CC}$ + += Die Operatornorm als Normabbildung + +Die Normabbildung zwischen zwei VR $V, W$ mit zwei Normen $norm(*)_(V), norm(*)_(W) $. Definition eines beschraenkten linearen Operators. Dieser ist beschraenkt wenn er stetig ist. + +$ + norm(A x)_(W) <= C norm(x)_(V) \ + norm(A) = sup_(x != 0 \ x in V) (norm(A x)_(W) ) / (norm(x)_(V) ) +$ + +#definition[ + Fuer $V,W$ normierte K-Vektroraeume schreiben wir $L (V,W)$ fuer die Mengeder beschraenkten K-linearen Abbildungen von $V -> W$, d.h. + $ + L (V,W) = {A : V -> W, A "ist K-linear und" norm(A) < oo }. + $ + Diese Menge ist ein K-VR. $(A_1 + A_2 ) (x)= A_1 x + A_2 x, forall x in V$ und $(lambda A) (x) = lambda (A x), forall x in V, forall A, A_1, A_2 in L (V,W) $ +] + +#lemma[ + Seien $V,W$ normierte K-VR. DAnn ist $L (V,W)$ ein normierter Raum unter der Operatornorm. +] +#proof[ + #highlight[Proof this with the definition of L (V,W)] +] + +Die Norm auf $L (V,W)$ haengt von den Normen $norm(*)_(V) $ auf $V$ und $norm(*)_(W) $ auf $W$ ab. + +#example[ + Sei $(V,norm(*)_(V) )= (W,norm(*)_(W) )= (RR^n , norm(*)_(oo) ), norm(x)_(oo) := max_(1 <= i <= n) abs(x_(i) ), forall x in RR^n $. + Dann kann $L (RR^n, RR_m)$ durch die Menge der $m times n$ Matrizen beschrieben werden.\ + Fuer $A in M_(n times m) (RR) "mit" A = (a_(i j) _(1 <= i,j <= n) ) "und" x in RR^n $ erhalten wir + $ + norm(A x)_(oo) = abs(sum_(i=1)^(n) a_(i j) x_(j) ) <= max_(1 <= i <= n) (max_(1 <= i <= n) abs(x_(i) ) sum_(i=1)^(n) abs(a_(i j) ) ) \ + <= ( max_(1 <= i <= n) sum_(i = 1)^(n) abs(a_(i j) )) norm(x)_(oo) + $ + also $norm(A) <= max_(1 <= i <= n) sum_(i = 1)^(n) abs(a_(i j) )$. + Wir aehlen $i_0 in {1, ..., n}$ mit $sum_(i = 1)^(n) abs(a_(i j) ) = max_(1 <= i <= n) abs(a_(i j) ) = M$ und sei + $ + x_0 = ("sign" 1_(i_0 ,1) , ..., "sign"). + $ + Dann gilt $norm(x_0 )_(oo) = 1 "und" norm(A x_0 )_(oo) = M$. Es folgt $norm(A) = max_(1 <= i <= n) sum_(i=0)^(n) abs(a_(i j) )$. +] + +#theorem[ + Sei $V, norm(*)_(V) $ ein normierter Vektroraum und $(W, norm(*)_(W) )$ ein Banachraum. Dann ist die Menge von allen beschraenkten linearen Operatoren ein Banachraum unter der Operatornorm. +] +#proof[ + Sei $(A_n)_(n in NN) $ eine Cauchyfolge in $L (V,W)$. Wir wollen zeigen, dass die $A_(n) x$ eine Cauchy-Folge bilden. + Fuer $x in V, m,n in NN$ gilt + $ + norm(A_(n) x - A_m x)_(W) = norm((A_n - A_m ) (x))_(W) <= norm(A_n - A_m) * norm(x)_(V) . + $ + Wir folgern wenn $x in V$ dann ist die Folge $(A_n x)_(n in N) $ eine Cauchy-Folge in $W$. Also Existiert der Grenzwert und wir definierten die Abbildung + $ + A: V -> W, A x := lim_(n -> oo) A_n x, forall x in V. + $ + +Die Linearitaet von A folgt aus der Linearitaet des Grenzwertes. +$ + A (lambda x + y) = lim_(n -> oo) A_n (lambda x + y) = lim_(n -> oo) (lambda A_n x + A_m y) = lambda lim_(n -> oo) A_n x + lim_(n -> oo) A_n y. +$ + +Es gilt auch zu zeigen, dass die Grenzabbildung beschraenkt ist, damit diese in $L (W, V)$ ist. +Fuer $n, m in NN$ gilt +$ + abs(norm(A_n )- norm(A_m )) <= norm(A_n - A_m ). +$ +Also existiert $alpha := lim_(n -> oo) norm(A_n)$. Fuer $x in V$ betrachte die Ungeleichung +$ + norm(A x)_(W) = norm( lim_(n -> oo) A_n x) <= lim_(n -> oo) (norm(A_n ) norm(x)_(W) )= alpha norm(x)_(W) \ + ==> norm(A) <= alpha +$ + +Jetzt zeigen wir, dass $A_n -> A$ fuer $n -> oo$ in $L (V,W)$. +Sei $epsilon >0$. Da $(A_n )_(n in NN) $ Cauchy-Folge in $L (V,W)$ ist, gilt es $N in NN$ sodass $norm(A_n - A_m )< epsilon space forall n,m >= N$. +Fuer $x in V, n,m >= N $ folgt $norm(A_n - A_m x)_(W) < epsilon norm(x)_(V) $. +Im Grenzwert $m -> oo$ erhalten wir $(norm(A_n x - A x)_(W)) / (norm(x)_(V) ) < epsilon space forall x != 0, x in V$. +Es folgt fuer $n >= N$ dass +$ + norm(A_n - A) = sup_(x in V \ x != 0) (norm((A_n - A) x)_(W) ) / (norm(x)_(V) ) < epsilon "und" lim_(n -> oo) A_n = A. +$ +] + += Banachalgebren + +Q: Anenommen wir wollen Potenzreihen $sum_(i=0)^(oo) a_i x^(i) ,a_i in K, n in NN $ fuer $x in A$ (statt $x in CC$) definieren. Welche Eigenschaften von A wuerden wir gerne voraussetzen? + +Wir wuerden gerne haben: ++ Mulitplikationsabbildung ++ K-Vektorraumstruktur ++ Banachraum (Vollstaendigkeit) + +#definition[ + Eine Banachalgebra ist ein vollstaendiger normierter Vektorraum, welcher ein Banachraum mit einer Multiplikation ist, welche die folgenden Eigenschaften erfuellt + + es gibt ein neutrales Element $e in A$ mit $e x = x e = x space forall x in A$ (Einselement) + + $a (b c) = (a b) c space forall x,y,z in A$ (Assozitivitaet) + + $forall x,y,z in A forall lambda in K: x (y + z) = x y + x z)$ (Distributivitaet) + + Das Lambda laesst sich in einer Multiplikation vollstaendig hin und her verschieben + + $norm(x y) <= norm(x)* norm(y) space forall x,y in A$ +] + +#example[ + Die normierten komplexen und reelen Zahlen sind Banachalgebren. + Ist V ein normierter Banachraum, so auch alle Endomorphismen zwischen V unter der Operatornorm. Diese hat die Multiplikationsabbildung der Matrixmultiplikation. Die Identitaestabbildung ist das Einselement. +] + +#definition[ + Konvergente Reihe in einem Banachraum und die absolute Konvergenz +] + +#theorem[ + Sei $V,norm(*)_(V) $ ein Banachraum und $sum_(i=0)^(oo) x_(i) $ eine in V absolut konvergente Reihe. Dann ist $sum_(i=0)^(oo) x_(i) $ konvergent. +] + +#remark[ + Fuer A eine Banachalgebra mit Einselement e und $x in A$ setzen wir $x^(0) := e$. +] + +#theorem[ + Sei A eine Banachalgebra ueber K sowie $P (z) = sum_(i=0)^(oo) a_n z^(n) , space a_n in K forall n in Z^(+ ) $ eine Potenzreiehe mit Konvergenzradius $r = r (P) > 0$. Dann ist die Reihe $P_(A) (x):= sum_(i=0)^(oo) a_i x^(i) $ absolut konvergent fuer $x in A$ mit $norm(x) < r$. Die Funktion $P_(A): {x in A, norm(x) < r} -> A, x |-> P_(A) (x)$ ist Lipschitz-stetig auf jeder abgeschlossenen Kugel um den Ursprung mit einem Radius kleiner $r$. Fuer $x,y in overline(B_(rho) (0))$ dass + $ + norm(P_(A) (x)- P_(A) (y)) <= C_(rho) abs(x - y) "mit" C_(rho) = sum_(i=0)^(oo) i abs(a_i )rho^(i -1) . + $ +] + +#proof[ + Sei x ein Element aus der Algebra A mit $norm(x )< r$. Fuer $n in NN$ gilt $norm(x^(n) <= norm(x)norm(x^(n-1) )) <= $ +] diff --git a/S2/DiffII/koenig.typ b/S2/DiffII/koenig.typ deleted file mode 100644 index bf72ad1..0000000 --- a/S2/DiffII/koenig.typ +++ /dev/null @@ -1,16 +0,0 @@ -= Grundlagen der Topologie - -== Definitionen - -== Saetze - - - -== Fragen - -== Aufgaben - -= Stetigkeit - -= Differentiation - diff --git a/S2/DiffII/preamble.typ b/S2/DiffII/preamble.typ index 4ec56d4..846e5b1 100644 --- a/S2/DiffII/preamble.typ +++ b/S2/DiffII/preamble.typ @@ -1,6 +1,10 @@ #import "../../data/default.typ": * +#import "../../data/theorems.typ": * -#let conf(num: none, ueb: false, body) = { +#let rot = math.op("rot") +#let grad = math.op("grad") + +#let conf(num: none, date: "", type: none, body) = { // Global settings show: default diff --git a/S2/DiffII/template.typ b/S2/DiffII/template.typ deleted file mode 100644 index 4a5b8f7..0000000 --- a/S2/DiffII/template.typ +++ /dev/null @@ -1,7 +0,0 @@ -// Diff template -#import "../preamble.typ": * - -#show: conf.with(num: 1) - -= Uebersicht - diff --git a/S2/ExPhyII/VL/ExIIVL4.typ b/S2/ExPhyII/VL/ExIIVL4.typ index eadf2ea..df7e71d 100644 --- a/S2/ExPhyII/VL/ExIIVL4.typ +++ b/S2/ExPhyII/VL/ExIIVL4.typ @@ -26,16 +26,18 @@ $ == Gesamtladung von Objekten +Die Gesamtladung kann durch ein Volumenintegral ueber die Ladungsdichte bestimmt werden. Analog zur Bestimmung der Masse. + $ - Q = integral _(V) rho (arrow(r)) d V = integral rho (arrow(r))d arrow(r) \ - Q = integral.triple _(V) d x d y d z * rho (x,y,z) + Q = integral rho (arrow(r)) d V = integral.vol rho (arrow(r))d arrow(r) \ + Q = integral.vol d x d y d z * rho (x,y,z) $ $ arrow(E) (arrow(r)) = (1) / (4 pi epsilon_0 ) integral (rho (arrow(r)')) / (abs(arrow(r)- arrow(r)')^3 ) (arrow(r)- arrow(r)') d arrow(r)' $ -Das ist z.B. das El. feld von einer unendlich ausgedehnten geladenen Platte mit homogener Flaechenladungstraegerdichte $sigma$. +Das ist z.B. das el. Feld von einer unendlich ausgedehnten geladenen Platte mit homogener Flaechenladungstraegerdichte $sigma$. Bestimme das Feld an $P$ durch $d q = sigma * d A$. Es folgt also fuer das Differential von $E$ $ @@ -70,8 +72,11 @@ In der Anwendung sieht man dieses Prinzip bei alten Fehrnsehern oder der Massens Im Prinzip ist mit den bis jetzt behandelten Gleichungen die gesamte Elektrostatik berechnet werden. Das kann recht kompliziert werden, weshalb wir nach Vereinfachungen suchen. Zuerst wird das Analogon des Luftstrom mit Geschwindigkeit $arrow(v)$ behandelt. -Hier ist der Fluss $phi = arrow(v) * arrow(A)= v A cos alpha$ gleich Null, wenn das Geschwindigkeitsfeld homogen ist. - +Hier ist der Fluss +$ + phi = arrow(v) * arrow(A)= v A cos alpha +$ +gleich Null, wenn das Geschwindigkeitsfeld homogen ist. Der elektrische Fluss durch eine Flaeche ist definiert als $ d phi_("El") = arrow(E) d arrow(A) \ @@ -107,6 +112,9 @@ Wenn man das Teilvolumen $V$ einer Kugel, welches durch zwei Teile von Kugelscha $ also sind die Ladungen die Quellen bzw. die Senken von elektrischen Feldern. Das entspricht der *1. Maxwell Gleichung*. +] + +#proof[ #highlight[TODO: understand and write down this proof] ] @@ -115,15 +123,5 @@ Wenn man das Teilvolumen $V$ einer Kugel, welches durch zwei Teile von Kugelscha Das Integral einer Ableitung (div) ueber ein Gebiet (ein Volumen) ist gleich dem wert der Funktion an seinen Grenzen (die Flaeche die das Volumen umschliesst). Anders ausgedrueckt das Integral ueber Quellen innerhalb eines Volumens ist gleich dem Fluss durch die Randflaechen. -== 1.4 Das elektrische Potential und arbeit im elektrischen Feld - -Vorbemerkung zur Rotation eines Vektorfeldes. - -#theorem[ - Stoke'scher Satz. Es gilt fuer jedes Vektorfeld - $ - integral _(A) arrow(nabla) times arrow(E) d A = integral_(C) arrow(E) d arrow(s). - $ - Das Integral einer Ableitung ueber ein Geiebt gleich dem Funktionswert an seinen Grenzen (der Rand der Flaeche). -] +// Hier wurde noch der Satz von Stokes erwaehnt diff --git a/S2/ExPhyII/VL/ExIIVL5.typ b/S2/ExPhyII/VL/ExIIVL5.typ new file mode 100644 index 0000000..08098b9 --- /dev/null +++ b/S2/ExPhyII/VL/ExIIVL5.typ @@ -0,0 +1,139 @@ +// Main VL Template +#import "../preamble.typ": * + +#import "@preview/ctheorems:1.1.3": * +#show: thmrules + +#show: conf.with( + // May add more flags here in the future + num: 5, + type: 0, // 0 normal, 1 exercise + date: datetime.today().display(), + //date: datetime( + // year: 2025, + // month: 5, + // day: 1, + //).display(), +) + += Uebersicht + +== 1.4. Das elektrostatische Potential und die Arbeit im elektrischen Feld + +==== Vorbemergungen zur Roration eines Vektorfeldes + +Fuer Vektorfelder gilt der Satz von Stokes. + +#theorem([Stoke'scher Satz])[ + Es gilt fuer jedes Vektorfeld + $ + integral _(A) arrow(nabla) times arrow(E) d A = integral_(C) arrow(E) d arrow(s). + $ + Das Integral einer Ableitung ueber ein Geiebt gleich dem Funktionswert an seinen Grenzen (der Rand der Flaeche). +] + +$ + integral _(A) arrow(nabla) times d arrow(A) = integral.cont arrow(E) d arrow(s). +$ + +Rotation misst die Verdrillung eines Vektorfeldes; Gebiet mit hoher Rotation ist ein Wirbel.\ +Der Fluss der Rotation durch eine Oberflaeche ist gleich +dem Gesamtbetrag des Wirbels um die Flaeche an der Kante herum. + +Das Flaechenintegral ueber die Rotation des elektrischen Feldes +$integral arrow(nabla) times arrow(E) d arrow(A)$ +haengt nur von der Randlinie und nicht von der Flaeche ab. + +Fuer jede geschlossene Oberflaeche gilt +$ + integral.cont arrow(nabla) times arrow(E) d arrow(A) = 0, +$ +da eine Kugel so gewaehlt werden kann dass Begrenzungslinie verschwindet (beziehungsweise sie ist nicht existent) $integral.cont arrow(E) d arrow(s)$. + +Beim elektrischen Feld $arrow(E) = (1) / (4 pi epsilon_0 ) (q) / (r^2 ) hat(r)$ wie wir es bisher besprochen hattan (elektrostatisches Feld) laesst sich zeigen +$ + integral.cont arrow(E) d arrow(s) ==> arrow(nabla) times arrow(E) = 0. +$ + +Es kann bewiesen werden, dass +$ + arrow(nabla) times arrow(E) <==> arrow(E) = - arrow(nabla) phi. +$ + +=== 1.4.1 Arbeit im elektrischen Feld + +Um eine Testladung $q_("test") $ im Feld $arrow(E) (arrow(r))$ entlang der Kurve C zu verschieben +wird die folgende Arbeit verrichtet +$ + W = integral.cont arrow(F) d arrow(s) = q_("test") integral.cont arrow(E) d arrow(s), +$ +falls $W>0$ dann gewinnt die Ladung Energie (hier potentielle Energie), sonst verliert die Ladung Energie (bzw. bleibt konstant). + +#example([Punktladung am Ursprung])[ + Betrachte ein elektrisches Kraftfeld der Form + $ + arrow(E) (arrow(r)) = (q) / (4 pi epsilon_0 ) (arrow(r)) / (r^2 ). + $ + Nun wird die Arbeit um von Punkt $A$ zu Punkt $B$ zu kommen auf zwei verschiedenen Wegen ermittelt. + Dabei kommt raus, dass die Arbeit nur von Start und Endpunkt abhaengt $==>$ konservatives Kraftfeld. +] + +=== 1.4.2 Elektrisches Potential und Spannung + +Da Linienintegral Wegunabhaengig kann die skalare Funktion $Phi$ (das elektrische Potential) definiert werden +$ + Phi (arrow(r)) := integral_(arrow(r))^(oo) arrow(E) (arrow(r)) d arrow(s). +$ +Es wird die Normierung $Phi (oo) = 0$ verwendet. +Hier kann $arrow(E)$ als Gradient des Potentials geschrieen werden +$ + arrow(E) = - arrow(nabla) Phi (arrow(r)), space Phi (r) = (q_1 ) / (4 pi epsilon_0 ) (1) / (abs(r - r_1 )), r_1: "Position der Ladung" +$ + +#remark[ + Der Gradient macht aus einem Skalarfeld ein Vektorfeld. +] + +Falls das Linienintegral vom Weg abhaengen wuerde, dann wuerde die Definition eines allgemeinen Potentials nicht wohldefiniert sein. +Fuer Potentiale gilt auch das Superpositionsprinzip +$ + Phi (arrow(r)) = sum_(i=0)^(N) (q_i ) / (4 pi epsilon_0 ) (1) / (abs(arrow(r)- arrow(r'))) . +$ +Eine Aequipotentialsflaeche ist eine Flaeche auf der $Phi$ konstant ist. +Die Geometrie dieser haengt von der Form der Ladung ab. + +Dabei faellt auf, dass die Feldlinien immer $perp$ auf Aequipotentialflaechen sind. +Ware das nicht so gaebe es Vektorkomponenten von $arrow(E)$ in der Aequipotentialflaeche dann wegen +$ + arrow(E) = - arrow(nabla) Phi +$ +auch Komponente von $arrow(nabla) Phi ==> Phi$ wuerde dann innerhalb der Aequipotentialfaleche aendern. Widerspruch. + +#definition[ + Die *elektrische Spannung* $U$ ist als die Potentialdifferenz zwischen zwei Punkten im Raum definiert + $ + U_(1 2) := Phi (arrow(r)_(2) - Phi (arrow(r)_(1)) ), space [U] = 1 ("Nm") / ("As") = 1"V". + $ + Arbeit im $arrow(E)$-Feld kann so auch durch die Spannung charakterisiert werden + $ + W_(1 2) = q integral_(r_1 )^(r_2 ) arrow(E) d arrow(s) = q U_(1 2). + $ +] + +Die Energie die ein Elektron braucht um eine Potentaldifferenz von $1"V"$ zu ueberqueren betraegt ein elektron Volt $["eV"]$. + +== 1. Maxwellgleichung + +$ + arrow(nabla) * arrow(E) = (rho) / (epsilon_0 ), space "da" arrow(E) = - arrow(nabla) Phi \ + ==> arrow(nabla) * arrow(nabla) * Phi = - (rho) / (epsilon_0 ), space arrow(nabla) arrow(nabla) = Delta "Laplace Operator" +$ + +#theorem[ + Poisson Gleichung. + Es gilt fuer ein gegebenes elektrisches Potential + $ + Delta Phi = - (rho) / (epsilon_0 ). + $ +] + diff --git a/S2/ExPhyII/notes.txt b/S2/ExPhyII/notes.txt new file mode 100644 index 0000000..c2ca5af --- /dev/null +++ b/S2/ExPhyII/notes.txt @@ -0,0 +1,9 @@ +# Begriffe + +Ladung +Induzierte Ladung +Induzierte Ladungsdichte +Elektrisches Potential +Elektrische Spannung (Potentialdifferenz) +Ladungsverteilung + diff --git a/S2/ExPhyII/preamble.typ b/S2/ExPhyII/preamble.typ index a40c607..8f26ce8 100644 --- a/S2/ExPhyII/preamble.typ +++ b/S2/ExPhyII/preamble.typ @@ -1,9 +1,10 @@ #import "../../data/default.typ": * +#import "../../data/theorems.typ": * #let rot = math.op("rot") #let grad = math.op("grad") -#let conf(num: none, date: "", body) = { +#let conf(num: none, date: "", type: none, body) = { // Global settings show: default diff --git a/S2/ExPhyII/template.typ b/S2/ExPhyII/template.typ deleted file mode 100644 index f27b5c1..0000000 --- a/S2/ExPhyII/template.typ +++ /dev/null @@ -1,6 +0,0 @@ -#import "../preamble.typ": * - -#show: conf.with(num: 1) - -= Uebersicht - diff --git a/S2/Neuro/VL/NeuroVL3.typ b/S2/Neuro/VL/NeuroVL3.typ new file mode 100644 index 0000000..759e81e --- /dev/null +++ b/S2/Neuro/VL/NeuroVL3.typ @@ -0,0 +1,62 @@ +// Main VL Template +#import "../preamble.typ": * + +#show: conf.with( + // May add more flags here in the future + num: 3 +) + += Synapses + +The synapses are the connection between two neurons. + +The transportation of the signal goes in three stages $"chemical" -> "electrical" -> "chemical"$. + +Chemical synapses are very common for learning. + +There are different neurotransmitters. +Where as GABA is the most present inhibitory transmitter (it makes the AP more negative). +Glutamate is the most relevant exititory transmitter. +Glycine is also inhibitory. +NMDA is a chemical agonist. It opens just certain channels. + +The presynaptic signal does depolarize the other cell to be positive. + +The reversal potiential does start when you open all the channels it is usually plus 30. + +Q: What is LTP? + +Synapses are used to trasmit signals from the axon of a source to the dendrite of a target neuron. + +There are electrical and chemical synases. +At an electrical synapse we have direct electrial coupling +At a chemical synapse a chemical subastanse is used to trasport the signal. + +Electrical synapses operate bi -directional and are extremely fast. + + +AP creates a negative calcium current which are opeing the cages for the transmitters. + +EPSP and IPSP + +General reduction of the Hodgkin-Huxley Model + +2 dimensioanl Neuron Models + +$ + tau (dif u) / (dif t) = F (u,w) + I (t) \ + tau_(w) (dif w) / (dif t) = G (u,w) +$ +where $I (t)$ is a Stimulus. + +This leads to the following equations where $beta and gamma$ are constants. +$ (dif u) / (dif t) = u - (u^3 ) / (3) - w + I \ +(dif w) / (dif t) = epsilon (u + beta - gamma w) \ +$ + +An introductionary example is the harmonix Oscillator (already did this in physics class). + +The crossing of the nullclines show the fixpoints. + +Van der Pol differential equations. + diff --git a/S2/Neuro/preamble.typ b/S2/Neuro/preamble.typ index a40c607..8f26ce8 100644 --- a/S2/Neuro/preamble.typ +++ b/S2/Neuro/preamble.typ @@ -1,9 +1,10 @@ #import "../../data/default.typ": * +#import "../../data/theorems.typ": * #let rot = math.op("rot") #let grad = math.op("grad") -#let conf(num: none, date: "", body) = { +#let conf(num: none, date: "", type: none, body) = { // Global settings show: default diff --git a/S2/Neuro/template.typ b/S2/Neuro/template.typ deleted file mode 100644 index f27b5c1..0000000 --- a/S2/Neuro/template.typ +++ /dev/null @@ -1,6 +0,0 @@ -#import "../preamble.typ": * - -#show: conf.with(num: 1) - -= Uebersicht - diff --git a/data/default.typ b/data/default.typ index 9ed7991..270f444 100644 --- a/data/default.typ +++ b/data/default.typ @@ -3,7 +3,7 @@ #import "@preview/equate:0.2.1": equate #import "@preview/quick-maths:0.2.1": shorthands -#import "./theorems.typ": * +//#import "./theorems.typ": * #let default(body) = { // page setup diff --git a/data/template.typ b/data/template.typ index 4d0e02b..921bc3f 100644 --- a/data/template.typ +++ b/data/template.typ @@ -1,9 +1,21 @@ -// Main VL Template +// Main VL template #import "../preamble.typ": * - + +// Fix theorems to be shown the right way in this document +#import "@preview/ctheorems:1.1.3": * +#show: thmrules + +// Main settings call #show: conf.with( // May add more flags here in the future - num: 1 + num: 5, + type: 0, // 0 normal, 1 exercise + date: datetime.today().display(), + //date: datetime( + // year: 2025, + // month: 5, + // day: 1, + //).display(), ) = Uebersicht diff --git a/data/theorems.typ b/data/theorems.typ index 01db9ce..7f100b3 100644 --- a/data/theorems.typ +++ b/data/theorems.typ @@ -10,6 +10,7 @@ // What is this for? #show: thmrules + // Use this to format the size: inset: (x: 1.2em, top: 1em, bottom: 1em) // TODO: fix the alignment @@ -20,6 +21,7 @@ // "base", //) +// Global baselevel for the boxes #let BASE_LEVEL = 0 #let theorem = thmbox( //tem @@ -47,13 +49,12 @@ "definition", "Definition", base_level: BASE_LEVEL, - fill: rgb("#eedebb"), + fill: rgb("#efdebf99"), bodyfmt: body => [ #body #h(1fr) ] ) - #let axiom = thmbox( //axi "axiom", "Axiom", diff --git a/pdfs/template.pdf b/pdfs/template.pdf deleted file mode 100644 index 51aa9eba10d7d1eb4f16efc56d393a99f479c029..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12388 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 X4+YDo51Be<;oz(f#waMLs;~Ax!&o$;