Änderungen vorgenommen

This commit is contained in:
2026-03-29 18:56:51 +02:00
parent 843fda0210
commit 6f5f2f0992
2 changed files with 1138 additions and 6 deletions

View File

@@ -137,9 +137,6 @@
#deckblatt(bandnr: "2", autor: tt, titel: "Differential- und Integralrechnung\nfür Funktionen\nmit einer Variablen") #deckblatt(bandnr: "2", autor: tt, titel: "Differential- und Integralrechnung\nfür Funktionen\nmit einer Variablen")
#pagebreak() #pagebreak()
#set page( #set page(
@@ -164,6 +161,7 @@
width:162mm, width:162mm,
height: 230mm, height: 230mm,
) )
#v(9mm)
#heading(outlined: false)[Abhängigkeitsgraph] #heading(outlined: false)[Abhängigkeitsgraph]
/* #let mynode(pos, text1, text2, name) = { /* #let mynode(pos, text1, text2, name) = {
node(pos, [#text( size:1.7em, text2) \ #text1], name:name, stroke: 1pt, corner-radius: 0mm, node(pos, [#text( size:1.7em, text2) \ #text1], name:name, stroke: 1pt, corner-radius: 0mm,
@@ -171,8 +169,11 @@
/* Dashed separator from east to west */ /* Dashed separator from east to west */
//edge(label(str(name)+".west"), label(str(name)+".east"),"-", stroke: 0.2mm, dash:(1mm, 0.8mm)) //edge(label(str(name)+".west"), label(str(name)+".east"),"-", stroke: 0.2mm, dash:(1mm, 0.8mm))
} */ } */
#v(-6mm)
#scale(x:90%, y:90%)[#abhaengigkeit]
#abhaengigkeit //#scale(factor: 90%, abhaengigkeit)
//#abhaengigkeit
#show heading: it => { #show heading: it => {
set block(below: if it.level == 1 { 2em } else { 1em }) set block(below: if it.level == 1 { 2em } else { 1em })
@@ -430,11 +431,144 @@ Unter Verwendung von @eq22 und bekannten Grenzwertsätzen für Zahlenfolgen folg
Die Gültigkeit von @eq24 wurde für eine beliebige und damit für jede Folge $\(x_n)$ mit den Eigenschaften @eq23 bewiesen. Daher gilt Die Gültigkeit von @eq24 wurde für eine beliebige und damit für jede Folge $\(x_n)$ mit den Eigenschaften @eq23 bewiesen. Daher gilt
/* $$ /*
$$
\lim _{x \rightarrow \frac{1}{2}} \frac{x^2-\frac{1}{4}}{x-\frac{1}{2}}=1, \lim _{x \rightarrow \frac{1}{2}} \frac{x^2-\frac{1}{4}}{x-\frac{1}{2}}=1,
$$ $$
was in Einklang mit der Anschauung steht (Bild 2.2). */ was in Einklang mit der Anschauung steht (Bild 2.2).
Beispiel 2.3: Wir wollen den Grenzwert der Funktion
$$
f(x)=\left\{\begin{array}{lll}
\frac{x^2-\frac{1}{4}}{x-\frac{1}{2}} & \text { für } & x \neq \frac{1}{2} \\
2 & \text { für } & x=\frac{1}{2}
\end{array}\right.
$$
für $x \rightarrow \frac{1}{2}$ ermitteln (s. Bild 2.5).
Obwohl $f$ an der Stelle $x=\frac{1}{2}$ definiert ist, werden auch hier nur Folgen $\left(x_n\right)$ mit $\lim _{n \rightarrow \infty} x_n=\frac{1}{2}$ betrachtet, für die $x_n \neq \frac{1}{2}$ für alle $n$ gilt [vgl. (E 2)]. Für jede solche Folge erhält man wie in Beispiel 2.2
$$
\lim _{n \rightarrow \infty} f\left(x_n\right)=\lim _{n \rightarrow \infty} \frac{x_n^2-\frac{1}{4}}{x_n-\frac{1}{2}}=\lim _{n \rightarrow \infty}\left(x_n+\frac{1}{2}\right)=1,
$$
also ist
$$
\lim _{x \rightarrow \frac{1}{2}} f(x)=1
$$
* Aufgabe 2.1: Ermitteln Sie die folgenden Grenzwerte:
a) $\lim _{x \rightarrow 0} \frac{3 x+2}{x-1}$,
b) $\lim _{x \rightarrow-2} \frac{x^2-4}{x+2}$.
Beispiel 2.4: Nun soll das Verhalten von $f(x)=\sin \frac{1}{x}(x \neq 0)$ für $x \rightarrow 0$ untersucht werden. Die Bildkurve von $f$ (Bild 2.6) schwankt für $x \rightarrow 0$ ständig zwischen -1 und 1 , wobei die Scheitel immer dichter aufeinander folgen. Wir wollen zeigen, daß $f$ für $x \rightarrow 0$ keinen Grenzwert hat. Dazu genügt es, eine Folge ( $x_n$ ) mit
$$
x_n \neq 0 \text { für alle } n \text { und } \lim _{n \rightarrow \infty} x_n=0
$$
anzugeben, für die die Folge $\left(f\left(x_n\right)\right)$ divergent ist. Setzen wir zum Beispiel $x_n=\frac{2}{(2 n-1) \pi}$, dann gilt (2.5), aber wegen
$$
f\left(x_n\right)=\sin (n \pi-\pi / 2)=(-1)^{n+1}
$$
ist die Folge $\left(f\left(x_n\right)\right)$ (unbestimmt) divergent.
Man kann den Beweis auch dadurch führen, daß man zwei Folgen $\left(x_n\right)$ und $\left(\tilde{x}_n\right)$ mit den Eigenschaften (2.5) angibt, für die die Folgen $\left(f\left(x_n\right)\right)$ und $\left(f\left(\tilde{x}_n\right)\right)$ verschiedene Grenzwerte haben.
Aufgabe 2.2: Führen Sie den Beweis in der soeben angedeuteten Weise durch!
Beispiel 2.5: Abschließend betrachten wir noch die Funktion
$$
f(x)=(1+x)^{\frac{1}{x}} \quad(x>-1, x \neq 0) \text { für } \quad x \rightarrow 0 \text {. }
$$
Für die Folge $\left(x_n\right)$ mit $x_n=\frac{1}{n}$ gilt (vgl. Band 1, Abschnitt 10.7.)
$$
\lim _{n \rightarrow \infty} f\left(x_n\right)=\mathrm{e} .
$$
Ohne Beweis ${ }^1$ ) sei mitgeteilt, daß (2.6) sogar für jede Folge $\left(x_n\right)$ mit $x_n>-1, x_n \neq 0$ und $\lim _{n \rightarrow \infty} x_n=0$ gilt. Damit erhält man den für spätere Anwendungen wichtigen Grenzwert
$$
\lim _{x \rightarrow 0}(1+x)^{\frac{1}{x}}=\mathrm{e}
$$
2.1.2. Die $\varepsilon-\delta$-Charakterisierung" des Grenzwertes
Auf Grund der Anschauung wird man vermuten, daß man die Gleichung $\lim _{x \rightarrow x_0} f(x)=g$ auch folgendermaßen interpretieren kann:
,,Der Abstand zwischen $f(x)$ und $g($ also $|f(x)-g|)$ ist beliebig klein, wenn nur der Abstand zwischen $x$ und $x_0$ hinreichend klein, aber von null verschieden ist." In geeigneter Präzisierung ist das der Inhalt des folgenden Satzes, den wir ohne Beweis angeben.
Satz 2.1: Die Funktion $f$ sei (mindestens) in einer punktierten Umgebung der Stelle $x_0$
S. 2.1 definiert. Genau dann gilt $\lim f(x)=g$, wenn $z u$ jeder (insbesondere jeder beliebig kleinen) Zahl $\varepsilon>0$ eine $\begin{gathered}\mathrm{Xahl} \quad \mathrm{Xax} \\ \text { Zahl }\end{gathered}=\delta(\varepsilon)>0$ existiert, so daß gilt
$$
|f(x)-g|<\varepsilon
$$
für alle $x$ mit
$$
0<\left|x-x_0\right|<\delta .
$$
Eine geometrische Deutung dieses Satzes gibt Bild 2.7. Mit den dort verwendeten Bezeichnungen bedeutet $\lim _{x \rightarrow x_0} f(x)=g$, daß zu jedem (noch so schmalen) $\varepsilon$-Streifen“
${ }^1$ ) Beweise zu Teil 1 dieses Buches findet man, wenn nichts anderes gesagt ist, in [5] und [10].
um $y=g$ ein $\delta$-Streifen" um $x=x_0$ existiert, so daß alle Punkte der Bildkurve von $f$, die in diesem " $\delta$-Streifen" - außer auf der Mittellinie $x=x_0{ }^1$ ) - liegen, auch dem vorgegebenen ,, $\varepsilon$-Streifen" angehören. Dabei ist offenbar $\delta$ im allgemeinen um so kleiner zu wählen, je kleiner $\varepsilon$ vorgegeben ist. Diesen Sachverhalt soll die Schreibweise $\delta=\delta(\varepsilon)$ zum Ausdruck bringen.
Beispiel 2.6: Als Anwendung des Satzes wollen wir zeigen, daß
$$
\lim _{x \rightarrow x_0} \sqrt{x}=\sqrt{x_0} \quad\left(x_0>0\right)
$$
gilt (Bild 2.8). Es sei ein beliebiges $\varepsilon>0$ gegeben. Gemäß (2.8) ist $\left|\sqrt{x}-\sqrt{x_0}\right|$ abzuschätzen. Wir erweitern mit $\sqrt{x}+\sqrt{x_0}$ und erhalten
$$
\left|\sqrt{x}-\sqrt{x_0}\right|=\frac{\left|x-x_0\right|}{\sqrt{x}+\sqrt{x_0}} \leqq \frac{1}{\sqrt{x_0}}\left|x-x_0\right|<\varepsilon
$$
für alle $x \geqq 0$ mit $\left|x-x_0\right|<\sqrt{x_0} \varepsilon$. Daher setzen wir $\delta$ gleich der kleineren der beiden Zahlen $x_0$ und $\sqrt{x_0} \varepsilon$. Für alle $x$ mit $\left|x-x_0\right|<\delta$ gilt dann $x \geqq 0$ (warum?) und (2.11).
2.2 Einseitige Grenzwerte
Für die Existenz des Grenzwertes $\lim _{x \rightarrow x_0} \sqrt{x}$ ist die Voraussetzung $x_0>0$ wesentlich (s. (2.10)), denn für $x_0 \leqq 0$ gibt es keine punktierte Umgebung von $x_0$, in der die Funktion $f(x)=\sqrt{x}(x \geqq 0)$ definiert ist. Im Falle $x_0 \leqq 0$ existiert $\lim _{x \rightarrow x_0} \sqrt{x}$ also nicht. Der Stelle $x_0=0$ kann man sich aber immerhin noch „von rechts nähern“, ohne den Definitionsbereich von $f$ zu verlassen. Diese Überlegung führt zum Begriff der einseitigen Grenzwerte.
D. 2.2 Definition 2.2: Die Funktion $f$ sei (mindestens) in einem Intervall ( $\left.x_0, x_0+c\right)^2$ ) $(c>0)$ definiert. Eine Zahl $g_{\mathrm{r}}$ heißt rechtsseitiger Grenzwert von $\boldsymbol{f}$ für $\boldsymbol{x}$ gegen $\boldsymbol{x}_0$, in Zeichen
$$
\left.\left.\lim _{x \rightarrow x_0+0} f(x)=g_r \quad \text { oder } \quad f(x) \rightarrow g_r \quad \text { für } \quad x \rightarrow x_0+0\right)^3\right),
$$
${ }^1$ ) Man beachte, daß $\left|x-x_0\right|>0$ äquivalent zu $x \neq x_0$ ist.
${ }^2$ ) Ein solches Intervall nennt man auch punktierte rechtsseitige Umgebung von $x_0$.
${ }^3$ ) Statt $\lim _{x \rightarrow 0+0} f(x)=g_r$ (bzw. $f(x) \rightarrow g_r$, für $x \rightarrow 0+0$ ) schreibt man kurz $\lim _{x \rightarrow+0} f(x)=g_r$ (bzw. $f(x) \rightarrow g_r$ für $x \rightarrow+0$ ).
*/
] ]

