Bis Band 5
This commit is contained in:
+422
@@ -0,0 +1,422 @@
|
||||
#import "@preview/cetz:0.4.2" //Grafiken
|
||||
//#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
#import "@preview/marge:0.1.0": sidenote
|
||||
|
||||
#import "@preview/itemize:0.2.0" as el
|
||||
|
||||
#import "deckblatt.typ": deckblatt
|
||||
|
||||
#import "abhaengigkeit.typ": abhaengigkeit
|
||||
|
||||
#import "grafiken.typ": *
|
||||
|
||||
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
||||
|
||||
#let def-counter = counter("definition")
|
||||
|
||||
// Zähler bei jedem neuen Kapitel zurücksetzen
|
||||
#show heading.where(level: 1): it => {
|
||||
it
|
||||
def-counter.update(0)
|
||||
}
|
||||
|
||||
#let definition(title: none, body, label: none) = context {
|
||||
def-counter.step()
|
||||
|
||||
let h1-num = counter(heading).at(here()).first()
|
||||
let d-num = def-counter.at(here()).first()
|
||||
let full-num = [#h1-num.#d-num]
|
||||
|
||||
// Die Figure wird erstellt und das Label direkt angehängt
|
||||
[
|
||||
#figure(
|
||||
block(width: 100%, align(left)[
|
||||
*Definition #full-num*: #if title != none [(#title)] #body
|
||||
]),
|
||||
kind: "definition",
|
||||
supplement: [D.],
|
||||
numbering: _ => full-num,
|
||||
) #label
|
||||
]
|
||||
}
|
||||
|
||||
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||
#show heading.where(level: 1): it => {
|
||||
it
|
||||
def-counter.update(1)
|
||||
}
|
||||
|
||||
|
||||
#let sn-base = sidenote
|
||||
|
||||
#show math.equation: it => {
|
||||
if it.body.fields().at("size", default: none) != "display" {
|
||||
return math.display(it)
|
||||
}
|
||||
it
|
||||
}
|
||||
|
||||
#let snr(it) = sn-base(side: right, padding: 1em)[
|
||||
#set text(size: 1.3em, weight: "bold")
|
||||
#it
|
||||
]
|
||||
#let snl(it) = sn-base(side: left, padding: 1em)[
|
||||
#set text(size: 1.3em, weight: "bold")
|
||||
#it
|
||||
]
|
||||
|
||||
#set text(
|
||||
font: "Lato", //Serifenlose Schrift
|
||||
size: 8.5pt,
|
||||
lang: "de", //Deutsche Spracheinstellungen
|
||||
)
|
||||
|
||||
|
||||
#set page(
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
margin: 20mm,
|
||||
)
|
||||
|
||||
#set par(
|
||||
justify: true, //Blocksatz
|
||||
leading: 0.55em,
|
||||
)
|
||||
#let tt = "SCHELL"
|
||||
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
|
||||
// Einfach die Funktion aufrufen
|
||||
#deckblatt(bandnr: "3", autor: tt, titel: "Unendliche Reihen")
|
||||
|
||||
#pagebreak()
|
||||
|
||||
#set page(
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
margin: 20mm,
|
||||
)
|
||||
|
||||
#set par(
|
||||
justify: true, //Blocksatz
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
|
||||
#set page(
|
||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||
margin: (
|
||||
top: 2mm,
|
||||
bottom: 2mm,
|
||||
x: 10mm,
|
||||
),
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
)
|
||||
#v(9mm)
|
||||
#heading(outlined: false)[Abhängigkeitsgraph]
|
||||
|
||||
#v(-6mm)
|
||||
#scale(x:90%, y:90%)[#abhaengigkeit]
|
||||
|
||||
//#scale(factor: 90%, abhaengigkeit)
|
||||
//#abhaengigkeit
|
||||
|
||||
#show heading: it => {
|
||||
set block(below: if it.level == 1 { 2em } else { 1em })
|
||||
it
|
||||
}
|
||||
|
||||
#counter(page).update(1)
|
||||
#pagebreak()
|
||||
#set text(font: "Lato")
|
||||
|
||||
#set text(
|
||||
font: "Lato", //Serifenlose Schrift
|
||||
size: 9pt,
|
||||
lang: "de", //Deutsche Spracheinstellungen
|
||||
)
|
||||
#set par(
|
||||
justify: true,
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
#set page(
|
||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||
margin: (
|
||||
top: 18mm,
|
||||
bottom: 20mm,
|
||||
x: 15mm,
|
||||
),
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
|
||||
)
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
#set outline(indent: auto)
|
||||
|
||||
|
||||
#set page(
|
||||
header: context {
|
||||
// 1. Kapitelstart-Check (wie zuvor)
|
||||
let h1_on_page = query(heading.where(level: 1))
|
||||
.any(it => it.location().page() == here().page())
|
||||
if h1_on_page { return none }
|
||||
|
||||
let page_num = here().page()
|
||||
|
||||
// 2. Aktuelle Überschriften finden
|
||||
let h1_current = query(heading.where(level: 1))
|
||||
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||
let h2_current = query(heading.where(level: 2))
|
||||
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||
|
||||
// Hilfsfunktion: Nummer + Text zusammenfügen
|
||||
let format-head(h) = {
|
||||
if h != none {
|
||||
// Falls die Überschrift eine Nummerierung hat, diese anzeigen
|
||||
if h.numbering != none {
|
||||
numbering(h.numbering, ..counter(heading).at(h.location()))
|
||||
[ ] // Kleiner Abstand
|
||||
}
|
||||
h.body
|
||||
}
|
||||
}
|
||||
|
||||
// 3. Layout (Zahlen außen, Text innen oder wie gewünscht)
|
||||
set text(size: 9pt, style: "italic") // Header dezent formatieren
|
||||
|
||||
if calc.even(page_num) {
|
||||
// Gerade Seite: [Seite] [Kapitelnummer Text]
|
||||
grid(
|
||||
columns: (20pt, 1fr),
|
||||
align(left)[#page_num],
|
||||
align(right)[#format-head(h1_current)]
|
||||
)
|
||||
} else {
|
||||
// Ungerade Seite: [Unterkapitelnummer Text] [Seite]
|
||||
grid(
|
||||
columns: (1fr, 20pt),
|
||||
align(left)[#format-head(h2_current)],
|
||||
align(right)[#page_num]
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
)
|
||||
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
#show selector(<nonumber>): set heading(numbering: none)
|
||||
|
||||
= Vorwort <nonumber>
|
||||
|
||||
Der vorliegende 3. Band der Lehrbuchreihe für Ingenieure, Naturwissenschaftler, Ökonomen und Landwirte ist den unendlichen Reihen (im Reellen) gewidmet. Er gibt eine Einführung in ihre Theorie und stellt solche Anwendungsmöglichkeiten der unendlichen Reihen dar, die für einen großen Teil des Benutzerkreises von Wichtigkeit sind.
|
||||
|
||||
Das Buch gliedert sich in sechs Abschnitte. Dem einführenden Abschnitt folgen zwei Abschnitte, die den Leser mit grundsätzlichen Fragen zur Konvergenz von unendlichen Reihen und zum Rechnen mit ihnen bekannt machen sollen; einer davon behandelt Reihen mit konstanten Gliedern, der andere Funktionenreihen. In ihnen steht die Theorie stärker im Vordergrund als in den folgenden Teilen des Buches. Die nächsten beiden Abschnitte sind den Potenzreihen und den Fourierreihen gewidmet. Hierin werden insbesondere die Anwendungsmöglichkeiten breit dargestellt. Am Ende steht ein Abschnitt über Fourierintegrale, die eigentlich gar nicht zum Gegenstand des Buches gehören, aber wegen ihres engen Zusammenhanges zu den Fourierreihen in Ergänzung und Verallgemeinerung des 5. Abschnittes mit aufgenommen wurden.
|
||||
|
||||
Entsprechend der Zielstellung der Lehrbuchreihe wird die Theorie nicht lückenlos entwickelt. So sind im wesentlichen nur solche Beweise aufgenommen worden, die erforderlich oder geeignet sind, um bei einem Studierenden, der Mathematik als Nebenfach betreibt, zu einem vertieften mathematischen Verständnis beizutragen. In den Text sind viele ausführlich durchgerechnete Beispiele eingefügt, die das Durcharbeiten erleichtern und den Studenten, insbesondere den Fernstudenten, beim Selbststudium eine Hilfe sein sollen. Eine Auswahl von Übungsaufgaben, mit deren Lösung sich der Studierende die erforderlichen Fertigkeiten im Umgang mit Reihen aneignen sollte, findet sich jeweils am Ende eines Abschnittes. Die Lösungen sind am Ende des Buches zusammengestellt.
|
||||
|
||||
Das erfolgreiche Studium des vorliegenden Bandes setzt beim Leser die Kenntnis des Stoffes voraus, der in den Bänden 1 (Grundlagen) und 2 (Differential- und Integralrechnung) behandelt
|
||||
|
||||
#figure(
|
||||
{
|
||||
set math.equation(numbering: none)
|
||||
scale(x: 90%, y: 90%, reflow: true, b3_0)
|
||||
},
|
||||
) <abb0>
|
||||
|
||||
wird. Innerhalb dieses Buches sind die Abschnitte 2. und 3.1. grundlegend für das Verständnis aller folgenden. Die weiteren Abschnitte können z. T. unabhängig voneinander durchgearbeitet werden; im einzelnen ist das der Übersicht auf Seite 3 zu entnehmen.
|
||||
|
||||
Für wertvolle Ratschläge und Verbesserungen bei der Durchsicht des Manuskripts danke ich den Herren Prof. Dr. K. Manteuffel (Technische Hochschule Magdeburg), Dr. W. Schirotzek (Technische Universität Dresden) und W. Riemenschneider. Frau M. Graupner danke ich für das sorgsame Schreiben des Manuskripts. Nicht zuletzt gilt mein Dank dem Verlag für sein verständnisvolles Entgegenkommen.
|
||||
|
||||
Karl-Marx-Stadt, im Juli 1973 #h(1fr)H.-J. Schell
|
||||
|
||||
|
||||
= Vorwort zur 5. Auflage <nonumber>
|
||||
|
||||
Auf Grund der günstigen Aufnahme des Buches ist bisher von größeren Änderungen abgesehen worden. In der vorliegenden 5 . Auflage wurde, entsprechend der wachsenden Bedeutung numerischer Methoden für den Ingenieur, ein Abschnitt „Numerische harmonische Analyse“ neu aufgenommen. Neu gestaltet wurde der Abschnitt 5.10. Hier werden jetzt verallgemeinerte Fourierreihen eingeführt, und es wird die Approximation im quadratischen Mittel durch Teilsummen solcher Reihen behandelt. Dadurch wird eine übersichtlichere Darstellung möglich. Um den Umfang des Buches nicht zu vergrößern, wurden geringfügige Kürzungen vorgenommen und die Beweise einiger Sätze weggelassen, die für die Ausbildung der Studenten, auf die diese Reihe zielt, ohnehin am Rande liegen.
|
||||
|
||||
Karl-Marx-Stadt, im Februar 1984 #h(1fr) H.-J. Schell
|
||||
|
||||
#pagebreak()
|
||||
|
||||
#outline()
|
||||
#pagebreak()
|
||||
|
||||
= Zum Gegenstand und zur Bedeutung unendlicher Reihen
|
||||
|
||||
Die Theorie der unendlichen Reihen ist ein wesentlicher Bestandteil der Analysis. Sie befaßt sich mit der Konvergenzuntersuchung von Reihen, der Ermittlung ihrer Summen (im Konvergenzfall) und den Rechenoperationen mit unendlichen Reihen. Ihre Anwendungen erstrecken sich auf nahezu alle Teile der Analysis. Viele Untersuchungen werden durch Heranziehung unendlicher Reihen wesentlich vereinfacht oder überhaupt erst ermöglicht.
|
||||
|
||||
Anhand eines Beispiels wollen wir uns zunächst eine Vorstellung von einer unendlichen Reihe und dem Konvergenzbegriff geben. Wir gehen von der Zahlenfolge $1/2, 1/4, 1/8, 1/16, dots$ aus und bilden die Summen $s_n$ der ersten $n$ Glieder ( $n=1,2,3, dots$ ). Dabei erhalten wir, wie man durch vollständige Induktion sofort bestätigen kann,
|
||||
|
||||
$ s_n=1/2+1/4+1/8+1/2^n=1-1/2^n $
|
||||
|
||||
|
||||
Am Ergebnis ist erkennbar, daß die Summen $s_n$ mit wachsendem $n$ gegen $1$ streben. Wenn wir nun die Summe $s_n$ als $n$-tes Glied einer neuen Zahlenfolge auffassen, so heißt das gerade, daß diese konvergiert und den Grenzwert $1$ hat. Auf Grund dieses Verhaltens der Summen $s_n$ sagt man, daß die unendliche Reihe $1/2+1/4+1/8+ dots$ konvergiert und die Summe (auch: den Wert) $1$ hat.
|
||||
|
||||
Am Ergebnis ist erkennbar, daß die Summen $s_n$ mit wachsendem $n$ gegen 1 streben. Wenn wir nun die Summe $s_n$ als $n$-tes Glied einer neuen Zahlenfolge auffassen, so heißt das gerade, daß diese konvergiert und den Grenzwert 1 hat. Auf Grund dieses Verhaltens der Summen $s_n$ sagt man, daß die unendliche Reihe $\frac{1}{2}+\frac{1}{4}+\frac{1}{8}+\ldots$ konvergiert und die Summe (auch: den Wert) 1 hat.
|
||||
|
||||
Die Konvergenz einer unendlichen Reihe wird also mittels der Konvergenz einer Zahlenfolge definiert, die so beschaffen ist, daß ihr $n$-tes Glied $s_n$ die Summe der ersten $n$ Glieder einer anderen, gegebenen Zahlenfolge ist. Insofern erscheint die Reihe gewissermaßen als Summe aus den unendlich vielen Gliedern dieser anderen Zahlenfolge, und diese Vorstellung verband sich mit dem Reihenbegriff bei seiner Entstehung und noch geraume Zeit danach. Aber eine Summe aus unendlich vielen Zahlen ist kein mathematisch sinnvolles Objekt, und daher sei von vornherein vor einer solchen falschen Vorstellung von einer unendlichen Reihe gewarnt. Wenn man im obigen Beispiel trotzdem davon spricht, daß die unendliche Reihe $\frac{1}{2}+\frac{1}{4}+\frac{1}{8}+\ldots$ die Summe 1 hat, so hat das historische Gründe; es handelt sich nicht um eine Summe im Sinne des Ergebnisses einer Addition. "Summe" ist in unserem Beispiel nichts anderes als eine Benennung für den Grenzwert der Zahlenfolge $\left\{\sum_{v=1}^n \frac{1}{2^v}\right\}$ für $n \rightarrow \infty$. Wie wir noch sehen werden, darf man mit einer Reihensumme im allgemeinen auch nicht so rechnen wie mit einer echten Summe.
|
||||
|
||||
Wenn wir jedoch eine konvergente Reihe nach $n$ Gliedern ( $n$ hinreichend gro $B$ ) abbrechen, d. h. die (echte) Summe aus den ersten $n$ Gliedern bilden, so ist diese ein Näherungswert für die Reihensumme, und die Abweichung beider voneinander läßt sich im Prinzip beliebig klein machen, indem man $n$ groß genug wählt. Diese Tatsache nutzt man bei der praktischen Anwendung unendlicher Reihen aus.
|
||||
|
||||
Die Bedeutung der unendlichen Reihen erwächst daraus, daß außer solchen Reihen, deren Glieder Zahlen sind (wir sprechen hier von Reihen mit konstanten Gliedern), hauptsächlich Reihen benutzt werden, deren Glieder Funktionen einer unabhängigen Variablen sind (Funktionenreihen). Dabei beschränken wir uns auf Funktionen einer reellen Variablen; die sehr wichtige Ausdehnung auf den Fall komplexer Variabler ist nicht Gegenstand dieses Bandes (vgl. Band 9).
|
||||
|
||||
Die Summe einer konvergenten reellen Funktionenreihe ist selbst eine Funktion einer reellen Variablen. Somit kann eine konvergente Funktionenreihe als eine Darstellung einer Funktion (nämlich ihrer Summenfunktion) angesehen werden. Sehr wichtig ist das Problem, eine in einer anderen Form gegebene Funktion $f(x)$ in eine Funktionenreihe zu entwickeln, d. h. sie durch eine solche Reihe darzustellen. Insbesondere interessieren Entwicklungen in Potenz- bzw. Fourierreihen, die die wichtigsten Vertreter der Funktionenreihen sind. So kann man für eine komplizierte Funktion aus ihrer Potenzreihenentwicklung - innerhalb gewisser Intervalle gut brauchbare - Näherungspolynome erhalten, indem man die Entwicklung nach endlich vielen Gliedern abbricht. Beispielsweise entnimmt man aus der Potenzreihenentwicklung
|
||||
|
||||
$$
|
||||
\mathrm{e}^x=1+x+\frac{x^2}{2!}+\frac{x^3}{3!}+\ldots,
|
||||
$$
|
||||
|
||||
daß $\mathrm{e}^x \approx 1+x+\frac{x^2}{2}+\frac{x^3}{6}$ für alle $x$ mit hinreichend kleinem Betrag gilt. Wenn $|x| \leqq 0,1$ gilt, ist der Fehler, der bei Ersetzung von $f(x)=\mathrm{e}^x$ durch das Polynom $g(x)=1+x+\frac{x^2}{2}+\frac{x^3}{6}$ entsteht, kleiner als $10^{-5}$. Durch Hinzunahme weiterer Glieder der Reihe zu dem Polynom wird die Annäherung weiter verbessert, und die eben angegebene Genauigkeit wird noch für $x$-Werte mit einem größeren Betrag als 0,1 erreicht.
|
||||
|
||||
Fourierreihen lassen die Zusammensetzung periodischer Funktionen (bzw. der durch sie beschriebenen zeitlich abhängigen periodischen Vorgänge) aus Sinus- und Kosinusfunktionen erkennen. Zum Beispiel kann eine periodisch sich wiederholende Folge von Dreiecksimpulsen der Dauer $2 \pi$ und der Höhe 1 durch die Fourierreihe
|
||||
|
||||
$$
|
||||
\frac{1}{2}-\frac{4}{\pi^2}\left(\cos x+\frac{\cos 3 x}{3^2}+\frac{\cos 5 x}{5^2}+\ldots\right)
|
||||
$$
|
||||
|
||||
wiedergegeben werden (vgl. Beispiel 5.4).
|
||||
Mit den Funktionenreihen können auch gewisse Rechenoperationen ausgeführt werden. Insbesondere können sie unter gewissen Voraussetzungen Glied für Glied integriert und differenziert werden. Daraus ergibt sich z. B. die Möglichkeit, Stammfunktionen von solchen Funktionen durch Funktionenreihen (insbesondere Potenzreihen) auszudrücken, die sich einer geschlossenen Darstellung mit Hilfe elementarer Funktionen entziehen. In Verallgemeinerung dessen bilden die Potenzreihen ein Hilfsmittel bei der Lösung gewöhnlicher Differentialgleichungen, für die die elementaren Integrationsmethoden nicht anwendbar sind. Diese wenigen Beispiele mögen genügen, um dem Leser einen ersten Eindruck von der Bedeutung der unendlichen Reihen zu vermitteln.
|
||||
|
||||
2. Reihen mit konstanten Gliedern
|
||||
2.1. Der Konvergenzbegriff bei unendlichen Reihen
|
||||
|
||||
Wir denken uns eine Zahlenfolge $a_0, a_1, a_2, \ldots\left(a_v\right.$ reell) gegeben und bilden daraus rein formal den Ausdruck
|
||||
|
||||
$$
|
||||
a_0+a_1+a_2+\ldots,
|
||||
$$
|
||||
|
||||
den wir mit Hilfe des Summenzeichens auch in der Form $\sum_{\nu=0}^{\infty} a_\nu$ schreiben. Einen solchen Ausdruck nennt man eine unendliche Reihe (oft auch kurz Reihe). Die Zahlen $a_v$ werden Glieder der Reihe genannt, und die Summe aus den ersten $n+1$ Gliedern der Reihe ( $n$ fest),
|
||||
|
||||
$$
|
||||
s_n=a_0+a_1+\ldots+a_n=\sum_{\nu=0}^n a_\nu,
|
||||
$$
|
||||
|
||||
heißt $n$-te Teilsumme der Reihe.
|
||||
Definition 2.1: Eine unendliche Reihe $\sum_{\nu=0}^{\infty} a_\nu$ heißt konvergent, wenn die Folge $s_0, s_1, s_2, \ldots$ ihrer Teilsummen konvergiert; in diesem Fall heißt der Grenzwert $s=\lim _{n \rightarrow \infty} s_n$ Summe der Reihe. Eine Reihe heißt divergent, wenn die Folge ihrer Teilsummen divergiert.
|
||||
|
||||
Dabei bedeutet die Konvergenz der Folge $\left\{s_n\right\}$ gegen $s$, daß zu jedem $\varepsilon>0$ eine natürliche Zahl $N(\varepsilon)$ existiert, so daß $\left|s-s_n\right|<\varepsilon$ für alle $n>N(\varepsilon)$ gilt (vgl. Band 1,10.4.)
|
||||
|
||||
Bei einer konvergenten Reihe mit der Summe $s$ schreibt man $\sum_{\nu=0}^{\infty} a_\nu=s$ (anstelle von $\lim _{n \rightarrow \infty} s_n=s$ ), womit sowohl zum Ausdruck gebracht wird, daß die Reihe $\sum_{\nu=0}^{\infty} a_\nu$ über${ }^{n \rightarrow \infty}$ haupt konvergiert, als auch, daß $s$ ihre Summe ist. Das Zeichen $\sum_{\nu=0}^{\infty} a_\nu^{\nu=0}$ steht also zugleich für die Reihensumme. Wir wollen nochmals unterstreichen, daß aus der Benennung „Summe“ für $\lim _{n \rightarrow \infty} S_n$ nicht geschlossen werden darf, daß man mit einer unendlichen Reihe wie mit einer Summe aus endlich vielen Zahlen rechnen kann.
|
||||
|
||||
Es sei darauf hingewiesen, daß das erste Reihenglied nicht etwa immer $a_0$ sein muß. So bezeichnet auch $\sum_{\nu=k}^{\infty} a_\nu$, wobei $k$ irgendeine natürliche Zahl sein kann, eine unendliche Reihe (mit $a_k$ als erstem Glied). Eine andere mögliche Schreibweise hierfür wäre $\sum_{\nu=0}^{\infty} a_{\nu+k}$.
|
||||
Beispiel 2.1: Ein ganz elementares Beispiel einer unendlichen Reihe ist die geometrische Reihe
|
||||
|
||||
$$
|
||||
1+q+q^2+q^3+\ldots=\sum_{\nu=0}^{\infty} q^\nu, \quad(q \text { reelle Zahl }) .
|
||||
$$
|
||||
|
||||
|
||||
Das in Abschnitt 1. angeführte Beispiel ist eine solche Reihe; dort ist $q=\frac{1}{2}$, und die Reihe beginnt erst mit dem Glied $q^1$. Die $n$-te Teilsumme der Reihe (2.3) ist
|
||||
|
||||
$$
|
||||
s_n=1+q+q^2+\ldots+q^n=\frac{1-q^{n+1}}{1-q}, \quad q \neq 1
|
||||
$$
|
||||
|
||||
(für $q=1$ ist offenbar $s_n=n+1$ ). Da $\lim _{n \rightarrow \infty} q^{n+1}=0$ für jedes $q$ mit $|q|<1$ gilt,
|
||||
|
||||
konvergiert die Folge $\left\{s_n\right\}$ und damit die geometrische Reihe für diese $q$, und aus (2.4) folgt
|
||||
|
||||
$$
|
||||
\sum_{v=0}^{\infty} q^v=\frac{1}{1-q}, \quad|q|<1 .
|
||||
$$
|
||||
|
||||
|
||||
Für jedes $q$ mit $|q| \geqq 1$ ist $\lim _{n \rightarrow \infty} s_n$ nicht vorhanden und daher die geometrische Reihe divergent. Wie bei Zahlenfolgen unterscheidet man zwischen bestimmter und unbestimmter Divergenz. Bestimmte Divergenz liegt vor, wenn $\lim _{n \rightarrow \infty} s_n=+\infty$ oder $\lim _{n \rightarrow \infty} s_n=-\infty$ gilt; andernfalls spricht man von unbestimmter Divergenz. Die geometrische Reihe ist für $q \geqq 1$ bestimmt divergent gegen $+\infty$ (man schreibt dafür $\sum_{\nu=0}^{\infty} q^\nu=\infty$ ); für $q \leqq-1$ ist sie dagegen unbestimmt divergent (man betrachte etwa den Fall $q=-1: 1-1+1-1+\ldots$, in dem die Teilsummen abwechselnd 1 und 0 sind).
|
||||
Beispiel 2.2: In Band 2, 6.3.4., ist die Taylorentwicklung der Funktion $f(x)=\mathrm{e}^x$ angegeben. Sie lautet $\mathrm{e}^x=\sum_{v=0}^n \frac{x^v}{v!}+R_n(x)$, wobei $R_n(x)$ das Restglied bezeichnet, das für jedes $x$ die Eigenschaft $\lim _{n \rightarrow \infty} R_n(x)=0$ besitzt. Speziell für $x=1$ erhält man $\mathrm{e}=\sum_{\nu=0}^n \frac{1}{\nu!}+R_n(1), \lim _{n \rightarrow \infty} R_n(1) \stackrel{n \rightarrow \infty}{=} 0$. Das heißt aber gerade, daß die Zahlenfolge mit dem $n$-ten Glied $s_n=\sum_{v=0}^n \frac{1}{v!}$ für $n \rightarrow \infty$ gegen e strebt. Folglich ist e die Summe der unendlichen Reihe $\sum_{\nu=0}^{\infty} \frac{1}{\nu!}$ :
|
||||
|
||||
$$
|
||||
\sum_{v=0}^{\infty} \frac{1}{v!}=\mathrm{e} .
|
||||
$$
|
||||
|
||||
|
||||
Durch Definition 2.1 ist die Konvergenzuntersuchung von Reihen auf die von Zahlenfolgen zurückgeführt. Daher gewinnt man aus Konvergenzkriterien und anderen Sätzen über konvergente Zahlenfolgen auch entsprechende grundsätzliche Aussagen über unendliche Reihen. Jedoch ergibt sich eine große Zahl weiterer Konvergenzaussagen nicht aus den Eigenschaften der Glieder $s_n$ der Teilsummenfolge, sondern aus den Reihengliedern $a_v$ selbst. Hieraus folgt schon, daß den Reihen durchaus eine eigenständige Bedeutung zukommt. Es kann umgekehrt zweckmäßig sein, die Konvergenzuntersuchung einer Zahlenfolge auf die einer unendlichen Reihe zurückzuführen. Ist nämlich $b_0, b_1, b_2, \ldots$ eine vorgegebene Folge, so ist sie gerade die Teilsummenfolge der Reihe $b_0+\left(b_1-b_0\right)+\left(b_2-b_1\right)+\ldots$, denn für diese Reihe ist $s_n=b_0+\left(b_1-b_0\right)+\ldots+\left(b_n-b_{n-1}\right)+b_n$.
|
||||
Beispiel 2.3: Die Reihe $\sum_{\nu=1}^{\infty} \frac{1}{v(v+1)}$ soll auf Konvergenz untersucht werden.
|
||||
|
||||
$$
|
||||
\text { Wegen } \begin{aligned}
|
||||
a_v & =\frac{1}{v(v+1)}=\frac{1}{v}-\frac{1}{v+1}, \quad v=1,2,3, \ldots, \text { wird } \\
|
||||
s_n & =\sum_{v=1}^n \frac{1}{v(v+1)}=1-\frac{1}{2}+\frac{1}{2}-\frac{1}{3}+\therefore-\frac{1}{n-1}+\frac{1}{n-1}-\frac{1}{n} \\
|
||||
& =1-\frac{1}{n}
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
also ist $\lim _{n \rightarrow \infty} s_n=1$. Die Reihe konvergiert mit der Summe 1 .
|
||||
Wir erwähnen schließlich noch den Begriff des Reihenrests.
|
||||
Definition 2.2: Wenn $\sum_{\nu=0}^{\infty} a_\nu$ eine gegebene Reihe ist, so nent man die Reihe
|
||||
D. 2.2
|
||||
|
||||
$$
|
||||
a_{n+1}+a_{n+2}+\ldots=\sum_{v=n+1}^{\infty} a_v \quad(n f e s t)
|
||||
$$
|
||||
|
||||
ihren n-ten Reihenrest.
|
||||
Die $m$-te Teilsumme des $n$-ten Reihenrests, $\sigma_m^{(n)}=a_{n+1}+a_{n+2}+\ldots+a_{n+m}$ ( $m=1,2,3, \ldots$ ) ergibt sich offenbar als Differenz der Teilsummen $s_{n+m}$ und $s_n$ der gegebenen Reihe:
|
||||
|
||||
$$
|
||||
\sigma_m^{(n)}=s_{n+m}-s_n .
|
||||
$$
|
||||
|
||||
|
||||
Aus (2.8) entnimmt man: Wenn die Reihe $\sum_{\nu=0}^{\infty} a_\nu$ konvergiert und $s$ als Summe hat, d. h. $\lim _{m \rightarrow \infty} s_{n+m}=s$ gilt, so existiert, da $s_n^{\prime}$ von $m$ unabhängig ist, auch $\lim _{m \rightarrow \infty} \sigma_m^{(n)}=r_n$; es ist also
|
||||
|
||||
$$
|
||||
r_n=s-s_n .
|
||||
$$
|
||||
|
||||
|
||||
Umgekehrt schließt man entsprechend aus der Konvergenz des $n$-ten Reihenrests auf die Konvergenz der Reihe selbst. Da $n$ beliebig ist, hat man folgendes Ergebnis:
|
||||
|
||||
Satz 2.1: Wenn eine Reihe $\sum_{v=0}^{\infty} a_v$ konvergiert, so konvergiert auch jeder ihrer Reihen-
|
||||
S. 2.1 reste, und es gilt (2.9) für alle n. Umgekehrt folgt aus der Konvergenz eines einzigen Reihenrests die Konvergenz der Reihe selbst.
|
||||
|
||||
Aus (2.9) ergibt sich weiter, daß für eine konvergente Reihe $\lim _{n \rightarrow \infty} r_n=0$ gilt. Daher kann die Summe $s$ einer konvergenten unendlichen Reihe näherungsweise durch eine Teilsumme $S_n$ (mit hinreichend großem $n$ ) ersetzt werden; der dabei begangene Fehler ist wegen (2.9) gleich $r_n$. So ergibt sich aus Beispiel 2.2 mit $n=6$ :
|
||||
|
||||
$$
|
||||
\mathrm{e} \approx s_6=1+\frac{1}{1!}+\frac{1}{2!}+\frac{1}{3!}+\frac{1}{4!}+\frac{1}{5!}+\frac{1}{6!} .
|
||||
$$
|
||||
|
||||
|
||||
Auf fünf Dezimalen genau ist $s_6=2,71806$ (zum Vergleich: $\mathrm{e}=2,71828 \ldots$ ).
|
||||
2.2 Einige elementare Eigenschaften unendlicher Reihen
|
||||
|
||||
Wir wollen nun erste elementare Eigenschaften kennenlernen, die wir für den Umgang mit unendlichen Reihen benötigen.
|
||||
|
||||
Satz 2.2: Wenn man in einer Reihe $\sum_{v=0}^{\infty} a_v$ endlich viele Glieder wegläßt oder hinzufügt
|
||||
|
||||
S. 2.2 oder durch andere ersetzt, so bleibt die Eigenschaft der Konvergenz bzw. Divergenz erhalten.
|
||||
|
||||
Auf eine etwas knappere Form gebracht, besagt der Satz, daß endlich viele Glieder keinen Einfluß auf das Konvergenzverhalten einer unendlichen Reihe haben.
|
||||
Beweis: Da nur an endlich vielen Gliedern Änderungen vorgenommen werden, gibt es einen Index $n$ der Art, daß alle Glieder $a_v$ der vorgelegten Reihe mit $v>n$ unver-
|
||||
|
||||
ändert bleiben. Nach Satz 2.1 ist der zu diesem Index $n$ gehörende Reihenrest konvergent oder divergent, je nachdem, ob die Reihe selbst konvergiert oder divergiert. Dieser Reihenrest ist aber auch ein Reihenrest der abgeänderten Reihe (eventuell mit einem anderen Index), und daher folgt, wieder nach Satz 2.1, daß die abgeänderte Reihe das gleiche Konvergenzverhalten wie der $n$-te Reihenrest der Reihe $\sum_{\nu=0}^{\infty} a_\nu$, also wie diese selbst hat.
|
||||
|
||||
Wenn man in einer konvergenten Reihe $\sum_{\nu=0}^{\infty} a_\nu$ jeweils eine endliche Anzahl aufeinanderfolgender Glieder zu einem neuen Glied zusammenfaßt (kurz: wenn man Klammern setzt), etwa $\left(a_0+a_1+\ldots+a_{k_0}\right)+\left(a_{k_0+1}+a_{k_0+2}+\ldots+a_{k 1}\right)+\ldots$, so entsteht eine neue Reihe. Über deren Konvergenzverhalten gilt
|
||||
S. 2.3 Satz 2.3: Es sei $\sum_{\nu=0}^{\infty} a_\nu=s$. Ist $k_0, k_1, k_2, \ldots$ eine streng monoton wachsende Folge natürlicher Zahlen und wird
|
||||
|
||||
$$
|
||||
\begin{aligned}
|
||||
& b_0=a_0+\ldots+a_{k_0}, \\
|
||||
& b_1=a_{k_0+1}+\ldots+a_{k_1},
|
||||
\end{aligned}
|
||||
$$
|
||||
|
||||
gesetzt, so ist auch $\sum_{\nu=0}^{\infty} b_\nu$ konvergent und hat die Summe s.
|
||||
Der Inhalt dieses Satzes kann kurz wie folgt zusammengefaßt werden: In einer konvergenten Reihe dürfen Klammern gesetzt werden.
|
||||
|
||||
Beweis: Die Folge der Teilsummen der Reihe $\sum_{\nu=0}^{\infty} b_\nu$ bildet eine Teilfolge der Folge der Teilsummen $s_n$ der Reihe $\sum_{\nu=0}^{\infty} a_\nu$ und hat daher denselben Grenzwert wie $\left\{s_n\right\}$ (vgl. Band 1, 10.5.).
|
||||
|
||||
Die Umkehrung von Satz 2.3 ist falsch, d. h., man darf nicht ohne weiteres Klammern weglassen. Das lehrt das folgende einfache Gegenbeispiel. Die Reihe $(1-1) +(1-1)+\ldots$ konvergiert und hat die Summe 0, aber die Reihe $1-1+1-1+\ldots$ divergiert (vgl. Beispiel 1.1). Hier haben wir ein erstes Beispiel dafür, daß man mit unendlichen Reihen nicht so rechnen darf wie mit gewöhnlichen Summen.
|
||||
S. 2.4 Satz 2.4: Es sei $\sum_{\nu=0}^{\infty} a_\nu=s$, und c sei eine beliebige Konstante. Dann konvergiert auch die Reihe $\sum_{\nu=0}^{\infty} c a_\nu \stackrel{\nu=0}{\nu}$ und hat die Summe cs.
|
||||
|
||||
Es gilt also $\sum_{\nu=0}^{\infty} c a_\nu=c \sum_{\nu=0}^{\infty} a_\nu$, d. h., ein konstanter Faktor kann bei einer konvergenten Reihe vor das Summenzeichen gezogen werden.
|
||||
Beweis: Mit $s_n=\sum_{\nu=0}^{\infty} a_\nu$ wird die $n$-te Teilsumme der Reihe $\sum_{\nu=0}^{\infty} c a_\nu$ gleich $\sum_{\nu=0}^{\infty} c a_\nu=c s_n$, und es gilt
|
||||
|
||||
$$
|
||||
\lim _{n \rightarrow \infty} c s_n=c \cdot \lim _{n \rightarrow \infty} s_n=c \dot{s}
|
||||
$$
|
||||
|
||||
S. 2.5 Satz 2.5: Es seien $\sum_{\boldsymbol{v}=0}^{\infty} a_{\boldsymbol{v}}=s, \sum_{\boldsymbol{v}=0}^{\infty} b_{\boldsymbol{v}}=t$. Dann konvergieren auch die Reihen $\sum_{\boldsymbol{v}=0}^{\infty}\left(a_{\boldsymbol{v}}+b_{\boldsymbol{v}}\right)$ bzw. $\sum_{\nu=0}^{\infty}\left(a_\nu-b_\nu\right)^{\nu=0}$ und haben die Summen's $+t$ bzw. $s-t$.
|
||||
@@ -0,0 +1,360 @@
|
||||
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
|
||||
|
||||
#let mynode(pos, zahl, inhalt, name) = {
|
||||
node(
|
||||
pos,
|
||||
name: name,
|
||||
shape: rect, // 1. Zwingt Fletcher zum Rechteck
|
||||
corner-radius: 0pt, // 2. Verhindert abgerundete Ecken
|
||||
fill: white, // Optional: Hintergrund füllen
|
||||
stroke: 1.25pt,
|
||||
|
||||
// 3. WICHTIG: Festlegen einer Mindestgröße, damit alle gleich starten
|
||||
// Anstatt extrude nutzen wir feste Maße, die sich aber am Gitter ausrichten
|
||||
width: 12em,
|
||||
height: 5.8em,
|
||||
|
||||
{
|
||||
// Dein Layout-Block
|
||||
set align(top + right)
|
||||
text(2.5em, fill: gray.darken(90%))[#zahl]
|
||||
place(bottom + left, inhalt)
|
||||
}
|
||||
)}
|
||||
|
||||
#let myedge(start, end, type, ) = {
|
||||
let sep = 0.15em
|
||||
edge(start, end, type)
|
||||
edge(start, end)
|
||||
}
|
||||
|
||||
|
||||
#let abhaengigkeit = diagram(
|
||||
spacing: (11mm, 7mm),
|
||||
//debug: 3,
|
||||
edge-stroke: 1.25pt,
|
||||
|
||||
mark-scale: 55%,
|
||||
mynode((0,0),"",[Vorbereitungsband], <A0>),
|
||||
mynode((1,0),"1", [Grundlagen], <A1>),
|
||||
mynode((2,0), "13",[Lineare Algebra], <A13>),
|
||||
|
||||
mynode((0,1),"3",[Unendliche Reihen], <A3>),
|
||||
mynode((1,1), "2",[Differential- und Integralrechnung], <A2>),
|
||||
mynode((2,1), "14",[Lineare Optimierung], <A14>),
|
||||
|
||||
mynode((0,2), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
|
||||
mynode((1,2), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
|
||||
mynode((2,2), "15",[Nichtlineare Optimierung], <A15>),
|
||||
|
||||
mynode((0,3), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
|
||||
mynode((1,3.), "5",[Integralrechnung mit mehreren Variablen], <A5>),
|
||||
mynode((2,3), "16",[Optimale Prozesse und Systeme], <A16>),
|
||||
|
||||
mynode((0,4), "8",[Partielle Differentialgleichungen], <A8>),
|
||||
mynode((1,4), "6",[Differentialgeometrie], <A6>),
|
||||
mynode((2,4), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
|
||||
|
||||
mynode((0,5), "9",[Komplexe Funktionen], <A9>),
|
||||
mynode((1,5), "10",[Operatorenrechnung], <A10>),
|
||||
mynode((2,5), [21$#sub(text(0.5em)[1])$],[Spieltheorie], <A21_1>),
|
||||
|
||||
mynode((0,6), "12",[Spezielle Funktionen], <A12>),
|
||||
mynode((1,6), "11",[Tensoralgebra und -analysis], <A11>),
|
||||
mynode((2,6), [21$#sub(text(0.5em)[2])$],[Graphentheorie], <A21_2>),
|
||||
|
||||
mynode((0,7), [18],[Numerische Methoden], <A18>),
|
||||
mynode((1,7), [20],[Simulation], <A20>),
|
||||
mynode((2,7), [19$#sub(text(0.5em)[1])$],[Stochastische Prozesse und Modelle], <A19_1>),
|
||||
|
||||
mynode((0,8), [22],[Funktionalanalysis], <A22>),
|
||||
mynode((1,8), [23],[Symmetriegruppen], <A23>),
|
||||
mynode((2,8), [19$#sub(text(0.5em)[2])$],[Statistische Versuchsplanung], <A19_2>),
|
||||
|
||||
|
||||
myedge(<A0.east>,<A1.west>,"-|>"),
|
||||
myedge(<A1.south>,<A2.north>,"-|>"),
|
||||
myedge(<A2.west>,<A3.east>,"-|>"),
|
||||
myedge(<A13.south>,<A14.north>,"-|>"),
|
||||
myedge(<A2.south>,<A4.north>,"-|>"),
|
||||
myedge(<A4.south>,<A5.north>,"-|>"),
|
||||
myedge(<A5.south>,<A6.north>,"-|>"),
|
||||
myedge(<A14.south>,<A15.north>,"-|>"),
|
||||
myedge(<A7_1.south>,<A7_2.north>,"-|>"),
|
||||
myedge(<A7_2.south>,<A8.north>,"-|>"),
|
||||
myedge(<A8.south>,<A9.north>,"-|>"),
|
||||
myedge(<A9.south>,<A12.north>,"-|>"),
|
||||
myedge(<A12.south>,<A18.north>,"-|>"),
|
||||
myedge(<A10.south>,<A11.north>,"-|>"),
|
||||
myedge(<A15.south>,<A16.north>,"-|>"),
|
||||
myedge(<A17.south>,<A21_1.north>,"-|>"),
|
||||
myedge(<A19_1.south>,<A19_2.north>,"-|>"),
|
||||
// NEUES Edge: 1,3 (n3_1) → 3,2 (n2_3)
|
||||
// Verlauf: rechts von n3_1 nach rechts, runter auf Höhe von n2_3, dann links zur Node
|
||||
|
||||
//9 → 22
|
||||
edge(
|
||||
vertices: (
|
||||
<A9.east>,
|
||||
(0, 5.2), // deutlich nach rechts → sichtbarer Knick
|
||||
(0.5, 5.2), // dann nach links
|
||||
(0.5, 8), // runter
|
||||
<A22.east>,
|
||||
),
|
||||
corner: right,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: orange + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
//10 → 22
|
||||
edge(
|
||||
vertices: (
|
||||
<A10.west>,
|
||||
(1, 5.2), // deutlich nach rechts → sichtbarer Knick
|
||||
(0.5, 5.2), // dann nach links
|
||||
(0.5, 8), // runter
|
||||
<A22.east>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: orange + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
//3 → 7.2
|
||||
edge(
|
||||
vertices: (
|
||||
<A3.west>,
|
||||
(-0.85, 1), // deutlich nach rechts → sichtbarer Knick
|
||||
(-0.85, 1), // dann nach links
|
||||
(-0.85, 3), // runter
|
||||
<A7_2.west>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: red + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
|
||||
//13 → 4
|
||||
edge(
|
||||
vertices: (
|
||||
<A13.west>,
|
||||
(2, 0.18), // deutlich nach rechts → sichtbarer Knick
|
||||
(1.5, 0.2), // dann nach links
|
||||
(1.5, 2), // runter
|
||||
<A4.east>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: green + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (2pt, 2pt),
|
||||
),
|
||||
|
||||
//1 → 13
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A1.east>),
|
||||
(rel: (0.1, 0.)),
|
||||
(rel: (0pt, 5mm), to: <A13.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: green.darken(30%) + 1.25pt,
|
||||
),
|
||||
|
||||
//5 → 8
|
||||
edge(
|
||||
(rel: (0pt, 0mm), to: <A5.west>),
|
||||
|
||||
(rel: (-0.15, 0.)),
|
||||
(rel: (0.08,0), to: <A8.east>),
|
||||
(rel: (0.,0), to: <A8.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + olive,
|
||||
),
|
||||
|
||||
//7_1 → 6
|
||||
edge(
|
||||
vertices: (
|
||||
(rel: (0pt, -2pt), to: <A7_1.east>),
|
||||
(0.25, 2.2),
|
||||
(0.52, 2.2),
|
||||
(0.52,4),
|
||||
(rel: (0pt, 0pt), to: <A6.west>)
|
||||
),
|
||||
corner-radius: 0pt,
|
||||
stroke: gray + 1.25pt,
|
||||
marks: "-|>",
|
||||
),
|
||||
//4 → 7_1
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A4.west>),
|
||||
|
||||
(rel: (-0.1, 0.)),
|
||||
|
||||
(rel: (0pt, 5mm), to: <A7_1.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//9 → 10
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A9.east>),
|
||||
|
||||
(rel: (0.1, 0.)),
|
||||
|
||||
(rel: (0pt, 5mm), to: <A10.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//5 → 17
|
||||
edge(
|
||||
<A5.east>,
|
||||
|
||||
(rel: (0.07, 0.)),
|
||||
(rel: (0, 0.5)),
|
||||
|
||||
(rel: (0pt, 10pt), to: <A17.north>),
|
||||
<A17.north>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: blue.lighten(20%) +1.25pt ,
|
||||
),
|
||||
//4 → 15
|
||||
edge(
|
||||
(rel: (0pt, -5mm), to: <A4.east>),
|
||||
|
||||
(rel: (0.1, 0.)),
|
||||
|
||||
(rel: (0pt, -5mm), to: <A15.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//8 → 16
|
||||
edge(
|
||||
(rel: (0.2,0), to: <A8.south>),
|
||||
(rel: (0., 0.1)),
|
||||
(rel: (1.3, 0.)),
|
||||
(rel: (-0.115, 0), to: <A16.west>),
|
||||
<A16.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + yellow.darken(20%),
|
||||
),
|
||||
//6 → 11
|
||||
edge(
|
||||
(rel: (0pt, -5mm), to: <A6.east>),
|
||||
|
||||
(rel: (0.065, 0.)),
|
||||
(rel: (0.065,0), to: <A11.east>),
|
||||
(rel: (0.,0), to: <A11.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple.lighten(20%),
|
||||
),
|
||||
//13 → 23
|
||||
edge(
|
||||
(<A13.east>),
|
||||
(rel:(0.75,0)),
|
||||
(rel:(0, 9.8)),// <----
|
||||
(rel:(-3.38, 0)),
|
||||
//(rel: (0.6, 0.), to: <A21_2.east>),
|
||||
<A23.south>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + orange.darken(10%),
|
||||
|
||||
),
|
||||
|
||||
//15 → 21_1 21_2
|
||||
edge(
|
||||
(<A15.east>),
|
||||
// Startpunkt
|
||||
(rel: (0.5, 0)),
|
||||
(rel: (0.5, 0.), to: <A21_1.east>),
|
||||
<A21_1.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
edge(
|
||||
(<A15.east>),
|
||||
// Startpunkt
|
||||
(rel: (0.5, 0)),
|
||||
(rel: (0.5, 0.), to: <A21_2.east>),
|
||||
<A21_2.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
|
||||
//16 → 19_1 19_2
|
||||
edge(
|
||||
(<A16.east>),
|
||||
(rel: (0.3, 0)),
|
||||
(rel: (0.3, 0.), to: <A19_1.east>),
|
||||
<A19_1.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple,
|
||||
),
|
||||
edge(
|
||||
(<A16.east>),
|
||||
(rel: (0.3, 0)),
|
||||
(rel: (0.3, 0.), to: <A19_2.east>),
|
||||
<A19_2.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple,
|
||||
),
|
||||
|
||||
//17 → 21_2
|
||||
edge(
|
||||
(rel: (-0.2,0), to: <A17.south>),
|
||||
(rel: (0, 0.2)),
|
||||
(rel: (-.325, 0.)),
|
||||
(rel: (-0.14, 0), to: <A21_2.west>),
|
||||
<A21_2.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + red,
|
||||
),
|
||||
//17 → 19_1, 19_2
|
||||
edge(
|
||||
(<A17.west>),
|
||||
(rel: (-0.075, 0)),
|
||||
(rel: (-0.075,-0.20), to: <A19_1.west>),
|
||||
(rel: (0.,-0.2), to: <A19_1.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + green,
|
||||
),
|
||||
edge(
|
||||
(<A17.west>),
|
||||
(rel: (-0.075, 0)),
|
||||
(rel: (-0.075, 0.), to: <A19_2.west>),
|
||||
<A19_2.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + green,
|
||||
),
|
||||
|
||||
//19_2 → 20
|
||||
edge(
|
||||
(<A19_2.north>),
|
||||
(rel: (-0.2, 0)),
|
||||
(rel: (0, -0.1)),
|
||||
(rel: (-0, 0.18), to: <A20.south>),
|
||||
<A20.south>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
)
|
||||
@@ -0,0 +1,250 @@
|
||||
#let deckblatt(bandnr: "", autor: "", titel: "") = {
|
||||
place(
|
||||
top + left,
|
||||
dx: -20mm, // Hebt den linken Rand auf
|
||||
dy: -20mm, // Abstand von der Oberkante des Blattes
|
||||
|
||||
rect(
|
||||
width: 163mm, // Exakte Breite A4
|
||||
height: 230mm,
|
||||
fill: rgb(52.2%, 87.8%, 78.4%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -20mm,
|
||||
dy: 12mm,
|
||||
//Linie
|
||||
rect(
|
||||
width: 162mm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.4cm,
|
||||
rect(
|
||||
width: 27cm, height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.6cm,
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.8cm,
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 2cm, // Abstand von der Oberkante des Blattes
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
|
||||
place(
|
||||
top + left, // Wo auf der Seite (oder im Absatz)
|
||||
dx: 94mm, // Versatz von links
|
||||
dy: 85mm, // Versatz von oben
|
||||
{
|
||||
import "@preview/cetz:0.3.1"
|
||||
cetz.canvas({
|
||||
import cetz.draw: *
|
||||
// Halbkreis
|
||||
arc((x:0,y:0), start: 0deg, stop: -180deg, radius: 17mm, fill: rgb(100%, 100%, 87.1%), stroke: none)
|
||||
})
|
||||
}
|
||||
)
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 2.2cm, // Abstand von der Oberkante des Blattes
|
||||
rect(
|
||||
width: 230cm, // Exakte Breite A4
|
||||
height: 58mm,
|
||||
fill: rgb(12.9%, 18%, 32.9%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 80mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 82mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 84mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 86mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 88mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
|
||||
/* place(
|
||||
top + left,
|
||||
dx: 7.5cm, // Hebt den linken Rand auf
|
||||
dy: 62mm,
|
||||
|
||||
circle( radius: 15mm, fill: rgb(100%, 32.2%, 18.8%)),
|
||||
|
||||
//height: 2mm,
|
||||
//fill: rgb(100%, 100%, 87.1%),
|
||||
//inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
) */
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 95mm,
|
||||
dy: 68mm,
|
||||
box(width: 30mm, height: 30mm)[
|
||||
#circle(radius: 16mm, fill: rgb(100%, 32.2%, 18.8%), stroke: none)
|
||||
#place(center + horizon)[
|
||||
// Wir erzwingen hier ALLES neu
|
||||
#set text(font: "Fira Math", size: 48pt, fill: black)
|
||||
#bandnr
|
||||
]
|
||||
]
|
||||
/* {
|
||||
set align(center + horizon)
|
||||
text(weight: "bold",fill: black, size: 45pt)[$1$]
|
||||
}*/
|
||||
)
|
||||
// Text
|
||||
place(
|
||||
top + left,
|
||||
dx: -12mm,
|
||||
dy: 2.6cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(7.5em, fill: rgb(100%, 32.2%, 18.8%), weight: "bold",style: "italic", tracking: 0.06em, font: "Lato")[MATHEMATIK]
|
||||
})
|
||||
)
|
||||
place(
|
||||
top + left,
|
||||
dx: -12mm,
|
||||
dy: 4.7cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[FÜR INGENIEURE]
|
||||
})
|
||||
)
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 5.4cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[NATURWISSENSCHAFTLER]
|
||||
})
|
||||
)
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 6.1cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[ÖKONOMEN]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 6.8cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[LANDWIRTE]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -0.7cm,
|
||||
dy: 10cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(1.25em, fill: rgb(3.1%, 20%, 29%), weight: "bold", tracking: 0.05em, font: "Lato")[#autor]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -0.7cm,
|
||||
dy: 11.5cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
set par(leading: 1em)
|
||||
text(2.5em, fill: rgb(3.1%, 20%, 29%),weight: "bold", tracking: 0.0em, font: "Lato")[#titel]
|
||||
}))
|
||||
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
#let bent-edge(from, to, ..args) = {
|
||||
let midpoint = (from, 50%, to)
|
||||
let vertices = (
|
||||
from,
|
||||
(from, "|-", midpoint),
|
||||
(midpoint, "-|", to),
|
||||
to,
|
||||
)
|
||||
edge(..vertices, "-|", ..args)
|
||||
}
|
||||
|
||||
|
||||
#let b3_0 = diagram(
|
||||
node-stroke: luma(80%),
|
||||
edge-corner-radius: none,
|
||||
spacing: (10pt, 20pt),
|
||||
|
||||
// Nodes
|
||||
node((1.5,0), [1.#h(3mm)2.#h(3mm)3.1.], name: <a>),
|
||||
node((0.5,1), [4.1.-4.3.], name: <b>),
|
||||
node((2.5,1), [3.2.-3.3.], name: <c>),
|
||||
|
||||
node((0,2), [4.4.-4.5.], name: <d>),
|
||||
node((1,2), [4.6.], name: <e>),
|
||||
|
||||
node((2.501,2), [5.1.-5.5.], name: <f>),
|
||||
node((2,3), [5.6.], name: <g>),
|
||||
node((3,3), [5.7.], name: <h>),
|
||||
node((4,3), [5.8.], name: <i>),
|
||||
node((5,3), [5.9.], name: <j>),
|
||||
node((6,3), [5.10.], name: <k>),
|
||||
node((2.001,4), [#h(1mm)6.#h(1mm) ], name: <m>),
|
||||
|
||||
// Edges
|
||||
bent-edge(<a>, <b>),
|
||||
bent-edge(<a>, <c>),
|
||||
bent-edge(<b>, <d>),
|
||||
bent-edge(<b>, <e>),
|
||||
bent-edge(<c>, <f>),
|
||||
bent-edge(<c>, <f>),
|
||||
bent-edge(<f>, <g>),
|
||||
bent-edge(<f>, <h>),
|
||||
bent-edge(<f>, <i>),
|
||||
bent-edge(<f>, <j>),
|
||||
bent-edge(<f>, <k>),
|
||||
bent-edge(<g>, <m>),
|
||||
)
|
||||
+179
-195
@@ -1,229 +1,213 @@
|
||||
#import "@preview/biz-report:0.3.1": authorwrap, dropcappara, infobox, report
|
||||
#import "@preview/cetz:0.4.2" //Grafiken
|
||||
//#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
#show text: set text(spacing: 100%) // Erhöht den Abstand zwischen den Wörtern/Zeilen
|
||||
// ODER (effektiver):
|
||||
#show par: set par(leading: 1em)
|
||||
#import "@preview/marge:0.1.0": sidenote
|
||||
|
||||
/*#set page(
|
||||
paper: "iso-b5"
|
||||
)*/
|
||||
#import "@preview/itemize:0.2.0" as el
|
||||
|
||||
#show: report.with(
|
||||
title: "Differentialrechnung für Funktionen mit mehreren Variablen",
|
||||
publishdate: {},
|
||||
mycolor: rgb("#1300a7"),
|
||||
myfont: "DejaVu Sans"
|
||||
)
|
||||
#import "deckblatt.typ": deckblatt
|
||||
|
||||
#import "abhaengigkeit.typ": abhaengigkeit
|
||||
|
||||
#set par(
|
||||
leading: 1.5em, // Zeilenabstand
|
||||
spacing: 2em, // Abstand zwischen Absätzen
|
||||
justify: true // Blocksatz (sieht im Report meist besser aus)
|
||||
)
|
||||
#import "grafiken.typ": *
|
||||
|
||||
//Formelnummerierung
|
||||
#set math.equation(numbering: "(1.1)")
|
||||
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
||||
|
||||
#let def-counter = counter("definition")
|
||||
|
||||
// 1. Die Bezeichnung auf "Bild" ändern
|
||||
#set figure(supplement: [Bild])
|
||||
#set figure.caption(separator: [ ])
|
||||
//#set par(leading: 1.5em)
|
||||
|
||||
|
||||
// 2. Die Nummerierung manuell berechnen
|
||||
#show figure.where(kind: image): set figure(numbering: (..nums) => {
|
||||
// Holt die aktuelle Nummerierung der Überschriften
|
||||
let h-nums = counter(heading).at(here())
|
||||
|
||||
// Wenn wir mindestens in einer Sektion (Ebene 2) sind
|
||||
if h-nums.len() >= 2 {
|
||||
// Gibt Kapitel.Sektion.Bildnummer zurück
|
||||
return str(h-nums.at(0)) + "." + str(h-nums.at(1)) + "." + str(nums.pos().last())
|
||||
} else if h-nums.len() == 1 {
|
||||
// Falls nur ein Kapitel existiert: Kapitel.Bildnummer
|
||||
return str(h-nums.at(0)) + "." + str(nums.pos().last())
|
||||
} else {
|
||||
// Falls gar keine Überschrift existiert
|
||||
return str(nums.pos().last())
|
||||
}
|
||||
})
|
||||
|
||||
// 3. Optional: Den Bild-Zähler bei jeder neuen Sektion (==) zurücksetzen
|
||||
#show heading.where(level: 2): it => {
|
||||
// Zähler bei jedem neuen Kapitel zurücksetzen
|
||||
#show heading.where(level: 1): it => {
|
||||
it
|
||||
counter(figure.where(kind: image)).update(0)
|
||||
def-counter.update(0)
|
||||
}
|
||||
|
||||
#let definition(title: none, body, label: none) = context {
|
||||
def-counter.step()
|
||||
|
||||
let h1-num = counter(heading).at(here()).first()
|
||||
let d-num = def-counter.at(here()).first()
|
||||
let full-num = [#h1-num.#d-num]
|
||||
|
||||
// Die Figure wird erstellt und das Label direkt angehängt
|
||||
[
|
||||
#figure(
|
||||
block(width: 100%, align(left)[
|
||||
*Definition #full-num*: #if title != none [(#title)] #body
|
||||
]),
|
||||
kind: "definition",
|
||||
supplement: [D.],
|
||||
numbering: _ => full-num,
|
||||
) #label
|
||||
]
|
||||
}
|
||||
|
||||
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||
#show heading.where(level: 1): it => {
|
||||
it
|
||||
def-counter.update(1)
|
||||
}
|
||||
|
||||
|
||||
#let sn-base = sidenote
|
||||
|
||||
//#set figure(supplement: [Bild])
|
||||
#show math.equation: it => {
|
||||
if it.body.fields().at("size", default: none) != "display" {
|
||||
return math.display(it)
|
||||
}
|
||||
it
|
||||
}
|
||||
|
||||
|
||||
//#dropcappara(firstline: "Welcome to this report.")[#lorem(50)]
|
||||
|
||||
|
||||
|
||||
|
||||
/*#set text(
|
||||
font: "TeX Gyre Heros",
|
||||
size: 10pt
|
||||
)*/
|
||||
#set par(
|
||||
justify: true,
|
||||
leading: 0.52em,
|
||||
)
|
||||
|
||||
= Vorwort
|
||||
|
||||
//#title[Differentialrechnung für Funktionen mit mehreren Variablen]
|
||||
/*#{
|
||||
set page(numbering: {})
|
||||
set align(center)
|
||||
show heading: set block(above: 8 * 1.65em, below: 1.65em)
|
||||
show heading(level: 1): set text(2em)
|
||||
show heading(level: 2): set text(weight: "regular", style: "italic")
|
||||
}*/
|
||||
|
||||
|
||||
Der vorliegende Band der Lehrbuchreihe „Mathematik für Ingenieure, Naturwissenschaftler, Ökonomen und Landwirte" gehört mit den ersten drei Bänden zu denen, auf welchen alle weiteren Bände wesentlich aufbauen. Der Band 4 ist einerseits eine unmittelbare Fortsetzung des Bandes 2 „Differential- und Integralrechnung für Funktionen mit einer Variablen“ und bereitet andererseits den Band 5 „Integralrechnung für Funktionen mit mehreren Variablen" direkt vor. Bei der Übertragung der gewöhnlichen Differentialrechnung für Funktionen einer Veränderlichen auf den Fall von Funktionen, die von mehreren Veränderlichen abhängen, ergeben sich eine ganze Reihe grundlegender qualitativer Unterschiede in Begriffen, Sätzen und Methoden, so daß ein gesonderter Band speziell über die Differentialrechnung für Funktionen von mehreren Veränderlichen berechtigt erscheint.
|
||||
|
||||
Wie im Band 2 wurden schwierige Beweise im allgemeinen weggelassen und mehr Gewicht auf die anschauliche Interpretation und Anwendung der dargestellten Methoden und Zusammenhänge gelegt.
|
||||
|
||||
Für wertvolle Hinweise bei der Vorbereitung der dritten Auflage danken wir vor allem dem Herausgeber, Herrn Prof. Dr. K. Manteuffel (TH Magdeburg) und Herrn Dr. R. Kuhrt (HU Berlin).
|
||||
|
||||
#align(left + bottom)[
|
||||
Dresden, März 1980 \
|
||||
\
|
||||
K. Harbarth \
|
||||
T. Riedrich
|
||||
#let snr(it) = sn-base(side: right, padding: 1em)[
|
||||
#set text(size: 1.3em, weight: "bold")
|
||||
#it
|
||||
]
|
||||
#let snl(it) = sn-base(side: left, padding: 1em)[
|
||||
#set text(size: 1.3em, weight: "bold")
|
||||
#it
|
||||
]
|
||||
|
||||
#pagebreak()
|
||||
|
||||
= Vorwort zur vierten Auflage
|
||||
|
||||
Im Juli 1981 verstarb plötzlich der Mitautor dieses Bandes, Dozent Dr. rer. nat. Klaus Harbarth. An seiner Stelle wird von nun an Dr. sc. nat. W. Schirotzek als Mitautor tätig sein. Wir werden das Buch im Sinne des Verstorbenen weiterführen und auch damit unserem Kollegen ein bleibendes Andenken bewahren.
|
||||
|
||||
In der vierten Auflage wurden nur kleinere Berichtigungen und Ergänzungen angebracht.
|
||||
|
||||
#align(left + bottom)[
|
||||
Dresden, im März 1983 \
|
||||
\
|
||||
T. Riedrich \
|
||||
W. Schirotzek
|
||||
]
|
||||
|
||||
#pagebreak()
|
||||
|
||||
= Elemente der Theorie der Punktmengen
|
||||
== Grundbegriffe der Theorie der Punktmengen
|
||||
=== Definition des $R^n$; Abstand im $R^n$
|
||||
|
||||
In der Differential- und Integralrechnung für Funktionen einer reellen Veränderlichen werden alle Überlegungen in der Menge der reellen Zahlen als Grundmenge durchgeführt. Es bezeichne wie bisher $bold{R}$ oder $R^1$ die Menge der reellen Zahlen. Wir rechnen im $R^1$ nach den üblichen Regeln. Als Abstand $d(x_1, x_2)$ zweier reeller Zahlen $x_1$ und $x_2$ verwenden wir die Zahl
|
||||
|
||||
$ d(x_1, x_2)=abs(x_1-x_2) $
|
||||
|
||||
Für eine Ausdehnung der Theorie auf Funktionen von *mehreren* unabhängigen Veränderlichen ist es erforderlich, neue Grundmengen heranzuziehen. Wir betrachten zunächst Paare von reellen Zahlen und legen für je zwei reelle Zahlen $a, b$ eine Reihenfolge fest. Soll $a$ die erste und $b$ die zweite Zahl sein, so schreiben wir $x_1=a$ und $x_2=b$ und fassen beide Zahlen durch Klammern in der Weise zu einem Paar zusammen, daß wir innerhalb der Klammern $x_1$ an die erste und $x_2$ an die zweite Stelle setzen. Wir schreiben also ( $x_1, x_2$ ) und bezeichnen ( $x_1, x_2$ ) als *geordnetes Zahlenpaar*. Die Zahlen 3 und -1 können also zu dem Paar $(3,-1)$ oder zu dem Paar $(-1,3)$ zusammengefaßt werden. Zwei geordnete Zahlenpaare ( $x_1, x_2$ ) und ( $y_1, y_2$ ) nennen wir gleich, wenn innerhalb der Klammern an der jeweils entsprechenden Stelle die gleiche Zahl steht. Wir setzen also $(x_1, x_2)=(y_1, y_2)$ genau dann, wenn $x_1=y_1$ und $x_2=y_2$ gilt. Somit ist $(3,-1) \neq(-1,3)$ und auch $(3,-1) \neq(3,0)$ wegen $-1 \neq 0$.
|
||||
|
||||
Eine geometrische Veranschaulichung von geordneten Zahlenpaaren ist in einer mit einem kartesischen Koordinatensystem versehenen Ebene möglich. Man erkennt an Bild 1.1, daß man das Zahlenpaar ( $x_1, x_2$ ) durch den Punkt $X$ mit den Koordinaten $x_1$ und $x_2$ oder durch den Vektor $bold{x}$ mit den Koordinaten $x_1$ und $x_2$
|
||||
|
||||
#figure(
|
||||
image("Band4_1.1.png", width: 60%),
|
||||
caption: [
|
||||
],
|
||||
#set text(
|
||||
font: "Lato", //Serifenlose Schrift
|
||||
size: 8.5pt,
|
||||
lang: "de", //Deutsche Spracheinstellungen
|
||||
)
|
||||
|
||||
veranschaulichen kann. Gleichbedeutend sprechen wir in diesem Zusammenhang also von dem *geordneten Zahlenpaar* ( $x_1, x_2$ ), dem *Punkt* $X(x_1, x_2)$ oder dem *Vektor* $bold{x}=x_1 bold{e}_1+x_2 bold{e}_2$. Eine Menge von geordneten Zahlenpaaren nennen wir demzufolge auch eine Punktmenge. Unter dem $R^2$ verstehen wir die Menge aller geordneten Zahlenpaare ( $x_1, x_2$ ).
|
||||
Sind $X(x_1, x_2)$ und $Y(y_1, y_2)$ zwei beliebige Punkte des $R^2$, so bezeichnet man unter Beachtung des Satzes von Pythagoras die Zahl
|
||||
|
||||
$ d(X, Y)=sqrt((x_1-y_1)^2+(x_2-y_2)^2) $
|
||||
|
||||
#figure(
|
||||
image("Band4_1.2.png", width: 65%),
|
||||
caption: [
|
||||
],
|
||||
)
|
||||
<Bild_1.2>
|
||||
|
||||
als Abstand der Punkte $X$ und $Y$ (vgl. Bild 1.2). Bei Benutzung der Vektorschreibweise $bold{x}=x_1 bold{e}_1+x_2 bold{e}_2$ und $bold{y}=y_1 bold{e}_1+y_2 bold{e}_2$ bzw. der Koordinatenschreibweise hätte man zu formulieren:
|
||||
|
||||
#h(1cm)$ d(x,y)=sqrt((x_1-y_1)^2+(x_2-y_2)^2)$
|
||||
|
||||
bzw.
|
||||
|
||||
#h(1cm)$d((x_1, x_2),(y_1, y_2))=sqrt((x_1-y_1)^2+(x_2-y_2)^2) .$
|
||||
|
||||
Speziell für $X(-1,3)$ und $Y(5,-4)$ erhält man
|
||||
|
||||
#h(1cm)$d(X, Y)=sqrt((-1-5)^2+(3+4)^2)=sqrt(36+49)=sqrt(85).$
|
||||
|
||||
|
||||
Je zwei Punkten $X$ und $Y$ ist also eine nichtnegative reelle Zahl $d(X, Y)$ als Abstand zwischen $X$ und $Y$ zugeordnet. Man sagt für diesen Sachverhalt auch, daß im $R^2$ eine *Abstandsfunktion* oder *Metrik* erklärt ist. Man erkennt leicht, daß die Metrik im $R^2$ die von der Abstandsfunktion (1.1) im $R^1$ her bekannten drei Eigenschaften erfüllt:
|
||||
|
||||
|
||||
/*#figure(
|
||||
grid(
|
||||
columns: (auto, 1fr), // Strich nimmt so viel Platz wie nötig, Formel den Rest
|
||||
column-gutter: 2em, // Abstand zwischen Strich und Formel
|
||||
align: horizon, // Vertikal zentrieren
|
||||
|
||||
// Linke Seite: Der vertikale Strich
|
||||
line(angle: 90deg, length: 4cm, stroke: 5pt + gray),
|
||||
|
||||
// Rechte Seite: Die Formel
|
||||
+ $ d(X, Y) \geqq 0 \text{ für beliebige }X, Y \in R^2 \text{ und } d(X, Y)=0 \text{ genau dann, wenn }X=Y $;
|
||||
+ $ d(X, Y)=d(Y, X)$ für beliebige $X, Y \in R^2$;
|
||||
$ d(X, Z) \leqq d(X, Y)+d(Y, Z)$ für beliebige $X, Y, Z \in R^2$.
|
||||
),
|
||||
)*/
|
||||
|
||||
#figure(
|
||||
grid(
|
||||
columns: (auto, 1fr),
|
||||
column-gutter: 2em,
|
||||
align: horizon,
|
||||
|
||||
line(angle: 90deg, length: 25mm, stroke: 3.5pt),
|
||||
|
||||
{
|
||||
// Diese Regel wirkt nur innerhalb dieser Grid-Zelle:
|
||||
set math.equation(block: true)
|
||||
show math.equation: set align(left)
|
||||
|
||||
enum(
|
||||
spacing: 1.5em,
|
||||
[$ d(X, Y) >= " für beliebige " X, Y in R^2 " und " d(X, Y)= 0 " genau dann, wenn " X=Y $],
|
||||
[$ d(X, Y) = d(Y, X)" für beliebige "X, Y in R^2 $],
|
||||
[$ d(X, Z) <= d(X, Y)+d(Y, Z) "für beliebige" X, Y, Z in R^2 $ <eq1.5>]
|
||||
)
|
||||
}
|
||||
),
|
||||
#set page(
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
margin: 20mm,
|
||||
)
|
||||
|
||||
#set par(
|
||||
justify: true, //Blocksatz
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
Eigenschaft (@eq1.5) heißt Dreiecksungleichung. Der Name wird deutlich, wenn man z. B. die Abstände in dem in Bild (@Bild_1_3) gezeichneten Dreieck betrachtet.
|
||||
#let tt = "HARBARTH \u{2219} FRIEDRICH \u{2219} SCHIROTZEK"
|
||||
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
|
||||
// Einfach die Funktion aufrufen
|
||||
#deckblatt(bandnr: "4", autor: tt, titel: "Differentialrechnung\nfür Funktionen\nmit mehreren Variablen")
|
||||
|
||||
|
||||
#pagebreak()
|
||||
|
||||
#figure(
|
||||
image("Band4_1.3.png", width: 65%),
|
||||
caption: [
|
||||
],
|
||||
#set page(
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
margin: 20mm,
|
||||
)
|
||||
|
||||
#set par(
|
||||
justify: true, //Blocksatz
|
||||
leading: 0.55em,
|
||||
)
|
||||
<Bild_1_3>
|
||||
|
||||
|
||||
Zusammen mit der Metrik (1.2) bezeichnet man den $R^2$ auch als zweidimensionalen euklidischen Raum.
|
||||
#set page(
|
||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||
margin: (
|
||||
top: 2mm,
|
||||
bottom: 2mm,
|
||||
x: 10mm,
|
||||
),
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
)
|
||||
#v(9mm)
|
||||
#heading(outlined: false)[Abhängigkeitsgraph]
|
||||
|
||||
Alle angestellten Überlegungen können wörtlich zur Definition des dreidimensionalen euklidischen Raumes $R^3$ bzw. allgemein zur Definition des $n$-dimensionalen euklidischen Raumes $R^n$ übernommen werden. Der $R^n$ ist also die Menge aller geordneten $n$-Tupel von reellen Zahlen; wir bezeichnen sie mit $\left(x_1, x_2, \ldots, x_n\right)$.
|
||||
#v(-6mm)
|
||||
#scale(x:90%, y:90%)[#abhaengigkeit]
|
||||
|
||||
//#scale(factor: 90%, abhaengigkeit)
|
||||
//#abhaengigkeit
|
||||
|
||||
#show heading: it => {
|
||||
set block(below: if it.level == 1 { 2em } else { 1em })
|
||||
it
|
||||
}
|
||||
|
||||
#counter(page).update(1)
|
||||
#pagebreak()
|
||||
#set text(font: "Lato")
|
||||
|
||||
#set text(
|
||||
font: "Lato", //Serifenlose Schrift
|
||||
size: 9pt,
|
||||
lang: "de", //Deutsche Spracheinstellungen
|
||||
)
|
||||
#set par(
|
||||
justify: true,
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
#set page(
|
||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||
margin: (
|
||||
top: 18mm,
|
||||
bottom: 20mm,
|
||||
x: 15mm,
|
||||
),
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
|
||||
)
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
#set outline(indent: auto)
|
||||
|
||||
|
||||
#set page(
|
||||
header: context {
|
||||
// 1. Kapitelstart-Check (wie zuvor)
|
||||
let h1_on_page = query(heading.where(level: 1))
|
||||
.any(it => it.location().page() == here().page())
|
||||
if h1_on_page { return none }
|
||||
|
||||
let page_num = here().page()
|
||||
|
||||
// 2. Aktuelle Überschriften finden
|
||||
let h1_current = query(heading.where(level: 1))
|
||||
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||
let h2_current = query(heading.where(level: 2))
|
||||
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||
|
||||
// Hilfsfunktion: Nummer + Text zusammenfügen
|
||||
let format-head(h) = {
|
||||
if h != none {
|
||||
// Falls die Überschrift eine Nummerierung hat, diese anzeigen
|
||||
if h.numbering != none {
|
||||
numbering(h.numbering, ..counter(heading).at(h.location()))
|
||||
[ ] // Kleiner Abstand
|
||||
}
|
||||
h.body
|
||||
}
|
||||
}
|
||||
|
||||
/*Der Index gibt die Stelle an, an welcher die betreffende Zahl angeordnet werden soll. Für zwei $n$-Tupel gilt die Gleichheit $\left(x_1, x_2, \ldots, x_n\right)=\left(y_1, y_2, \ldots, y_n\right)$ genau dann, wenn zugleich $x_1=y_1, x_2=y_2, \ldots, x_n=y_n$ erfüllt ist. Für die Verschiedenheit zweier $n$-Tupel reicht also aus, daß an mindestens einer Stelle innerhalb der beiden $n$-Tupel verschiedene reelle Zahlen stehen. Die geordneten $n$-Tupel bezeichnen wir auch als Punkte eines $n$-dimensionalen Raumes und die Zahlen innerhalb der $n$-Tupel dann als Koordinaten der Punkte. Punkte im $R^2$ bzw. $R^3$ bezeichnet man gelegentlich auch durch $(x, y)$ oder $(a, b)$ oder $\left(x_0, y_0\right)$ bzw. durch $(x, y, z)$ oder $(a, b, c)$ oder $\left(x_0, y_0, z_0\right)$; d.h., man verzichtet hier auch gelegentlich auf die konsequente Verwendung der Indexschreibweise ( $x_1, x_2$ ) bzw. ( $x_1, x_2, x_3$ ) zur Kennzeichnung der Anordnung innerhalb der Paare bzw. Tripel. Unter dem Abstand zweier Punkte $X\left(x_1, x_2, \ldots, x_n\right)$ und $Y\left(y_1, y_2, \ldots, y_n\right)$ versteht man die nichtnegative Zahl
|
||||
// 3. Layout (Zahlen außen, Text innen oder wie gewünscht)
|
||||
set text(size: 9pt, style: "italic") // Header dezent formatieren
|
||||
|
||||
if calc.even(page_num) {
|
||||
// Gerade Seite: [Seite] [Kapitelnummer Text]
|
||||
grid(
|
||||
columns: (20pt, 1fr),
|
||||
align(left)[#page_num],
|
||||
align(right)[#format-head(h1_current)]
|
||||
)
|
||||
} else {
|
||||
// Ungerade Seite: [Unterkapitelnummer Text] [Seite]
|
||||
grid(
|
||||
columns: (1fr, 20pt),
|
||||
align(left)[#format-head(h2_current)],
|
||||
align(right)[#page_num]
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
)
|
||||
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
#show selector(<nonumber>): set heading(numbering: none)
|
||||
|
||||
$$
|
||||
d(X, Y)=\sqrt{\left(x_1-y_1\right)^2+\cdots+\left(x_n-y_n\right)^2}=\sqrt{\sum_{k=1}^n\left(x_k-y_k\right)^2} .
|
||||
$$*/
|
||||
@@ -0,0 +1,360 @@
|
||||
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
|
||||
|
||||
#let mynode(pos, zahl, inhalt, name) = {
|
||||
node(
|
||||
pos,
|
||||
name: name,
|
||||
shape: rect, // 1. Zwingt Fletcher zum Rechteck
|
||||
corner-radius: 0pt, // 2. Verhindert abgerundete Ecken
|
||||
fill: white, // Optional: Hintergrund füllen
|
||||
stroke: 1.25pt,
|
||||
|
||||
// 3. WICHTIG: Festlegen einer Mindestgröße, damit alle gleich starten
|
||||
// Anstatt extrude nutzen wir feste Maße, die sich aber am Gitter ausrichten
|
||||
width: 12em,
|
||||
height: 5.8em,
|
||||
|
||||
{
|
||||
// Dein Layout-Block
|
||||
set align(top + right)
|
||||
text(2.5em, fill: gray.darken(90%))[#zahl]
|
||||
place(bottom + left, inhalt)
|
||||
}
|
||||
)}
|
||||
|
||||
#let myedge(start, end, type, ) = {
|
||||
let sep = 0.15em
|
||||
edge(start, end, type)
|
||||
edge(start, end)
|
||||
}
|
||||
|
||||
|
||||
#let abhaengigkeit = diagram(
|
||||
spacing: (11mm, 7mm),
|
||||
//debug: 3,
|
||||
edge-stroke: 1.25pt,
|
||||
|
||||
mark-scale: 55%,
|
||||
mynode((0,0),"",[Vorbereitungsband], <A0>),
|
||||
mynode((1,0),"1", [Grundlagen], <A1>),
|
||||
mynode((2,0), "13",[Lineare Algebra], <A13>),
|
||||
|
||||
mynode((0,1),"3",[Unendliche Reihen], <A3>),
|
||||
mynode((1,1), "2",[Differential- und Integralrechnung], <A2>),
|
||||
mynode((2,1), "14",[Lineare Optimierung], <A14>),
|
||||
|
||||
mynode((0,2), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
|
||||
mynode((1,2), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
|
||||
mynode((2,2), "15",[Nichtlineare Optimierung], <A15>),
|
||||
|
||||
mynode((0,3), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
|
||||
mynode((1,3.), "5",[Integralrechnung mit mehreren Variablen], <A5>),
|
||||
mynode((2,3), "16",[Optimale Prozesse und Systeme], <A16>),
|
||||
|
||||
mynode((0,4), "8",[Partielle Differentialgleichungen], <A8>),
|
||||
mynode((1,4), "6",[Differentialgeometrie], <A6>),
|
||||
mynode((2,4), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
|
||||
|
||||
mynode((0,5), "9",[Komplexe Funktionen], <A9>),
|
||||
mynode((1,5), "10",[Operatorenrechnung], <A10>),
|
||||
mynode((2,5), [21$#sub(text(0.5em)[1])$],[Spieltheorie], <A21_1>),
|
||||
|
||||
mynode((0,6), "12",[Spezielle Funktionen], <A12>),
|
||||
mynode((1,6), "11",[Tensoralgebra und -analysis], <A11>),
|
||||
mynode((2,6), [21$#sub(text(0.5em)[2])$],[Graphentheorie], <A21_2>),
|
||||
|
||||
mynode((0,7), [18],[Numerische Methoden], <A18>),
|
||||
mynode((1,7), [20],[Simulation], <A20>),
|
||||
mynode((2,7), [19$#sub(text(0.5em)[1])$],[Stochastische Prozesse und Modelle], <A19_1>),
|
||||
|
||||
mynode((0,8), [22],[Funktionalanalysis], <A22>),
|
||||
mynode((1,8), [23],[Symmetriegruppen], <A23>),
|
||||
mynode((2,8), [19$#sub(text(0.5em)[2])$],[Statistische Versuchsplanung], <A19_2>),
|
||||
|
||||
|
||||
myedge(<A0.east>,<A1.west>,"-|>"),
|
||||
myedge(<A1.south>,<A2.north>,"-|>"),
|
||||
myedge(<A2.west>,<A3.east>,"-|>"),
|
||||
myedge(<A13.south>,<A14.north>,"-|>"),
|
||||
myedge(<A2.south>,<A4.north>,"-|>"),
|
||||
myedge(<A4.south>,<A5.north>,"-|>"),
|
||||
myedge(<A5.south>,<A6.north>,"-|>"),
|
||||
myedge(<A14.south>,<A15.north>,"-|>"),
|
||||
myedge(<A7_1.south>,<A7_2.north>,"-|>"),
|
||||
myedge(<A7_2.south>,<A8.north>,"-|>"),
|
||||
myedge(<A8.south>,<A9.north>,"-|>"),
|
||||
myedge(<A9.south>,<A12.north>,"-|>"),
|
||||
myedge(<A12.south>,<A18.north>,"-|>"),
|
||||
myedge(<A10.south>,<A11.north>,"-|>"),
|
||||
myedge(<A15.south>,<A16.north>,"-|>"),
|
||||
myedge(<A17.south>,<A21_1.north>,"-|>"),
|
||||
myedge(<A19_1.south>,<A19_2.north>,"-|>"),
|
||||
// NEUES Edge: 1,3 (n3_1) → 3,2 (n2_3)
|
||||
// Verlauf: rechts von n3_1 nach rechts, runter auf Höhe von n2_3, dann links zur Node
|
||||
|
||||
//9 → 22
|
||||
edge(
|
||||
vertices: (
|
||||
<A9.east>,
|
||||
(0, 5.2), // deutlich nach rechts → sichtbarer Knick
|
||||
(0.5, 5.2), // dann nach links
|
||||
(0.5, 8), // runter
|
||||
<A22.east>,
|
||||
),
|
||||
corner: right,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: orange + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
//10 → 22
|
||||
edge(
|
||||
vertices: (
|
||||
<A10.west>,
|
||||
(1, 5.2), // deutlich nach rechts → sichtbarer Knick
|
||||
(0.5, 5.2), // dann nach links
|
||||
(0.5, 8), // runter
|
||||
<A22.east>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: orange + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
//3 → 7.2
|
||||
edge(
|
||||
vertices: (
|
||||
<A3.west>,
|
||||
(-0.85, 1), // deutlich nach rechts → sichtbarer Knick
|
||||
(-0.85, 1), // dann nach links
|
||||
(-0.85, 3), // runter
|
||||
<A7_2.west>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: red + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
|
||||
//13 → 4
|
||||
edge(
|
||||
vertices: (
|
||||
<A13.west>,
|
||||
(2, 0.18), // deutlich nach rechts → sichtbarer Knick
|
||||
(1.5, 0.2), // dann nach links
|
||||
(1.5, 2), // runter
|
||||
<A4.east>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: green + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (2pt, 2pt),
|
||||
),
|
||||
|
||||
//1 → 13
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A1.east>),
|
||||
(rel: (0.1, 0.)),
|
||||
(rel: (0pt, 5mm), to: <A13.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: green.darken(30%) + 1.25pt,
|
||||
),
|
||||
|
||||
//5 → 8
|
||||
edge(
|
||||
(rel: (0pt, 0mm), to: <A5.west>),
|
||||
|
||||
(rel: (-0.15, 0.)),
|
||||
(rel: (0.08,0), to: <A8.east>),
|
||||
(rel: (0.,0), to: <A8.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + olive,
|
||||
),
|
||||
|
||||
//7_1 → 6
|
||||
edge(
|
||||
vertices: (
|
||||
(rel: (0pt, -2pt), to: <A7_1.east>),
|
||||
(0.25, 2.2),
|
||||
(0.52, 2.2),
|
||||
(0.52,4),
|
||||
(rel: (0pt, 0pt), to: <A6.west>)
|
||||
),
|
||||
corner-radius: 0pt,
|
||||
stroke: gray + 1.25pt,
|
||||
marks: "-|>",
|
||||
),
|
||||
//4 → 7_1
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A4.west>),
|
||||
|
||||
(rel: (-0.1, 0.)),
|
||||
|
||||
(rel: (0pt, 5mm), to: <A7_1.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//9 → 10
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A9.east>),
|
||||
|
||||
(rel: (0.1, 0.)),
|
||||
|
||||
(rel: (0pt, 5mm), to: <A10.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//5 → 17
|
||||
edge(
|
||||
<A5.east>,
|
||||
|
||||
(rel: (0.07, 0.)),
|
||||
(rel: (0, 0.5)),
|
||||
|
||||
(rel: (0pt, 10pt), to: <A17.north>),
|
||||
<A17.north>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: blue.lighten(20%) +1.25pt ,
|
||||
),
|
||||
//4 → 15
|
||||
edge(
|
||||
(rel: (0pt, -5mm), to: <A4.east>),
|
||||
|
||||
(rel: (0.1, 0.)),
|
||||
|
||||
(rel: (0pt, -5mm), to: <A15.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//8 → 16
|
||||
edge(
|
||||
(rel: (0.2,0), to: <A8.south>),
|
||||
(rel: (0., 0.1)),
|
||||
(rel: (1.3, 0.)),
|
||||
(rel: (-0.115, 0), to: <A16.west>),
|
||||
<A16.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + yellow.darken(20%),
|
||||
),
|
||||
//6 → 11
|
||||
edge(
|
||||
(rel: (0pt, -5mm), to: <A6.east>),
|
||||
|
||||
(rel: (0.065, 0.)),
|
||||
(rel: (0.065,0), to: <A11.east>),
|
||||
(rel: (0.,0), to: <A11.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple.lighten(20%),
|
||||
),
|
||||
//13 → 23
|
||||
edge(
|
||||
(<A13.east>),
|
||||
(rel:(0.75,0)),
|
||||
(rel:(0, 9.8)),// <----
|
||||
(rel:(-3.38, 0)),
|
||||
//(rel: (0.6, 0.), to: <A21_2.east>),
|
||||
<A23.south>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + orange.darken(10%),
|
||||
|
||||
),
|
||||
|
||||
//15 → 21_1 21_2
|
||||
edge(
|
||||
(<A15.east>),
|
||||
// Startpunkt
|
||||
(rel: (0.5, 0)),
|
||||
(rel: (0.5, 0.), to: <A21_1.east>),
|
||||
<A21_1.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
edge(
|
||||
(<A15.east>),
|
||||
// Startpunkt
|
||||
(rel: (0.5, 0)),
|
||||
(rel: (0.5, 0.), to: <A21_2.east>),
|
||||
<A21_2.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
|
||||
//16 → 19_1 19_2
|
||||
edge(
|
||||
(<A16.east>),
|
||||
(rel: (0.3, 0)),
|
||||
(rel: (0.3, 0.), to: <A19_1.east>),
|
||||
<A19_1.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple,
|
||||
),
|
||||
edge(
|
||||
(<A16.east>),
|
||||
(rel: (0.3, 0)),
|
||||
(rel: (0.3, 0.), to: <A19_2.east>),
|
||||
<A19_2.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple,
|
||||
),
|
||||
|
||||
//17 → 21_2
|
||||
edge(
|
||||
(rel: (-0.2,0), to: <A17.south>),
|
||||
(rel: (0, 0.2)),
|
||||
(rel: (-.325, 0.)),
|
||||
(rel: (-0.14, 0), to: <A21_2.west>),
|
||||
<A21_2.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + red,
|
||||
),
|
||||
//17 → 19_1, 19_2
|
||||
edge(
|
||||
(<A17.west>),
|
||||
(rel: (-0.075, 0)),
|
||||
(rel: (-0.075,-0.20), to: <A19_1.west>),
|
||||
(rel: (0.,-0.2), to: <A19_1.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + green,
|
||||
),
|
||||
edge(
|
||||
(<A17.west>),
|
||||
(rel: (-0.075, 0)),
|
||||
(rel: (-0.075, 0.), to: <A19_2.west>),
|
||||
<A19_2.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + green,
|
||||
),
|
||||
|
||||
//19_2 → 20
|
||||
edge(
|
||||
(<A19_2.north>),
|
||||
(rel: (-0.2, 0)),
|
||||
(rel: (0, -0.1)),
|
||||
(rel: (-0, 0.18), to: <A20.south>),
|
||||
<A20.south>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
)
|
||||
@@ -0,0 +1,250 @@
|
||||
#let deckblatt(bandnr: "", autor: "", titel: "") = {
|
||||
place(
|
||||
top + left,
|
||||
dx: -20mm, // Hebt den linken Rand auf
|
||||
dy: -20mm, // Abstand von der Oberkante des Blattes
|
||||
|
||||
rect(
|
||||
width: 163mm, // Exakte Breite A4
|
||||
height: 230mm,
|
||||
fill: rgb(52.2%, 87.8%, 78.4%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -20mm,
|
||||
dy: 12mm,
|
||||
//Linie
|
||||
rect(
|
||||
width: 162mm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.4cm,
|
||||
rect(
|
||||
width: 27cm, height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.6cm,
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.8cm,
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 2cm, // Abstand von der Oberkante des Blattes
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
|
||||
place(
|
||||
top + left, // Wo auf der Seite (oder im Absatz)
|
||||
dx: 94mm, // Versatz von links
|
||||
dy: 85mm, // Versatz von oben
|
||||
{
|
||||
import "@preview/cetz:0.3.1"
|
||||
cetz.canvas({
|
||||
import cetz.draw: *
|
||||
// Halbkreis
|
||||
arc((x:0,y:0), start: 0deg, stop: -180deg, radius: 17mm, fill: rgb(100%, 100%, 87.1%), stroke: none)
|
||||
})
|
||||
}
|
||||
)
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 2.2cm, // Abstand von der Oberkante des Blattes
|
||||
rect(
|
||||
width: 230cm, // Exakte Breite A4
|
||||
height: 58mm,
|
||||
fill: rgb(12.9%, 18%, 32.9%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 80mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 82mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 84mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 86mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 88mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
|
||||
/* place(
|
||||
top + left,
|
||||
dx: 7.5cm, // Hebt den linken Rand auf
|
||||
dy: 62mm,
|
||||
|
||||
circle( radius: 15mm, fill: rgb(100%, 32.2%, 18.8%)),
|
||||
|
||||
//height: 2mm,
|
||||
//fill: rgb(100%, 100%, 87.1%),
|
||||
//inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
) */
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 95mm,
|
||||
dy: 68mm,
|
||||
box(width: 30mm, height: 30mm)[
|
||||
#circle(radius: 16mm, fill: rgb(100%, 32.2%, 18.8%), stroke: none)
|
||||
#place(center + horizon)[
|
||||
// Wir erzwingen hier ALLES neu
|
||||
#set text(font: "Fira Math", size: 48pt, fill: black)
|
||||
#bandnr
|
||||
]
|
||||
]
|
||||
/* {
|
||||
set align(center + horizon)
|
||||
text(weight: "bold",fill: black, size: 45pt)[$1$]
|
||||
}*/
|
||||
)
|
||||
// Text
|
||||
place(
|
||||
top + left,
|
||||
dx: -12mm,
|
||||
dy: 2.6cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(7.5em, fill: rgb(100%, 32.2%, 18.8%), weight: "bold",style: "italic", tracking: 0.06em, font: "Lato")[MATHEMATIK]
|
||||
})
|
||||
)
|
||||
place(
|
||||
top + left,
|
||||
dx: -12mm,
|
||||
dy: 4.7cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[FÜR INGENIEURE]
|
||||
})
|
||||
)
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 5.4cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[NATURWISSENSCHAFTLER]
|
||||
})
|
||||
)
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 6.1cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[ÖKONOMEN]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 6.8cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[LANDWIRTE]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -0.7cm,
|
||||
dy: 10cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(1.25em, fill: rgb(3.1%, 20%, 29%), weight: "bold", tracking: 0.05em, font: "Lato")[#autor]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -0.7cm,
|
||||
dy: 11.5cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
set par(leading: 1em)
|
||||
text(2.5em, fill: rgb(3.1%, 20%, 29%),weight: "bold", tracking: 0.0em, font: "Lato")[#titel]
|
||||
}))
|
||||
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
#let bent-edge(from, to, ..args) = {
|
||||
let midpoint = (from, 50%, to)
|
||||
let vertices = (
|
||||
from,
|
||||
(from, "|-", midpoint),
|
||||
(midpoint, "-|", to),
|
||||
to,
|
||||
)
|
||||
edge(..vertices, "-|", ..args)
|
||||
}
|
||||
|
||||
|
||||
#let b3_0 = diagram(
|
||||
node-stroke: luma(80%),
|
||||
edge-corner-radius: none,
|
||||
spacing: (10pt, 20pt),
|
||||
|
||||
// Nodes
|
||||
node((1.5,0), [1.#h(3mm)2.#h(3mm)3.1.], name: <a>),
|
||||
node((0.5,1), [4.1.-4.3.], name: <b>),
|
||||
node((2.5,1), [3.2.-3.3.], name: <c>),
|
||||
|
||||
node((0,2), [4.4.-4.5.], name: <d>),
|
||||
node((1,2), [4.6.], name: <e>),
|
||||
|
||||
node((2.501,2), [5.1.-5.5.], name: <f>),
|
||||
node((2,3), [5.6.], name: <g>),
|
||||
node((3,3), [5.7.], name: <h>),
|
||||
node((4,3), [5.8.], name: <i>),
|
||||
node((5,3), [5.9.], name: <j>),
|
||||
node((6,3), [5.10.], name: <k>),
|
||||
node((2.001,4), [#h(1mm)6.#h(1mm) ], name: <m>),
|
||||
|
||||
// Edges
|
||||
bent-edge(<a>, <b>),
|
||||
bent-edge(<a>, <c>),
|
||||
bent-edge(<b>, <d>),
|
||||
bent-edge(<b>, <e>),
|
||||
bent-edge(<c>, <f>),
|
||||
bent-edge(<c>, <f>),
|
||||
bent-edge(<f>, <g>),
|
||||
bent-edge(<f>, <h>),
|
||||
bent-edge(<f>, <i>),
|
||||
bent-edge(<f>, <j>),
|
||||
bent-edge(<f>, <k>),
|
||||
bent-edge(<g>, <m>),
|
||||
)
|
||||
+240
@@ -0,0 +1,240 @@
|
||||
|
||||
//#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
#import "@preview/marge:0.1.0": sidenote
|
||||
|
||||
#import "@preview/itemize:0.2.0" as el
|
||||
|
||||
#import "deckblatt.typ": deckblatt
|
||||
|
||||
#import "abhaengigkeit.typ": abhaengigkeit
|
||||
|
||||
#import "grafiken.typ": *
|
||||
|
||||
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
||||
|
||||
#let def-counter = counter("definition")
|
||||
|
||||
// Zähler bei jedem neuen Kapitel zurücksetzen
|
||||
#show heading.where(level: 1): it => {
|
||||
it
|
||||
def-counter.update(0)
|
||||
}
|
||||
|
||||
#let definition(title: none, body, label: none) = context {
|
||||
def-counter.step()
|
||||
|
||||
let h1-num = counter(heading).at(here()).first()
|
||||
let d-num = def-counter.at(here()).first()
|
||||
let full-num = [#h1-num.#d-num]
|
||||
|
||||
// Die Figure wird erstellt und das Label direkt angehängt
|
||||
[
|
||||
#figure(
|
||||
block(width: 100%, align(left)[
|
||||
*Definition #full-num*: #if title != none [(#title)] #body
|
||||
]),
|
||||
kind: "definition",
|
||||
supplement: [D.],
|
||||
numbering: _ => full-num,
|
||||
) #label
|
||||
]
|
||||
}
|
||||
|
||||
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||
#show heading.where(level: 1): it => {
|
||||
it
|
||||
def-counter.update(1)
|
||||
}
|
||||
|
||||
|
||||
#let sn-base = sidenote
|
||||
|
||||
#show math.equation: it => {
|
||||
if it.body.fields().at("size", default: none) != "display" {
|
||||
return math.display(it)
|
||||
}
|
||||
it
|
||||
}
|
||||
|
||||
#let snr(it) = sn-base(side: right, padding: 1em)[
|
||||
#set text(size: 1.3em, weight: "bold")
|
||||
#it
|
||||
]
|
||||
#let snl(it) = sn-base(side: left, padding: 1em)[
|
||||
#set text(size: 1.3em, weight: "bold")
|
||||
#it
|
||||
]
|
||||
|
||||
#set text(
|
||||
font: "Lato", //Serifenlose Schrift
|
||||
size: 8.5pt,
|
||||
lang: "de", //Deutsche Spracheinstellungen
|
||||
)
|
||||
|
||||
|
||||
#set page(
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
margin: 20mm,
|
||||
)
|
||||
|
||||
#set par(
|
||||
justify: true, //Blocksatz
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
#let tt = "KÖRBER \u{2219} PFORR"
|
||||
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
|
||||
// Einfach die Funktion aufrufen
|
||||
#deckblatt(bandnr: "5", autor: tt, titel: "Integralrechnung für Funktionen\nmit mehreren Variablen")
|
||||
|
||||
|
||||
#pagebreak()
|
||||
|
||||
#set page(
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
margin: 20mm,
|
||||
)
|
||||
|
||||
#set par(
|
||||
justify: true, //Blocksatz
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
|
||||
#set page(
|
||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||
margin: (
|
||||
top: 2mm,
|
||||
bottom: 2mm,
|
||||
x: 10mm,
|
||||
),
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
)
|
||||
#v(9mm)
|
||||
#heading(outlined: false)[Abhängigkeitsgraph]
|
||||
|
||||
#v(-6mm)
|
||||
#scale(x:90%, y:90%)[#abhaengigkeit]
|
||||
|
||||
//#scale(factor: 90%, abhaengigkeit)
|
||||
//#abhaengigkeit
|
||||
|
||||
#show heading: it => {
|
||||
set block(below: if it.level == 1 { 2em } else { 1em })
|
||||
it
|
||||
}
|
||||
|
||||
#counter(page).update(1)
|
||||
#pagebreak()
|
||||
#set text(font: "Lato")
|
||||
|
||||
#set text(
|
||||
font: "Lato", //Serifenlose Schrift
|
||||
size: 9pt,
|
||||
lang: "de", //Deutsche Spracheinstellungen
|
||||
)
|
||||
#set par(
|
||||
justify: true,
|
||||
leading: 0.55em,
|
||||
)
|
||||
|
||||
#set page(
|
||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||
margin: (
|
||||
top: 18mm,
|
||||
bottom: 20mm,
|
||||
x: 15mm,
|
||||
),
|
||||
width:162mm,
|
||||
height: 230mm,
|
||||
|
||||
)
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
#set outline(indent: auto)
|
||||
|
||||
|
||||
#set page(
|
||||
header: context {
|
||||
// 1. Kapitelstart-Check (wie zuvor)
|
||||
let h1_on_page = query(heading.where(level: 1))
|
||||
.any(it => it.location().page() == here().page())
|
||||
if h1_on_page { return none }
|
||||
|
||||
let page_num = here().page()
|
||||
|
||||
// 2. Aktuelle Überschriften finden
|
||||
let h1_current = query(heading.where(level: 1))
|
||||
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||
let h2_current = query(heading.where(level: 2))
|
||||
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||
|
||||
// Hilfsfunktion: Nummer + Text zusammenfügen
|
||||
let format-head(h) = {
|
||||
if h != none {
|
||||
// Falls die Überschrift eine Nummerierung hat, diese anzeigen
|
||||
if h.numbering != none {
|
||||
numbering(h.numbering, ..counter(heading).at(h.location()))
|
||||
[ ] // Kleiner Abstand
|
||||
}
|
||||
h.body
|
||||
}
|
||||
}
|
||||
|
||||
// 3. Layout (Zahlen außen, Text innen oder wie gewünscht)
|
||||
set text(size: 9pt, style: "italic") // Header dezent formatieren
|
||||
|
||||
if calc.even(page_num) {
|
||||
// Gerade Seite: [Seite] [Kapitelnummer Text]
|
||||
grid(
|
||||
columns: (20pt, 1fr),
|
||||
align(left)[#page_num],
|
||||
align(right)[#format-head(h1_current)]
|
||||
)
|
||||
} else {
|
||||
// Ungerade Seite: [Unterkapitelnummer Text] [Seite]
|
||||
grid(
|
||||
columns: (1fr, 20pt),
|
||||
align(left)[#format-head(h2_current)],
|
||||
align(right)[#page_num]
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
)
|
||||
|
||||
#set heading(numbering: "1.1.")
|
||||
|
||||
#show selector(<nonumber>): set heading(numbering: none)
|
||||
|
||||
|
||||
|
||||
|
||||
#figure(
|
||||
{
|
||||
set math.equation(numbering: none)
|
||||
scale(x: 90%, y: 90%, reflow: true, b2_4)
|
||||
},
|
||||
caption: [],
|
||||
) <abb3>
|
||||
|
||||
|
||||
#figure(
|
||||
{
|
||||
set math.equation(numbering: none)
|
||||
scale(x: 90%, y: 90%, reflow: true, EC_drawing)
|
||||
},
|
||||
caption: [],
|
||||
) <abb4>
|
||||
|
||||
#figure(
|
||||
{
|
||||
set math.equation(numbering: none)
|
||||
scale(x: 90%, y: 90%, reflow: true, EC_drawing2)
|
||||
},
|
||||
caption: [],
|
||||
) <abb5>
|
||||
@@ -0,0 +1,360 @@
|
||||
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
|
||||
|
||||
|
||||
#let mynode(pos, zahl, inhalt, name) = {
|
||||
node(
|
||||
pos,
|
||||
name: name,
|
||||
shape: rect, // 1. Zwingt Fletcher zum Rechteck
|
||||
corner-radius: 0pt, // 2. Verhindert abgerundete Ecken
|
||||
fill: white, // Optional: Hintergrund füllen
|
||||
stroke: 1.25pt,
|
||||
|
||||
// 3. WICHTIG: Festlegen einer Mindestgröße, damit alle gleich starten
|
||||
// Anstatt extrude nutzen wir feste Maße, die sich aber am Gitter ausrichten
|
||||
width: 12em,
|
||||
height: 5.8em,
|
||||
|
||||
{
|
||||
// Dein Layout-Block
|
||||
set align(top + right)
|
||||
text(2.5em, fill: gray.darken(90%))[#zahl]
|
||||
place(bottom + left, inhalt)
|
||||
}
|
||||
)}
|
||||
|
||||
#let myedge(start, end, type, ) = {
|
||||
let sep = 0.15em
|
||||
edge(start, end, type)
|
||||
edge(start, end)
|
||||
}
|
||||
|
||||
|
||||
#let abhaengigkeit = diagram(
|
||||
spacing: (11mm, 7mm),
|
||||
//debug: 3,
|
||||
edge-stroke: 1.25pt,
|
||||
|
||||
mark-scale: 55%,
|
||||
mynode((0,0),"",[Vorbereitungsband], <A0>),
|
||||
mynode((1,0),"1", [Grundlagen], <A1>),
|
||||
mynode((2,0), "13",[Lineare Algebra], <A13>),
|
||||
|
||||
mynode((0,1),"3",[Unendliche Reihen], <A3>),
|
||||
mynode((1,1), "2",[Differential- und Integralrechnung], <A2>),
|
||||
mynode((2,1), "14",[Lineare Optimierung], <A14>),
|
||||
|
||||
mynode((0,2), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
|
||||
mynode((1,2), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
|
||||
mynode((2,2), "15",[Nichtlineare Optimierung], <A15>),
|
||||
|
||||
mynode((0,3), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
|
||||
mynode((1,3.), "5",[Integralrechnung mit mehreren Variablen], <A5>),
|
||||
mynode((2,3), "16",[Optimale Prozesse und Systeme], <A16>),
|
||||
|
||||
mynode((0,4), "8",[Partielle Differentialgleichungen], <A8>),
|
||||
mynode((1,4), "6",[Differentialgeometrie], <A6>),
|
||||
mynode((2,4), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
|
||||
|
||||
mynode((0,5), "9",[Komplexe Funktionen], <A9>),
|
||||
mynode((1,5), "10",[Operatorenrechnung], <A10>),
|
||||
mynode((2,5), [21$#sub(text(0.5em)[1])$],[Spieltheorie], <A21_1>),
|
||||
|
||||
mynode((0,6), "12",[Spezielle Funktionen], <A12>),
|
||||
mynode((1,6), "11",[Tensoralgebra und -analysis], <A11>),
|
||||
mynode((2,6), [21$#sub(text(0.5em)[2])$],[Graphentheorie], <A21_2>),
|
||||
|
||||
mynode((0,7), [18],[Numerische Methoden], <A18>),
|
||||
mynode((1,7), [20],[Simulation], <A20>),
|
||||
mynode((2,7), [19$#sub(text(0.5em)[1])$],[Stochastische Prozesse und Modelle], <A19_1>),
|
||||
|
||||
mynode((0,8), [22],[Funktionalanalysis], <A22>),
|
||||
mynode((1,8), [23],[Symmetriegruppen], <A23>),
|
||||
mynode((2,8), [19$#sub(text(0.5em)[2])$],[Statistische Versuchsplanung], <A19_2>),
|
||||
|
||||
|
||||
myedge(<A0.east>,<A1.west>,"-|>"),
|
||||
myedge(<A1.south>,<A2.north>,"-|>"),
|
||||
myedge(<A2.west>,<A3.east>,"-|>"),
|
||||
myedge(<A13.south>,<A14.north>,"-|>"),
|
||||
myedge(<A2.south>,<A4.north>,"-|>"),
|
||||
myedge(<A4.south>,<A5.north>,"-|>"),
|
||||
myedge(<A5.south>,<A6.north>,"-|>"),
|
||||
myedge(<A14.south>,<A15.north>,"-|>"),
|
||||
myedge(<A7_1.south>,<A7_2.north>,"-|>"),
|
||||
myedge(<A7_2.south>,<A8.north>,"-|>"),
|
||||
myedge(<A8.south>,<A9.north>,"-|>"),
|
||||
myedge(<A9.south>,<A12.north>,"-|>"),
|
||||
myedge(<A12.south>,<A18.north>,"-|>"),
|
||||
myedge(<A10.south>,<A11.north>,"-|>"),
|
||||
myedge(<A15.south>,<A16.north>,"-|>"),
|
||||
myedge(<A17.south>,<A21_1.north>,"-|>"),
|
||||
myedge(<A19_1.south>,<A19_2.north>,"-|>"),
|
||||
// NEUES Edge: 1,3 (n3_1) → 3,2 (n2_3)
|
||||
// Verlauf: rechts von n3_1 nach rechts, runter auf Höhe von n2_3, dann links zur Node
|
||||
|
||||
//9 → 22
|
||||
edge(
|
||||
vertices: (
|
||||
<A9.east>,
|
||||
(0, 5.2), // deutlich nach rechts → sichtbarer Knick
|
||||
(0.5, 5.2), // dann nach links
|
||||
(0.5, 8), // runter
|
||||
<A22.east>,
|
||||
),
|
||||
corner: right,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: orange + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
//10 → 22
|
||||
edge(
|
||||
vertices: (
|
||||
<A10.west>,
|
||||
(1, 5.2), // deutlich nach rechts → sichtbarer Knick
|
||||
(0.5, 5.2), // dann nach links
|
||||
(0.5, 8), // runter
|
||||
<A22.east>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: orange + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
//3 → 7.2
|
||||
edge(
|
||||
vertices: (
|
||||
<A3.west>,
|
||||
(-0.85, 1), // deutlich nach rechts → sichtbarer Knick
|
||||
(-0.85, 1), // dann nach links
|
||||
(-0.85, 3), // runter
|
||||
<A7_2.west>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: red + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (1pt, 1pt),
|
||||
),
|
||||
|
||||
//13 → 4
|
||||
edge(
|
||||
vertices: (
|
||||
<A13.west>,
|
||||
(2, 0.18), // deutlich nach rechts → sichtbarer Knick
|
||||
(1.5, 0.2), // dann nach links
|
||||
(1.5, 2), // runter
|
||||
<A4.east>,
|
||||
),
|
||||
corner: left,
|
||||
corner-radius: 0pt, // abgerundete Ecken!
|
||||
stroke: green + 1.25pt,
|
||||
marks: "-|>",
|
||||
shift: (2pt, 2pt),
|
||||
),
|
||||
|
||||
//1 → 13
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A1.east>),
|
||||
(rel: (0.1, 0.)),
|
||||
(rel: (0pt, 5mm), to: <A13.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: green.darken(30%) + 1.25pt,
|
||||
),
|
||||
|
||||
//5 → 8
|
||||
edge(
|
||||
(rel: (0pt, 0mm), to: <A5.west>),
|
||||
|
||||
(rel: (-0.15, 0.)),
|
||||
(rel: (0.08,0), to: <A8.east>),
|
||||
(rel: (0.,0), to: <A8.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + olive,
|
||||
),
|
||||
|
||||
//7_1 → 6
|
||||
edge(
|
||||
vertices: (
|
||||
(rel: (0pt, -2pt), to: <A7_1.east>),
|
||||
(0.25, 2.2),
|
||||
(0.52, 2.2),
|
||||
(0.52,4),
|
||||
(rel: (0pt, 0pt), to: <A6.west>)
|
||||
),
|
||||
corner-radius: 0pt,
|
||||
stroke: gray + 1.25pt,
|
||||
marks: "-|>",
|
||||
),
|
||||
//4 → 7_1
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A4.west>),
|
||||
|
||||
(rel: (-0.1, 0.)),
|
||||
|
||||
(rel: (0pt, 5mm), to: <A7_1.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//9 → 10
|
||||
edge(
|
||||
(rel: (0pt, 5mm), to: <A9.east>),
|
||||
|
||||
(rel: (0.1, 0.)),
|
||||
|
||||
(rel: (0pt, 5mm), to: <A10.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//5 → 17
|
||||
edge(
|
||||
<A5.east>,
|
||||
|
||||
(rel: (0.07, 0.)),
|
||||
(rel: (0, 0.5)),
|
||||
|
||||
(rel: (0pt, 10pt), to: <A17.north>),
|
||||
<A17.north>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: blue.lighten(20%) +1.25pt ,
|
||||
),
|
||||
//4 → 15
|
||||
edge(
|
||||
(rel: (0pt, -5mm), to: <A4.east>),
|
||||
|
||||
(rel: (0.1, 0.)),
|
||||
|
||||
(rel: (0pt, -5mm), to: <A15.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt ,
|
||||
),
|
||||
//8 → 16
|
||||
edge(
|
||||
(rel: (0.2,0), to: <A8.south>),
|
||||
(rel: (0., 0.1)),
|
||||
(rel: (1.3, 0.)),
|
||||
(rel: (-0.115, 0), to: <A16.west>),
|
||||
<A16.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + yellow.darken(20%),
|
||||
),
|
||||
//6 → 11
|
||||
edge(
|
||||
(rel: (0pt, -5mm), to: <A6.east>),
|
||||
|
||||
(rel: (0.065, 0.)),
|
||||
(rel: (0.065,0), to: <A11.east>),
|
||||
(rel: (0.,0), to: <A11.east>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple.lighten(20%),
|
||||
),
|
||||
//13 → 23
|
||||
edge(
|
||||
(<A13.east>),
|
||||
(rel:(0.75,0)),
|
||||
(rel:(0, 9.8)),// <----
|
||||
(rel:(-3.38, 0)),
|
||||
//(rel: (0.6, 0.), to: <A21_2.east>),
|
||||
<A23.south>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + orange.darken(10%),
|
||||
|
||||
),
|
||||
|
||||
//15 → 21_1 21_2
|
||||
edge(
|
||||
(<A15.east>),
|
||||
// Startpunkt
|
||||
(rel: (0.5, 0)),
|
||||
(rel: (0.5, 0.), to: <A21_1.east>),
|
||||
<A21_1.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
edge(
|
||||
(<A15.east>),
|
||||
// Startpunkt
|
||||
(rel: (0.5, 0)),
|
||||
(rel: (0.5, 0.), to: <A21_2.east>),
|
||||
<A21_2.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
|
||||
//16 → 19_1 19_2
|
||||
edge(
|
||||
(<A16.east>),
|
||||
(rel: (0.3, 0)),
|
||||
(rel: (0.3, 0.), to: <A19_1.east>),
|
||||
<A19_1.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple,
|
||||
),
|
||||
edge(
|
||||
(<A16.east>),
|
||||
(rel: (0.3, 0)),
|
||||
(rel: (0.3, 0.), to: <A19_2.east>),
|
||||
<A19_2.east>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + purple,
|
||||
),
|
||||
|
||||
//17 → 21_2
|
||||
edge(
|
||||
(rel: (-0.2,0), to: <A17.south>),
|
||||
(rel: (0, 0.2)),
|
||||
(rel: (-.325, 0.)),
|
||||
(rel: (-0.14, 0), to: <A21_2.west>),
|
||||
<A21_2.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + red,
|
||||
),
|
||||
//17 → 19_1, 19_2
|
||||
edge(
|
||||
(<A17.west>),
|
||||
(rel: (-0.075, 0)),
|
||||
(rel: (-0.075,-0.20), to: <A19_1.west>),
|
||||
(rel: (0.,-0.2), to: <A19_1.west>),
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + green,
|
||||
),
|
||||
edge(
|
||||
(<A17.west>),
|
||||
(rel: (-0.075, 0)),
|
||||
(rel: (-0.075, 0.), to: <A19_2.west>),
|
||||
<A19_2.west>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + green,
|
||||
),
|
||||
|
||||
//19_2 → 20
|
||||
edge(
|
||||
(<A19_2.north>),
|
||||
(rel: (-0.2, 0)),
|
||||
(rel: (0, -0.1)),
|
||||
(rel: (-0, 0.18), to: <A20.south>),
|
||||
<A20.south>,
|
||||
"-|>",
|
||||
corner-radius: 0pt ,
|
||||
stroke: 1.25pt + blue,
|
||||
),
|
||||
)
|
||||
@@ -0,0 +1,250 @@
|
||||
#let deckblatt(bandnr: "", autor: "", titel: "") = {
|
||||
place(
|
||||
top + left,
|
||||
dx: -20mm, // Hebt den linken Rand auf
|
||||
dy: -20mm, // Abstand von der Oberkante des Blattes
|
||||
|
||||
rect(
|
||||
width: 163mm, // Exakte Breite A4
|
||||
height: 230mm,
|
||||
fill: rgb(52.2%, 87.8%, 78.4%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -20mm,
|
||||
dy: 12mm,
|
||||
//Linie
|
||||
rect(
|
||||
width: 162mm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.4cm,
|
||||
rect(
|
||||
width: 27cm, height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.6cm,
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 1.8cm,
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 2cm, // Abstand von der Oberkante des Blattes
|
||||
|
||||
rect(
|
||||
width: 27cm, // Exakte Breite A4
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
|
||||
place(
|
||||
top + left, // Wo auf der Seite (oder im Absatz)
|
||||
dx: 94mm, // Versatz von links
|
||||
dy: 85mm, // Versatz von oben
|
||||
{
|
||||
import "@preview/cetz:0.3.1"
|
||||
cetz.canvas({
|
||||
import cetz.draw: *
|
||||
// Halbkreis
|
||||
arc((x:0,y:0), start: 0deg, stop: -180deg, radius: 17mm, fill: rgb(100%, 100%, 87.1%), stroke: none)
|
||||
})
|
||||
}
|
||||
)
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 2.2cm, // Abstand von der Oberkante des Blattes
|
||||
rect(
|
||||
width: 230cm, // Exakte Breite A4
|
||||
height: 58mm,
|
||||
fill: rgb(12.9%, 18%, 32.9%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
//stroke: 0.5pt + red,
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 80mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 82mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 84mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm,
|
||||
dy: 86mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -2.5cm, // Hebt den linken Rand auf
|
||||
dy: 88mm,
|
||||
|
||||
rect(
|
||||
width: 27cm,
|
||||
height: 2mm,
|
||||
fill: rgb(100%, 100%, 87.1%),
|
||||
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
))
|
||||
|
||||
|
||||
/* place(
|
||||
top + left,
|
||||
dx: 7.5cm, // Hebt den linken Rand auf
|
||||
dy: 62mm,
|
||||
|
||||
circle( radius: 15mm, fill: rgb(100%, 32.2%, 18.8%)),
|
||||
|
||||
//height: 2mm,
|
||||
//fill: rgb(100%, 100%, 87.1%),
|
||||
//inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||
) */
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 95mm,
|
||||
dy: 68mm,
|
||||
box(width: 30mm, height: 30mm)[
|
||||
#circle(radius: 16mm, fill: rgb(100%, 32.2%, 18.8%), stroke: none)
|
||||
#place(center + horizon)[
|
||||
// Wir erzwingen hier ALLES neu
|
||||
#set text(font: "Fira Math", size: 48pt, fill: black)
|
||||
#bandnr
|
||||
]
|
||||
]
|
||||
/* {
|
||||
set align(center + horizon)
|
||||
text(weight: "bold",fill: black, size: 45pt)[$1$]
|
||||
}*/
|
||||
)
|
||||
// Text
|
||||
place(
|
||||
top + left,
|
||||
dx: -12mm,
|
||||
dy: 2.6cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(7.5em, fill: rgb(100%, 32.2%, 18.8%), weight: "bold",style: "italic", tracking: 0.06em, font: "Lato")[MATHEMATIK]
|
||||
})
|
||||
)
|
||||
place(
|
||||
top + left,
|
||||
dx: -12mm,
|
||||
dy: 4.7cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[FÜR INGENIEURE]
|
||||
})
|
||||
)
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 5.4cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[NATURWISSENSCHAFTLER]
|
||||
})
|
||||
)
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 6.1cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[ÖKONOMEN]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: 0.1cm,
|
||||
dy: 6.8cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[LANDWIRTE]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -0.7cm,
|
||||
dy: 10cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
text(1.25em, fill: rgb(3.1%, 20%, 29%), weight: "bold", tracking: 0.05em, font: "Lato")[#autor]
|
||||
}))
|
||||
|
||||
place(
|
||||
top + left,
|
||||
dx: -0.7cm,
|
||||
dy: 11.5cm,
|
||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||
box(width: 150%, {
|
||||
set par(leading: 1em)
|
||||
text(2.5em, fill: rgb(3.1%, 20%, 29%),weight: "bold", tracking: 0.0em, font: "Lato")[#titel]
|
||||
}))
|
||||
|
||||
}
|
||||
@@ -0,0 +1,164 @@
|
||||
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||
#import "@preview/cetz:0.4.2" //Grafiken
|
||||
#import "@preview/cetz-plot:0.1.3": plot
|
||||
|
||||
#let bent-edge(from, to, ..args) = {
|
||||
let midpoint = (from, 50%, to)
|
||||
let vertices = (
|
||||
from,
|
||||
(from, "|-", midpoint),
|
||||
(midpoint, "-|", to),
|
||||
to,
|
||||
)
|
||||
edge(..vertices, "-|", ..args)
|
||||
}
|
||||
|
||||
|
||||
#let b3_0 = diagram(
|
||||
node-stroke: luma(80%),
|
||||
edge-corner-radius: none,
|
||||
spacing: (10pt, 20pt),
|
||||
|
||||
// Nodes
|
||||
node((1.5,0), [1.#h(3mm)2.#h(3mm)3.1.], name: <a>),
|
||||
node((0.5,1), [4.1.-4.3.], name: <b>),
|
||||
node((2.5,1), [3.2.-3.3.], name: <c>),
|
||||
|
||||
node((0,2), [4.4.-4.5.], name: <d>),
|
||||
node((1,2), [4.6.], name: <e>),
|
||||
|
||||
node((2.501,2), [5.1.-5.5.], name: <f>),
|
||||
node((2,3), [5.6.], name: <g>),
|
||||
node((3,3), [5.7.], name: <h>),
|
||||
node((4,3), [5.8.], name: <i>),
|
||||
node((5,3), [5.9.], name: <j>),
|
||||
node((6,3), [5.10.], name: <k>),
|
||||
node((2.001,4), [#h(1mm)6.#h(1mm) ], name: <m>),
|
||||
|
||||
// Edges
|
||||
bent-edge(<a>, <b>),
|
||||
bent-edge(<a>, <c>),
|
||||
bent-edge(<b>, <d>),
|
||||
bent-edge(<b>, <e>),
|
||||
bent-edge(<c>, <f>),
|
||||
bent-edge(<c>, <f>),
|
||||
bent-edge(<f>, <g>),
|
||||
bent-edge(<f>, <h>),
|
||||
bent-edge(<f>, <i>),
|
||||
bent-edge(<f>, <j>),
|
||||
bent-edge(<f>, <k>),
|
||||
bent-edge(<g>, <m>),
|
||||
)
|
||||
|
||||
|
||||
#let b2_4 = cetz.canvas({
|
||||
import cetz.draw: *
|
||||
//import cetz-plot: *
|
||||
|
||||
let f = x => (0.01 * calc.pow(x, 3) - 0.2 * calc.pow(x, 2) + 0.8 * x + 3) + 5
|
||||
let g = x => -(0.01 * calc.pow(x, 3) - 0.2 * calc.pow(x, 2) + 0.8 * x + 3) + 5
|
||||
|
||||
plot.plot(
|
||||
size: (6, 7),
|
||||
name: "plot",
|
||||
axis-style: "school-book",
|
||||
x-tick-step: none,
|
||||
y-tick-step: none,
|
||||
x-label: $x$,
|
||||
y-label: $y$,
|
||||
x-ticks: ((3, $x_1$), (12, $x_2$), (8, $x$)),
|
||||
|
||||
{
|
||||
plot.add(domain: (2, 13), f, style: (stroke: red), samples: 300)
|
||||
plot.add(domain: (2, 13), g, style: (stroke: blue), samples: 300)
|
||||
|
||||
plot.add-fill-between(
|
||||
domain: (3, 12),
|
||||
g,
|
||||
f,
|
||||
style: (
|
||||
stroke: none,
|
||||
fill: tiling(size: (3pt, 3pt), square(stroke: gray)),
|
||||
),)
|
||||
|
||||
|
||||
|
||||
// Hilfslinie damit Koordinatensystem nicht verrutscht
|
||||
plot.add(((0, 0), (0, 0.1)), style: (stroke: none))
|
||||
|
||||
plot.add-anchor("G1", (3, g(3)))
|
||||
plot.add-anchor("F1", (3, f(3)))
|
||||
plot.add-anchor("G1", (12, g(12)))
|
||||
plot.add-anchor("G1", (12, g(12)))
|
||||
|
||||
plot.add(((3, 0), (3, f(3))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
|
||||
plot.add(((12, 0), (12, f(12))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
|
||||
},
|
||||
)
|
||||
})
|
||||
|
||||
|
||||
#let EC_func(x) = {
|
||||
let y = x*x*x - 4*x + 6
|
||||
if y < 0 {
|
||||
return 0
|
||||
}
|
||||
return calc.sqrt(y)
|
||||
}
|
||||
|
||||
|
||||
#let EC_drawing = cetz.canvas({
|
||||
plot.plot(
|
||||
size: (10, 10),
|
||||
x-tick-step: 5,
|
||||
y-tick-step: 20,
|
||||
x-min: -5,
|
||||
max: 10,
|
||||
x-grid: true,
|
||||
y-grid: true,
|
||||
|
||||
{
|
||||
plot.add(domain: (-5, 10), EC_func, samples: 300)
|
||||
plot.add(domain: (-5, 10), t => (t, -EC_func(t)),samples: 300)
|
||||
})
|
||||
})
|
||||
|
||||
#let EC_func2(x) = {
|
||||
let y = (x - 3)*(x - 3)*(x - 3) - 4*(x - 3) + 12
|
||||
if y < 0 {
|
||||
return 0
|
||||
}
|
||||
return calc.sqrt(y)
|
||||
}
|
||||
|
||||
|
||||
#let EC_func3(x) = {
|
||||
let y = -((x - 3)*(x - 3)*(x - 3) - 4*(x - 3)) + 4
|
||||
if y < 0 {
|
||||
return 0
|
||||
}
|
||||
return calc.sqrt(y)
|
||||
}
|
||||
|
||||
|
||||
#let EC_drawing2 = cetz.canvas({
|
||||
plot.plot(
|
||||
name: "plot",
|
||||
|
||||
axis-style: "school-book",
|
||||
size: (10, 10),
|
||||
x-tick-step: none,
|
||||
y-tick-step: 20,
|
||||
x-min: 0,
|
||||
x-max: 7,
|
||||
x-grid: true,
|
||||
y-grid: true,
|
||||
|
||||
{
|
||||
plot.add(((0, 0), (0, 0.1)), style: (stroke: none))
|
||||
|
||||
plot.add(domain: (1, 6), EC_func2, samples: 300)
|
||||
|
||||
plot.add(domain: (1, 6), EC_func3,samples: 300)
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user