998
Band2/Grafiktest.typ Normal file
View File

@@ -0,0 +1,998 @@
// #import "@preview/cetz:0.4.0": canvas
// #import "@preview/cetz-plot:0.1.2": plot
// #canvas({
// plot.plot(
// size: (8, 8),
// axis-style: "school-book", // nur Achsen, kein Rahmen[web:17]
// x-min: -2, x-max: 2, // negativer und positiver x-Bereich[web:27]
// y-min: -1, y-max: 3.5,
// x-tick-step: none, // automatische Ticks aus[web:24]
// y-tick-step: none,
// // nur 1/2 und x auf der x-Achse:
// x-ticks: (
// (0.5, $1/2$),
// (1.25, $x$),
// ),
// // z.B. ein paar y-Ticks, falls gewünscht:
// y-ticks: (
// (0.25, $1/4$),
// (1.5625, $x^2$),
// ),
// shared-zero: false, // optional: 0 am Ursprung ausblenden[web:16]
// // Parabel: y = x^2 auf [-2,2]
// plot.add(
// domain: (-3, 3),
// (x) => x * x,
// )
// )
// })
// #import "@preview/cetz:0.4.2"
// #import "@preview/cetz-plot:0.1.3": plot
// #cetz.canvas({
// //import cetz.plot
// //import cetz.palette
// import cetz.draw: *
// plot.plot(
// size: (6, 6),
// x-tick-step: none,
// y-tick-step: none,
// axis-style: "school-book",
// x-label: $x$,
// y-label: $y$,
// x-ticks: (
// (0.5, $1/2$),
// (1.25, $x$),
// ),
// y-ticks: (
// (0.25, $1/4$),
// (1.5625, $x^2$),
// ),
// {
// let f = x => calc.pow(x, 2)
// // Definition der Punkte
// let x0 = 0.5
// let y0 = f(x0)
// let x1 = 1.25
// let y1 = f(x1)
// // Berechnung der Steigung m = (y1 - y0) / (x1 - x0)
// let m = (y1 - y0) / (x1 - x0)
// // Sekantenfunktion: s(x) = m * (x - x0) + y0
// let s = x => m * (x - x0) + y0
// // 1. Die Parabel
// plot.add(f, domain: (-1.3, 1.8), label: $f(x) = x^2$)
// // 2. Die Sekante (etwas weiter gezeichnet für die Optik)
// plot.add(s, domain: (0, 2), style: (stroke: blue))
// // 3. Die Punkte markieren
// plot.add(((x0, y0),), mark: "o", label: $P_0$)
// plot.add(((x1, y1),), mark: "o", label: $P$)
// // 4. Hilfslinien (gestrichelt)
// plot.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.5pt)))
// plot.add(((x1, 0), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.5pt)))
// plot.add(((x0, y0), (x1, y0)), style: (stroke: ( paint: gray.darken(80%), thickness: 0.5pt)))
// plot.add-anchor("pt1", (2,5))
// }
// )
// // content("plot.x", [asdf])
// })
// #import "@preview/cetz:0.4.2"
// #import "@preview/cetz-plot:0.1.2": plot
// #cetz.canvas({
// plot.plot(
// size: (6, 6),
// x-tick-step: 1,
// y-tick-step: 1,
// axis-style: "school-book",
// x-label: $x$,
// y-label: $y$,
// {
// let f = x => calc.pow(x, 2)
// let x0 = 0.5
// let x1 = 1.5
// // 1. Die Parabel
// plot.add(f, domain: (-1.3, 1.8), label: $f(x)$)
// // 2. Die Sekante
// let m = (f(x1) - f(x0)) / (x1 - x0)
// plot.add(x => m * (x - x0) + f(x0), domain: (0, 2), style: (stroke: blue))
// // 3. Hilfslinien
// plot.add(((x0, 0), (x0, f(x0))), style: (stroke: (dash: "dashed", paint: gray)))
// plot.add(((x1, 0), (x1, f(x1))), style: (stroke: (dash: "dashed", paint: gray)))
// // 4. Beschriftungen OHNE den "bounds" Fehler
// // Wir nutzen plot.add mit leeren Markern oder speziellen Labels
// // Punkte markieren und direkt beschriften
// plot.add(((x0, f(x0)),), mark: "o", label: $P_0$)
// plot.add(((x1, f(x1)),), mark: "o", label: $P$)
// // Beschriftung an der x-Achse
// // Trick: Wir addieren einen "unsichtbaren" Punkt an der Achse mit Label
// plot.add(((x0, 0),), label: $x_0$, mark: none)
// plot.add(((x1, 0),), label: $x$, mark: none)
// }
// )
// })
// #import "@preview/cetz:0.4.2"
// #import "@preview/cetz-plot:0.1.2" as cetz_plot
// #cetz.canvas({
// let cp = cetz_plot.plot
// let x0 = 0.5
// let x1 = 1.5
// let f = x => calc.pow(x, 2)
// let y0 = f(x0)
// let y1 = f(x1)
// cp.plot(
// size: (6, 6),
// x-tick-step: 1,
// y-tick-step: 1,
// axis-style: "school-book",
// x-label: $x$,
// y-label: $y$,
// {
// // 1. Die Graphen
// cp.add(f, domain: (-1.3, 1.8))
// let m = (y1 - y0) / (x1 - x0)
// cp.add(x => m * (x - x0) + y0, domain: (-0.2, 2.2), style: (stroke: blue))
// // 2. Hilfslinien
// cp.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray)))
// cp.add(((x1, 0), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray)))
// // 3. Punkte P0 und P
// cp.add(((x0, y0),), mark: "o")
// cp.add(((x1, y1),), mark: "o")
// // 4. BESCHRIFTUNG (Der Trick: add mit mark: none)
// // Wir setzen die Labels direkt an die Koordinaten
// // x-Achse Beschriftung (leicht unter y=0 verschoben mit 'label-offset')
// cp.add(((x0, 0),), label: $x_0$, mark: none)
// cp.add(((x1, 0),), label: $x$, mark: none)
// // Punkte beschriften
// cp.add(((x0 - 0.1, y0 + 0.3),), label: $P_0$, mark: none)
// cp.add(((x1 + 0.2, y1),), label: $P$, mark: none)
// // Funktionsnamen
// cp.add(((1.6, 3.2),), label: $f(x)$, mark: none)
// }
// )
// })
// #import "@preview/cetz:0.4.2"
// #import "@preview/cetz-plot:0.1.2" as cetz_plot
// #cetz.canvas({
// import cetz.draw: *
// let cp = cetz_plot.plot
// // 1. Parameter festlegen
// let (w, h) = (6, 6) // Größe des Plots
// let x-min = -1.5
// let x-max = 2.5
// let y-min = -1.0
// let y-max = 4.0
// let x0 = 0.5
// let x1 = 1.5
// let f = x => calc.pow(x, 2)
// let y0 = f(x0)
// let y1 = f(x1)
// // 2. Den Plot zeichnen (als Basis)
// cp.plot(
// size: (w, h),
// x-tick-step: 1,
// y-tick-step: 1,
// axis-style: "school-book",
// x-label: $x$,
// y-label: $y$,
// x-domain: (x-min, x-max),
// y-domain: (y-min, y-max),
// name: "p",
// {
// cp.add(f, domain: (x-min, x-max))
// let m = (y1 - y0) / (x1 - x0)
// cp.add(x => m * (x - x0) + y0, domain: (x-min, x-max), style: (stroke: blue))
// cp.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray)))
// cp.add(((x1, 0), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray)))
// cp.add(((x0, y0),), mark: "o")
// cp.add(((x1, y1),), mark: "o")
// }
// )
// // 3. DER FIX: Manuelle Beschriftung über das "p.origin"
// // Wir nutzen die Größe des Plots, um die Koordinaten selbst zu setzen.
// // Da der Ursprung im school-book Stil bei (0,0) liegt:
// let plot-coords(x, y) = {
// let px = (x / (x-max - x-min)) * w
// let py = (y / (y-max - y-min)) * h
// return (rel: (px, py), to: "p.origin")
// }
// // Beschriftungen (Diese liegen nun außerhalb des Plot-Berechnungs-Logik)
// content(plot-coords(x0, -0.4), $x_0$)
// content(plot-coords(x1, -0.4), $x$)
// content(plot-coords(x0 - 0.3, y0 + 0.3), $P_0$)
// content(plot-coords(x1 + 0.3, y1), $P$)
// content(plot-coords(1.6, 3.2), $f(x)$)
// })
// #import "@preview/cetz:0.4.2"
// #cetz.canvas({
// import cetz.draw: *
// // 1. Koordinatensystem manuell skalieren (1 Einheit = 1.5cm)
// scale(1.5)
// // Parameter
// let x0 = 0.5
// let x1 = 1.5
// let f(x) = calc.pow(x, 2)
// let y0 = f(x0)
// let y1 = f(x1)
// // 2. Achsen zeichnen (School-Book)
// line((-1.5, 0), (2.5, 0), mark: (end: ">"), name: "xaxis")
// line((0, -1), (0, 4), mark: (end: ">"), name: "yaxis")
// content((2.5, -0.3), $x$)
// content((-0.3, 4), $y$)
// // 3. Parabel zeichnen (Sampling-Methode: Sicherster Weg ohne Extra-Module)
// let points = ()
// for i in range(-13, 19) {
// let x = i / 10
// points.push((x, f(x)))
// }
// line(..points, stroke: black)
// // 4. Sekante zeichnen
// let m = (y1 - y0) / (x1 - x0)
// // Gerade: y = m*(x - x0) + y0
// line((-0.5, m * (-0.5 - x0) + y0), (2.2, m * (2.2 - x0) + y0), stroke: blue)
// // 5. Hilfslinien & Punkte
// line((x0, 0), (x0, y0), stroke: (dash: "dashed", paint: gray))
// line((x1, 0), (x1, y1), stroke: (dash: "dashed", paint: gray))
// circle((x0, y0), radius: 0.05, fill: black)
// circle((x1, y1), radius: 0.05, fill: black)
// // 6. BESCHRIFTUNGEN (Direkt an den Objekten)
// content((x0, -0.4), $x_0$)
// content((x1, -0.4), $x$)
// content((x0 - 0.3, y0 + 0.2), $P_0$)
// content((x1 + 0.3, y1), $P$)
// content((1.8, f(1.8)), $f(x)$, anchor: "west", padding: .1)
// content((2.1, 3.5), [Sekante], fill: white, padding: .1)
// })
// #import "@preview/cetz:0.4.2"
// #cetz.canvas({
// import cetz.draw: *
// // 1. Koordinatensystem manuell skalieren (1 Einheit = 1.5cm)
// scale(1.5)
// // Parameter
// let x0 = 0.5
// let x1 = 1.5
// let f(x) = calc.pow(x, 2)
// let y0 = f(x0)
// let y1 = f(x1)
// // 2. Achsen zeichnen (School-Book)
// line((-1.5, 0), (2.5, 0), mark: (end: ">"), name: "xaxis")
// line((0, -1), (0, 4), mark: (end: ">"), name: "yaxis")
// content((2.5, -0.3), $x$)
// content((-0.3, 4), $y$)
// // 3. Parabel zeichnen (Sampling-Methode: Sicherster Weg ohne Extra-Module)
// let points = ()
// for i in range(-13, 19) {
// let x = i / 10
// points.push((x, f(x)))
// }
// line(..points, stroke: black)
// // 4. Sekante zeichnen
// let m = (y1 - y0) / (x1 - x0)
// // Gerade: y = m*(x - x0) + y0
// line((-0.5, m * (-0.5 - x0) + y0), (2.2, m * (2.2 - x0) + y0), stroke: blue)
// // 5. Hilfslinien & Punkte
// line((x0, 0), (x0, y0), stroke: (dash: "dashed", paint: gray))
// line((x1, 0), (x1, y1), stroke: (dash: "dashed", paint: gray))
// circle((x0, y0), radius: 0.05, fill: black)
// circle((x1, y1), radius: 0.05, fill: black)
// // 6. BESCHRIFTUNGEN (Direkt an den Objekten)
// content((x0, -0.4), $x_0$)
// content((x1, -0.4), $x$)
// content((x0 - 0.3, y0 + 0.2), $P_0$)
// content((x1 + 0.3, y1), $P$)
// content((1.8, f(1.8)), $f(x)$, anchor: "west", padding: .1)
// content((2.1, 3.5), [Sekante], fill: white, padding: .1)
// })
// #import "@preview/cetz:0.4.2"
// #align(center,
// cetz.canvas({
// // import cetz.plot
// import cetz.palette
// import cetz.draw: *
// plot.plot(size: (5,5),
// name: "plot",
// x-tick-step: 2,
// x-minor-tick-step: 1,
// y-tick-step: 6,
// y-minor-tick-step: 1,
// axis-style: "school-book", {
// plot.add(domain: (-2.5, 2.5),
// x => (4-calc.pow(x, 2)),
// style: palette.tango-light)
// plot.add(domain: (-2.5, 2.5),
// x => (4-2*x),
// style: palette.tango-light)
// plot.add-fill-between(domain: (0, 2),
// x => (4-calc.pow(x, 2)),
// x => (4-2*x),
// style: palette.tango-light)
// plot.add(((0,4), (2,0)),
// mark: "o",
// mark-style: (stroke: none, fill: black),
// style: (stroke: none))
// plot.add-anchor("pt1", (2,5))
// plot.add-anchor("pt2", (-2,5.5))
// plot.add-anchor("parab", (1, 4-calc.pow(1, 2)+0.2))
// plot.add-anchor("rline", (-1.5, 4-2*(-1.5)-0.2))
// })
// content("plot.pt1", [$y=4-2x^2$], anchor: "south", name: "prb")
// line("plot.parab", "prb", mark: (start: ">"))
// content("plot.pt2", [$y=4-2x$], anchor: "north", name: "curve2")
// line("plot.rline", "curve2", mark: (start: ">"))
// })
// )
// #align(center,
// cetz.canvas({
// // import cetz.plot
// // import cetz.palette
// import cetz.draw: *
// plot.plot(
// size: (6,6),
// name: "plot",
// x-tick-step: none,
// y-tick-step: none,
// x-label: $x$,
// y-label: $y$,
// x-ticks: ((0.5, $1/2$),(1.25, $x$),),
// y-ticks: ((0.25, $1/4$),(1.5625, $x^2$),),
// axis-style: "school-book",
// plot.add(
// domain: (-1.3, 1.8),
// x => (calc.pow(x, 2)),
// )
// )}))
// #import "@preview/cetz:0.4.2"
// #import "@preview/cetz-plot:0.1.3": plot
// #cetz.canvas({
// //import cetz.plot
// //import cetz.palette
// import cetz.draw: *
// plot.plot(
// size: (6, 6),
// x-tick-step: none,
// y-tick-step: none,
// axis-style: "school-book",
// x-label: $x$,
// y-label: $y$,
// x-ticks: (
// (0.5, $1/2$),
// (1.25, $x$),
// ),
// y-ticks: (
// (0.25, $1/4$),
// (1.5625, $x^2$),
// ),
// {
// let f = x => calc.pow(x, 2)
// // Definition der Punkte
// let x0 = 0.5
// let y0 = f(x0)
// let x1 = 1.25
// let y1 = f(x1)
// // Berechnung der Steigung m = (y1 - y0) / (x1 - x0)
// let m = (y1 - y0) / (x1 - x0)
// // Sekantenfunktion: s(x) = m * (x - x0) + y0
// let s = x => m * (x - x0) + y0
// // 1. Die Parabel
// plot.add(f, domain: (-1.3, 1.8), label: $f(x) = x^2$)
// // 2. Die Sekante (etwas weiter gezeichnet für die Optik)
// plot.add(s, domain: (0, 2), style: (stroke: blue))
// // 3. Die Punkte markieren
// plot.add(((x0, y0),), mark: "o", label: $P_0$)
// plot.add(((x1, y1),), mark: "o", label: $P$)
// // 4. Hilfslinien (gestrichelt)
// plot.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.5pt)))
// plot.add(((x1, 0), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.5pt)))
// plot.add(((x0, y0), (x1, y0)), style: (stroke: ( paint: gray.darken(80%), thickness: 0.5pt)))
// plot.add-anchor("pt1", (2,5))
// }
// )
// // content("plot.x", [asdf])
// })
#import "@preview/cetz:0.4.2"
#import "@preview/cetz-plot:0.1.3": plot
#cetz.canvas({
import cetz.draw: *
plot.plot(
//definitionen
{
//berechnungen und plot
}
)
})
#import "@preview/cetz:0.4.2"
#import "@preview/cetz-plot:0.1.3": plot
#cetz.canvas(length: 1.25cm,{
import cetz.draw: *
set-style(
axes: (
// Basisstil beibehalten
stroke: (thickness: 0.5pt),
// x-Achse: stealth-Pfeil am Ende
x: (mark: (end: "stealth", fill: black)),
// y-Achse: stealth-Pfeil am Ende
y: (mark: (end: "stealth", fill: black)),
),
)
plot.plot(
//definitionen
name: "plot",
size: (6, 6),
x-tick-step: none,
y-tick-step: none,
axis-style: "school-book",
x-label: $x$,
y-label: $y$,
x-ticks: ((0.5, $1/2$),(1.25, $x$),),
y-ticks: ((0.25, $1/4$),(1.5625, $x^2$),),
{
//berechnungen und plot
let f = x => calc.pow(x, 2)
let x0 = 0.5
let y0 = f(x0)
let x1 = 1.25
let y1 = f(x1)
// Berechnung der Steigung m = (y1 - y0) / (x1 - x0)
let m = (y1 - y0) / (x1 - x0)
// Sekantenfunktion: s(x) = m * (x - x0) + y0
let s = x => m * (x - x0) + y0
let x1_1 = x1 + 0.1
let x0_1 = x0 - 0.2
let y0_1 = y0 + 0.2
let x2 = ((x1 - x0)/2) + x0
let y3 = ((y1 - y0)/2) +y0
plot.add(x => calc.pow(x, 2), domain: (-1.4, 1.8))
//Sekante
plot.add(s, domain: (0.3, 1.7), style: (stroke: red))
plot.add-anchor("pt1", (-1.4,y1))
plot.add-anchor("P", (x1_1,y1))
plot.add-anchor("P0", (x0_1,y0_1))
plot.add-anchor("F1", (x2,0.14))
plot.add-anchor("F2", (x1+0.1,y3))
plot.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((x1, 0), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((0, y1), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((0, y0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((x0, y0), (x1, y0)), style: (stroke: ( paint: gray.darken(80%), thickness: 0.5pt)))
plot.add(((x1, y0), (x1, y1)), style: (stroke: ( paint: gray.darken(80%), thickness: 0.5pt)))
plot.add(((x0, y0),), mark: "o")
plot.add(((x1, y1),), mark: "o")
}
)
//Der Plot muss einen Namen haben
content("plot.pt1", text(0.85em)[$y=x^2$], anchor: "east", name: "pt")
content("plot.P", text(0.75em)[$P$], anchor: "west", name: "p")
content("plot.P0", text(0.75em)[$P_0$], anchor: "west", name: "p0")
content("plot.F1", text(0.75em)[$x- 1/2$], anchor: "center", name: "f1")
content("plot.F2", text(0.75em)[$x^2- 1/4$], anchor: "west", name: "f2")
})
#import "@preview/cetz:0.4.2"
#import "@preview/cetz-plot:0.1.3": plot
#cetz.canvas({
import cetz.draw: *
set-style(
axes: (
// Basisstil beibehalten
stroke: (thickness: 0.5pt),
// x-Achse: stealth-Pfeil am Ende
x: (mark: (end: "stealth", fill: black)),
// y-Achse: stealth-Pfeil am Ende
y: (mark: (end: "stealth", fill: black)),
),
)
plot.plot(
name: "plot",
size: (5, 5),
x-tick-step: none,
y-tick-step: none,
axis-style: "school-book",
x-label: $x$,
y-label: $y$,
x-ticks: ((0.5, $1/2$),),
y-ticks: ((1, $1$),),
//definitionen
{
let f = x => if x != 0.5 { (calc.pow(x, 2) - 0.25) / (x - 0.5) } else { none }
let x0 = 0.5
let y0 = 1
plot.add(f, domain: (-0.6, 0.75), style: (stroke: blue))
plot.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((0, y0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((x0, y0),), mark: "o")
plot.add-anchor("F1", (-.7,0.5))
plot.add-anchor("F2", (-.7,0.35))
}
)
content("plot.F1", text(0.85em)[$y=(x^2-1/4)/(x-1/2)$], anchor: "west", name: "pt")
content("plot.F2", text(0.85em)[$(x eq.not 1/2)$], anchor: "west", name: "pt")
})
#import "@preview/cetz:0.4.2"
#import "@preview/cetz-plot:0.1.3": plot
#cetz.canvas({
import cetz.draw: *
plot.plot(
//definitionen
{
//berechnungen und plot
}
)
})
#import "@preview/cetz:0.4.1"
#import "@preview/cetz-plot:0.1.2"
#cetz.canvas({
import cetz.draw: *
import cetz-plot: *
let f = x => (calc.pow(x,3)+0.5)
let x1 = 0.35
let x3 = 0.5
let x0 = 0.7
let x2 = 0.8
let y1 = f(x1)
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: ((x1, $x_1$),(x3, $x_3$),(x0, $x_0$),(x2, $x_2$),),
y-ticks: ((f(x1), $f(x_1)$),(f(x2), $f(x_2)$),(f(x0), $g$),(f(x3), $f(x_3)$)), {
plot.add(domain: (0.25, 1), f, style: (stroke: red))
// Hilfslinie damit Koordinatensystem nicht verrutscht
plot.add(((0, 0), (0, 0.1)), style: (stroke: none))
//circle((x1, y1), radius: 0.05, fill: black)
plot.add(((x1, 0), (x1, f(x1))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((0, f(x1)), (x1, f(x1))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((x3, 0), (x3, f(x3))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((0, f(x3)), (x3, f(x3))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((x0, 0), (x0, f(x0))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((0, f(x0)), (x0, f(x0))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((x2, 0), (x2, f(x2))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((0, f(x2)), (x2, f(x2))), style: (stroke: (dash: "dashed", paint: gray, thickness: 1pt)))
plot.add(((x1, f(x1)),), mark: "o", mark-style:(stroke: (paint: black, thickness: 0.75pt), fill: black))
plot.add(((x3, f(x3)),), mark: "o", mark-style:(stroke: (paint: black, thickness: 0.75pt), fill: black))
plot.add(((x0, f(x0)),), mark: "o", mark-style:(stroke: (paint: black, thickness: 0.75pt), fill: white))
plot.add(((x2, f(x2)),), mark: "o", mark-style:(stroke: (paint: black, thickness: 0.75pt), fill: black))
plot.add-anchor("F", (x2 + 0.1,f(x2)))
})
content("plot.F", text(0.85em)[$y=x^2$], anchor: "west", name: "pt")
})
#import "@preview/cetz:0.4.2"
#align(center,
cetz.canvas({
import cetz-plot: *
import cetz.palette
import cetz.draw: *
plot.plot(size: (5,5),
name: "plot",
x-tick-step: 2,
x-minor-tick-step: 1,
y-tick-step: 2,
y-minor-tick-step: 1,
axis-style: "school-book", {
plot.add(domain: (-1, 2.5),
x => x - 1,
style: (color: red))
plot.add(domain: (-1, 2.5),
x => x - 1 + calc.exp(-x),
style: (color: yellow))
plot.add(domain: (-1, 2.5),
x => x - 1 - calc.exp(-x),
style: (color: red))
plot.add-anchor("pt1", (1,1.3))
plot.add-anchor("pt2", (1.8,-2))
plot.add-anchor("exp1", (1, calc.exp(-1)+0.2))
plot.add-anchor("exp2", (0.5, 0.5-1-calc.exp(-0.58)-0.2))
})
content("plot.pt1", [$y=t-1+e^(-t)$], anchor: "south", name: "prb")
line("plot.exp1", "prb", mark: (start: ">"))
content("plot.pt2", [$y=t-1-e^(-t)$], anchor: "north", name: "curve2")
line("plot.exp2", "curve2", mark: (start: ">"))
})
)
/////////////////////////////
#cetz.canvas(length: 1.25cm,{
import cetz.draw: *
set-style(
axes: (
// Basisstil beibehalten
stroke: (thickness: 0.5pt),
// x-Achse: stealth-Pfeil am Ende
x: (mark: (end: "stealth", fill: black)),
// y-Achse: stealth-Pfeil am Ende
y: (mark: (end: "stealth", fill: black)),
),
)
plot.plot(
//definitionen
name: "plot",
size: (6, 10),
x-tick-step: none,
y-tick-step: none,
axis-style: "school-book",
x-label: $x$,
y-label: $y$,
x-ticks: ((0.5, $1/2$),(1.25, $x$),),
y-ticks: ((0.25, $1/4$),(1.5625, $x^2$),),
{
//berechnungen und plot
//let f = x => calc.pow(x, 2)
//let g = x => calc.pow(x - 2,3)
//let h = x => -1 *calc.pow(0.1 * g(x) -2,2)
// -(0.1(x-2)^(3)-2)^(2)+6
let f = x => -1 * (calc.pow(0.1 * calc.pow((x - 2),3) -2,2)) - 0.2
let x0 = 0.5
let y0 = f(x0)
let x1 = 1.25
let y1 = f(x1)
// Berechnung der Steigung m = (y1 - y0) / (x1 - x0)
let m = (y1 - y0) / (x1 - x0)
// Sekantenfunktion: s(x) = m * (x - x0) + y0
let s = x => m * (x - x0) + y0
let x1_1 = x1 + 0.1
let x0_1 = x0 - 0.2
let y0_1 = y0 + 0.2
let x2 = ((x1 - x0)/2) + x0
let y3 = ((y1 - y0)/2) +y0
plot.add(f, samples: 300, domain: (1,3))
//plot.add(x => calc.pow(x, 2), domain: (0.5, 4))
//Sekante
plot.add-anchor("pt1", (-1.4,y1))
plot.add-anchor("P", (x1_1,y1))
plot.add-anchor("P0", (x0_1,y0_1))
plot.add-anchor("F1", (x2,0.14))
plot.add-anchor("F2", (x1+0.1,y3))
plot.add(((x0, 0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((x1, 0), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((0, y1), (x1, y1)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((0, y0), (x0, y0)), style: (stroke: (dash: "dashed", paint: gray, thickness: 0.75pt)))
plot.add(((x0, y0), (x1, y0)), style: (stroke: ( paint: gray.darken(80%), thickness: 0.5pt)))
plot.add(((x1, y0), (x1, y1)), style: (stroke: ( paint: gray.darken(80%), thickness: 0.5pt)))
plot.add(((x0, y0),), mark: "o")
plot.add(((x1, y1),), mark: "o")
}
)
//Der Plot muss einen Namen haben
content("plot.pt1", text(0.85em)[$y=x^2$], anchor: "east", name: "pt")
content("plot.P", text(0.75em)[$P$], anchor: "west", name: "p")
content("plot.P0", text(0.75em)[$P_0$], anchor: "west", name: "p0")
content("plot.F1", text(0.75em)[$x- 1/2$], anchor: "center", name: "f1")
content("plot.F2", text(0.75em)[$x^2- 1/4$], anchor: "west", name: "f2")
})
#import "@preview/cetz:0.4.2": canvas
#import "@preview/cetz-plot:0.1.3": plot
#let theta = 45 * calc.pi / 180
#let c = calc.cos(theta)
#let s = calc.sin(theta)
#canvas({
import cetz.draw: *
plot.plot(
size: (12, 8),
axis-style: "school-book",
x-min: -8, x-max: 12,
y-min: -3, y-max: 9,
x-tick-step: 2,
y-tick-step: 1,
// Original
plot.add(x => {
let u = x - 2
calc.pow( -(0.1 * calc.pow(u, 3) - 2), 2) + 6
}, domain: (0, 4),
style: (stroke: (paint: blue, thickness: 1pt)), samples: 300),
// Rotierter Graph: Sampling über x_old und Rotation
plot.add(x_old => {
let u = x_old - 2
let y_old = calc.pow( -(0.1 * calc.pow(u, 3) - 2), 2) + 6
let x_new = x_old * c - y_old * s
let y_new = x_old * s + y_old * c
(x_new, y_new)
}, domain: (-1, 9),
style: (stroke: (paint: red, thickness: 3pt))),
)
})
#import "@preview/cetz:0.4.2": canvas
#import "@preview/cetz-plot:0.1.3": plot
#let theta = -45 * calc.pi / 180 // 45 Grad für deutlichen Effekt
#let c = calc.cos(theta)
#let s = calc.sin(theta)
#canvas({
import cetz.draw: *
plot.plot(
size: (14, 10),
axis-style: "school-book",
x-min: -10, x-max: 15,
y-min: -5, y-max: 12,
x-tick-step: 2,
y-tick-step: 2,
// Original
plot.add(x => {
let u = x - 2
calc.pow( -(0.1 * calc.pow(u, 3) - 2), 2) + 6
}, domain: (-3, 9),
style: (stroke: (paint: blue, thickness: 3pt))),
// Rotierter Graph: Erweiterte Domain für x_old
plot.add(x_old => {
let u = x_old - 2
let y_old = calc.pow( -(0.1 * calc.pow(u, 3) - 2), 2) + 6
x_old * c - y_old * s // Plotte x_new vs x_old (parametrisch projiziert)
}, domain: (-5, 11),
style: (stroke: (paint: red, thickness: 3pt))),
// Y_new vs x_old für vollständige Rotation (grün)
plot.add(x_old => {
let u = x_old - 2
let y_old = calc.pow( -(0.1 * calc.pow(u, 3) - 2), 2) + 6
x_old * s + y_old * c // y_new
}, domain: (-5, 11),
style: (stroke: (paint: green, thickness: 2pt))),
)
})
#import "@preview/cetz:0.4.2": canvas
#import "@preview/cetz-plot:0.1.3": plot
#let theta = 15deg
#let f = x => {
let u = x - 7
calc.pow(-(0.005 * calc.pow(u, 3) + 2), 2)
}
#canvas({
import cetz.draw: *
// Original
plot.plot(
size: (14, 10),
axis-style: "school-book",
x-min: -12, x-max: 16,
y-min: -8, y-max: 14,
x-tick-step: 4,
y-tick-step: 2,
{
plot.add(
domain: (-4, 12),
f,samples: 400,
style: (stroke: (paint: blue, thickness: 3pt)),
)
}
)
// Rotierter zweiter Graph, ohne zweite Achsen
group({
rotate(theta, origin: (0, 0))
plot.plot(
size: (14, 10),
axis-style: none,
x-min: -12, x-max: 16,
y-min: -8, y-max: 14,
{
plot.add(
domain: (-4, 12),
f, samples: 400,
style: (stroke: (paint: red, thickness: 3pt)),
)
}
)
})
})
//orig
#import "@preview/cetz:0.4.2": canvas
#import "@preview/cetz-plot:0.1.3": plot
#let theta = 45deg
#let f = x => {
let u = x - 2
calc.pow(-(0.1 * calc.pow(u, 3) - 2), 2) + 6
}
#canvas({
import cetz.draw: *
// Original
plot.plot(
size: (14, 10),
axis-style: "school-book",
x-min: -12, x-max: 16,
y-min: -8, y-max: 14,
x-tick-step: 4,
y-tick-step: 2,
{
plot.add(
domain: (-4, 12),
f,
style: (stroke: (paint: blue, thickness: 3pt)),
)
}
)
// Rotierter zweiter Graph, ohne zweite Achsen
group({
rotate(theta, origin: (0, 0))
plot.plot(
size: (14, 10),
axis-style: none,
x-min: -12, x-max: 16,
y-min: -8, y-max: 14,
{
plot.add(
domain: (-4, 12),
f,
style: (stroke: (paint: red, thickness: 3pt)),
)
}
)
})
})