Compare commits
4 Commits
0b943f4e84
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 6f5f2f0992 | |||
| 843fda0210 | |||
| cfc360f1fc | |||
| 6c17e99af5 |
718
Band2/Band2.typ
718
Band2/Band2.typ
@@ -1,6 +1,3 @@
|
|||||||
#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/marge:0.1.0": sidenote
|
||||||
|
|
||||||
#import "@preview/itemize:0.2.0" as el
|
#import "@preview/itemize:0.2.0" as el
|
||||||
@@ -9,21 +6,41 @@
|
|||||||
|
|
||||||
#import "deckblatt.typ": deckblatt
|
#import "deckblatt.typ": deckblatt
|
||||||
|
|
||||||
//#import "abhaengigkeit.typ": abhaengigkeit
|
#import "abhaengigkeit.typ": abhaengigkeit
|
||||||
|
|
||||||
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
||||||
|
|
||||||
#let def-counter = counter("definition")
|
#let def-counter = counter("definition")
|
||||||
|
|
||||||
|
// Zähler bei jedem neuen Kapi#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 "@preview/eqalc:0.1.3": *
|
||||||
|
#import "grafiken.typ": *
|
||||||
|
|
||||||
|
#import "deckblatt.typ": deckblatt
|
||||||
|
|
||||||
|
#import "abhaengigkeit.typ": abhaengigkeit
|
||||||
|
|
||||||
|
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
||||||
|
|
||||||
|
#let def-counter = counter("definition")
|
||||||
|
|
||||||
|
#let bsp-counter = counter("besipiel")
|
||||||
|
|
||||||
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||||
|
|
||||||
|
|
||||||
#let def-counter = counter("definition")
|
#let hrule = line(length: 100%)
|
||||||
|
|
||||||
// Zähler bei jedem neuen Kapitel zurücksetzen
|
// Zähler bei jedem neuen Kapitel zurücksetzen
|
||||||
#show heading.where(level: 1): it => {
|
#show heading.where(level: 1): it => {
|
||||||
it
|
it
|
||||||
def-counter.update(0)
|
def-counter.update(1)
|
||||||
|
bsp-counter.update(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
#let definition(title: none, body, label: none) = context {
|
#let definition(title: none, body, label: none) = context {
|
||||||
@@ -46,12 +63,42 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#let beispiel(title: none, body, label: none) = context {
|
||||||
|
bsp-counter.step()
|
||||||
|
|
||||||
|
let h1-num = counter(heading).at(here()).first()
|
||||||
|
let b-num = bsp-counter.at(here()).first()
|
||||||
|
let full-num = [#h1-num.#b-num]
|
||||||
|
|
||||||
|
// Die Figure wird erstellt und das Label direkt angehängt
|
||||||
|
[
|
||||||
|
#figure(
|
||||||
|
block(width: 100%, align(left)[
|
||||||
|
#hrule
|
||||||
|
*Beispiel #full-num*: #if title != none [(#title)] #body
|
||||||
|
#hrule]),
|
||||||
|
kind: "beispiel",
|
||||||
|
supplement: [B.],
|
||||||
|
numbering: _ => full-num,
|
||||||
|
) #label
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||||
#show heading.where(level: 1): it => {
|
#show heading.where(level: 1): it => {
|
||||||
it
|
it
|
||||||
def-counter.update(1)
|
def-counter.update(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#show figure.caption: it => {
|
||||||
|
it.supplement // "Abbildung"
|
||||||
|
[ ] // Ein Leerzeichen statt des Doppelpunkts
|
||||||
|
context it.counter.display(it.numbering)
|
||||||
|
[ ] // Noch ein Leerzeichen vor dem Text
|
||||||
|
it.body // Der eigentliche Text der Caption
|
||||||
|
}
|
||||||
|
|
||||||
#let sn-base = sidenote
|
#let sn-base = sidenote
|
||||||
|
|
||||||
@@ -67,9 +114,6 @@
|
|||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//#import "definitionen.typ": *
|
|
||||||
|
|
||||||
#set text(
|
#set text(
|
||||||
font: "Lato", //Serifenlose Schrift
|
font: "Lato", //Serifenlose Schrift
|
||||||
size: 8.5pt,
|
size: 8.5pt,
|
||||||
@@ -91,9 +135,10 @@
|
|||||||
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
|
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
|
||||||
// Einfach die Funktion aufrufen
|
// Einfach die Funktion aufrufen
|
||||||
#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(
|
||||||
width:162mm,
|
width:162mm,
|
||||||
height: 230mm,
|
height: 230mm,
|
||||||
@@ -105,6 +150,7 @@
|
|||||||
leading: 0.55em,
|
leading: 0.55em,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
#set page(
|
#set page(
|
||||||
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||||
margin: (
|
margin: (
|
||||||
@@ -115,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,
|
||||||
@@ -122,362 +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]
|
||||||
|
|
||||||
#let mynode(pos, zahl, inhalt, name) = {
|
//#scale(factor: 90%, abhaengigkeit)
|
||||||
node(
|
//#abhaengigkeit
|
||||||
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)
|
|
||||||
}
|
|
||||||
|
|
||||||
#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,
|
|
||||||
),
|
|
||||||
)
|
|
||||||
|
|
||||||
#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 })
|
||||||
@@ -513,7 +209,7 @@ edge(
|
|||||||
|
|
||||||
#set outline(indent: auto)
|
#set outline(indent: auto)
|
||||||
|
|
||||||
|
#show figure.where(kind: image): set figure(supplement: [Bild]) //Abbildung zu Bild
|
||||||
|
|
||||||
#set page(
|
#set page(
|
||||||
header: context {
|
header: context {
|
||||||
@@ -564,6 +260,7 @@ edge(
|
|||||||
|
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
#show selector(<nonumber>): set heading(numbering: none)
|
#show selector(<nonumber>): set heading(numbering: none)
|
||||||
|
|
||||||
= Vorwort <nonumber>
|
= Vorwort <nonumber>
|
||||||
@@ -611,22 +308,287 @@ Die mathematischen Möglichkeiten reichen jedoch über die unmittelbare Anwendba
|
|||||||
|
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
|
|
||||||
= Grenzwerte
|
#set math.equation(
|
||||||
|
numbering: n => numbering("(2.1)", n),
|
||||||
|
supplement: none,
|
||||||
|
)
|
||||||
|
#let numbered_eq(label_name, content) = [
|
||||||
|
#math.equation(
|
||||||
|
block: true,
|
||||||
|
content
|
||||||
|
)
|
||||||
|
#label(label_name)
|
||||||
|
]
|
||||||
|
#show figure: set figure(numbering: n => {
|
||||||
|
let chap = counter(heading).get().at(0)
|
||||||
|
[#chap.#n]
|
||||||
|
})
|
||||||
|
|
||||||
//== Grenzwert einer Funktion für $\boldsymbol{x} \rightarrow \boldsymbol{x}_0$
|
|
||||||
// 2.1.1. Definition des Grenzwertes einer Funktion für $\boldsymbol{x} \rightarrow \boldsymbol{x}_0$
|
|
||||||
|
|
||||||
// Im folgenden bedeutet „Funktion“ stets „reellwertige Funktion einer reellen Variablen".
|
|
||||||
|
|
||||||
// Als Vorbereitung auf den Grenzwertbegriff für Funktionen behandeln wir das
|
= Grenzwerte *$x arrow.r x_0$*
|
||||||
// Beispiel 2.1: An die Parabel $y=x^2$ werde die Sekante durch den festen Kurvenpunkt $P_0\left(\frac{1}{2}, \frac{1}{4}\right)$ und den variablen Kurvenpunkt $P\left(x, x^2\right)$ gelegt (s. Bild 2.1). Der Anstieg der Sekante ist eine Funktion $f$ von $x$ :
|
|
||||||
|
|
||||||
// $$
|
== Grenzwert einer Funktion für *$x arrow.r x_0$*
|
||||||
// f(x)=\frac{x^2-\frac{1}{4}}{x-\frac{1}{2}} \quad\left(x \neq \frac{1}{2}\right) .
|
|
||||||
// $$
|
|
||||||
|
|
||||||
$x arrow.r x_0$
|
Im folgenden bedeutet "Funktion" stets "reellwertige Funktion einer reellen Variablen".
|
||||||
|
|
||||||
|
Als Vorbereitung auf den Grenzwertbegriff für Funktionen behandeln wir das
|
||||||
|
|
||||||
|
#beispiel[An die Parabel $y=x^2$ werde die Sekante durch den festen Kurvenpunkt $P_0(1/2, 1/4)$ und den variablen Kurvenpunkt $P(x, x^2)$ gelegt (s. @abb1). Der Anstieg der Sekante ist eine Funktion $f$ von $x$:
|
||||||
|
|
||||||
|
#table(
|
||||||
|
columns: (1fr, 1fr),
|
||||||
|
column-gutter: 1em,
|
||||||
|
stroke: none,
|
||||||
|
align: bottom + center,
|
||||||
|
[
|
||||||
|
#figure(
|
||||||
|
scale(x: 50%, y: 50%, reflow: true, b2_1),
|
||||||
|
caption: [],
|
||||||
|
) <abb1>
|
||||||
|
],
|
||||||
|
[
|
||||||
|
#figure(
|
||||||
|
scale(x: 50%, y: 50%, reflow: true, b2_2),
|
||||||
|
caption: [],
|
||||||
|
) <abb2>
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
|
#numbered_eq("eq21", $ f(x)=(x^2 - 1/4)/(x - 1/2) $)
|
||||||
|
|
||||||
|
Auf Grund der Anschauung wird man vermuten, daß bei "Annäherung" von $x$ an die Stelle $ 1/2$ die Sekante in eine gewisse "Grenzlage" übergeht, also auch ihr Anstieg ( @eq21 ) einen gewissen "Grenzwert“ annimmt. Betrachten wir also die Funktion $f$. An der Stelle $x=1/2$ ist $f$ nicht definiert. Für $x eq.not 1/2$ gilt
|
||||||
|
|
||||||
|
#numbered_eq("eq22", $ f(x) = ((x - 1/2) (x + 1/2)) / (x - 1/2) = x + 1/2 quad quad (x eq.not 1/2)$)
|
||||||
|
|
||||||
|
Die Bildkurve von $f$ ist in @abb2 dargestellt #footnote[In @abb2 soll der kleine Kreis um den Punkt $(1)/2, 1)$ andeuten, daß dieser Punkt nicht zur Bildkurve von $f$ gehört. Analog wird in den folgenden Beispielen verfahren.]. Die Anschauung legt jetzt etwa die folgende Formulierung nahe: „Für $x$ gegen $1/2$ strebt $f(x)$ gegen $1$."
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
Unsere Aufgabe wird es nun sein, einer solchen Formulierung einen von der Anschauung unabhängigen, wohldefinierten Sinn zu geben.
|
||||||
|
|
||||||
|
Soll allgemein das Verhalten einer Funktion $f$ bei "Annäherung" der unabhängigen Variablen $x$ an eine reelle Zahl $x_0$ untersucht werden, so ist es naheliegend, die Variable $x$ Zahlenfolgen $(x_n)$ mit folgenden Eigenschaften durchlaufen zu lassen:
|
||||||
|
|
||||||
|
|
||||||
|
// #align ohne Nummerierung
|
||||||
|
#align(left,[
|
||||||
|
#set math.equation(numbering: none)
|
||||||
|
$
|
||||||
|
& ("E 1") &quad& x_n in D(f) ^#footnote[$D(f)$ bezeichnet den Definitionsbereich von $f$.] &quad& " für alle" n &quad& (n=1,2,3,dots) \
|
||||||
|
& ("E 2") && x_n eq.not x_0 && " für alle" n \
|
||||||
|
& ("E 3") && lim_(x->n)x_n = x_0
|
||||||
|
$])
|
||||||
|
|
||||||
|
Die Eigenschaft (E 2) bedeutet, daß das Verhalten von $f$ an der Stelle $x_0$ selbst nicht in Betracht gezogen wird. Daher braucht $f$ auch nur in einer sog. _punktierten Umgebung_ von $x_0$ definiert zu sein. Das ist, mit einem $c>0$, die Menge aller $x$ mit
|
||||||
|
#v(3mm)
|
||||||
|
|
||||||
|
#figure(
|
||||||
|
{
|
||||||
|
set math.equation(numbering: none)
|
||||||
|
scale(x: 70%, y: 70%, reflow: true, b2_3)
|
||||||
|
},
|
||||||
|
caption: [],
|
||||||
|
) <abb3>
|
||||||
|
|
||||||
|
Das Verhalten von $f$ in einer punktierten Umgebung von $x_0$ wird nun durch das Verhalten der Folge der Funktionswerte $f(x_n)$ charakterisiert.
|
||||||
|
|
||||||
|
|
||||||
|
#definition(label: <D.21>)[Die #snl([@D.21]) Funktion $f$ sei (mindestens) in einer punktierten Umgebung von $x_0$ definiert. Eine Zahl $g$ heißt *Grenzwert von $f$ für $x$ gegen $x_0$*, in Zeichen
|
||||||
|
#math.equation(
|
||||||
|
block: true,
|
||||||
|
numbering: none,
|
||||||
|
$ lim_(x->x_0)f(x) = g " oder " f(x)->g " für " x->x_0 $
|
||||||
|
)
|
||||||
|
wenn für je de Folge ( $x_n$ ) mit den Eigenschaften $(E" "1)$, $(E" "2)$, $(E" "3)$ die Folge ( $f(x_n)$ ) gegen $g$ konvergiert.]
|
||||||
|
|
||||||
|
Damit ist der Begriff des Grenzwertes einer Funktion auf den Grenzwertbegriff für Zahlenfolgen zurückgeführt.
|
||||||
|
|
||||||
|
In @abb4 haben wir die ersten drei Glieder einer Folge ( $x_n$ ) und der zugehörigen Folge $f\(x_n))$ eingezeichnet.
|
||||||
|
|
||||||
|
#figure(
|
||||||
|
{
|
||||||
|
set math.equation(numbering: none)
|
||||||
|
scale(x: 70%, y: 70%, reflow: true, b2_4)
|
||||||
|
},
|
||||||
|
caption: [],
|
||||||
|
) <abb4>
|
||||||
|
|
||||||
|
#beispiel[Gesucht ist der Grenzwert der Funktion
|
||||||
|
#math.equation(
|
||||||
|
block: true,
|
||||||
|
numbering: none,
|
||||||
|
$ f(x)=(x^2-1/4)/(x-1/2) " für " x -> 1/2. $
|
||||||
|
)
|
||||||
|
|
||||||
|
Es sei $(x_n)$ eine beliebige Folge mit
|
||||||
|
|
||||||
|
#numbered_eq("eq23", $ x_n eq.not 1/2 " für alle " n " und " lim_(n->infinity)x_n = 1/2 $ )
|
||||||
|
|
||||||
|
Unter Verwendung von @eq22 und bekannten Grenzwertsätzen für Zahlenfolgen folgt dann
|
||||||
|
|
||||||
|
#numbered_eq("eq24", $ lim_(n->infinity) f(x_n)=lim_(n->infinity}(x_n+1/2)=lim_(n->infinity) x_n + lim_(n->infinity) 1/2 = 1/2 + 1/2 =1 $)
|
||||||
|
|
||||||
|
|
||||||
|
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,
|
||||||
|
$$
|
||||||
|
|
||||||
|
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$ ).
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//{n \rightarrow \infty} x_n+\lim _{n \rightarrow \infty} \frac{1}{2}=\frac{1}{2}+\frac{1}{2}=1$
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
$$
|
||||||
|
\lim _{x \rightarrow x_0} f(x)=g \quad \text { oder } \quad f(x) \rightarrow g \quad f \ddot{u} r \quad x \rightarrow x_0,
|
||||||
|
$$
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
*/
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
|
||||||
#import "@preview/cetz-plot:0.1.3": plot
|
#import "@preview/cetz-plot:0.1.3": plot
|
||||||
|
|
||||||
@@ -759,9 +721,6 @@ $x arrow.r x_0$
|
|||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#import "@preview/simple-plot:0.3.0": plot
|
#import "@preview/simple-plot:0.3.0": plot
|
||||||
|
|
||||||
//#set page(width: auto, height: auto, margin: 0.5cm)
|
//#set page(width: auto, height: auto, margin: 0.5cm)
|
||||||
@@ -794,4 +753,5 @@ $x arrow.r x_0$
|
|||||||
(fn: x => calc.pow(2, x), stroke: blue + 1.5pt, label: $2^x$),
|
(fn: x => calc.pow(2, x), stroke: blue + 1.5pt, label: $2^x$),
|
||||||
(fn: x => calc.pow(3, x), stroke: red + 1.5pt, label: $3^x$),
|
(fn: x => calc.pow(3, x), stroke: red + 1.5pt, label: $3^x$),
|
||||||
)
|
)
|
||||||
|
*/
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,72 @@
|
|||||||
|
|
||||||
|
#import "@preview/cetz:0.4.2"
|
||||||
|
#import "@preview/cetz-plot:0.1.3": plot
|
||||||
|
|
||||||
|
#cetz.canvas(length: 1.25cm,{
|
||||||
|
import cetz.draw: *
|
||||||
|
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")
|
||||||
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,48 @@
|
|||||||
|
#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")
|
||||||
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,135 @@
|
|||||||
|
#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),
|
||||||
|
ymin: -2,
|
||||||
|
ymax: 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, $0$),),
|
||||||
|
{
|
||||||
|
//berechnungen und plot
|
||||||
|
|
||||||
|
|
||||||
|
plot.add(x => (calc.pow(x, 2) -2), domain: (-1.4, 1.8))
|
||||||
|
plot.add(x => (calc.pow(x, 2) +2), domain: (-1.4, 1.8))
|
||||||
|
}
|
||||||
|
)
|
||||||
|
})
|
||||||
|
|
||||||
|
#let linspace(start, end, n)=range(0,n).map(x => x / n * (end - start) + start)
|
||||||
|
|
||||||
|
#cetz.canvas({
|
||||||
|
import cetz.draw: *
|
||||||
|
line((-5,0), (5,0), mark: (end: "stealth", fill: black))
|
||||||
|
content((), block(inset: 0.2em)[$x$], anchor: "west")
|
||||||
|
line((0,-5), (0,5), mark: (end: "stealth", fill: black))
|
||||||
|
content((), block(inset: 0.2em)[$p^0$], anchor: "east")
|
||||||
|
let pe = linspace(-2, 2, 200).map(x => (calc.pow(x,2) +2, x))
|
||||||
|
line(..pe, stroke: olive)
|
||||||
|
// let draw-point(pos, text, color, anchor) = {
|
||||||
|
// circle(pos, radius: 0.1, fill: color, stroke: none)
|
||||||
|
// content((), block(inset: 0.3em)[#text], anchor: anchor)
|
||||||
|
//}
|
||||||
|
// draw-point((0, 3), "(a)", red, "east")
|
||||||
|
// draw-point((0, -3), "(b)", blue, "east")
|
||||||
|
// draw-point((1, 1), "(c)", red, "south-east")
|
||||||
|
// draw-point((1, -1), "(d)", blue, "north-east")
|
||||||
|
// draw-point((3, 0), "(e)", olive, "north-east")
|
||||||
|
// draw-point((0, 0), "(f)", olive, "east")
|
||||||
|
})
|
||||||
|
|
||||||
|
#let linspace(start, end, n)=range(0,n).map(x => x / n * (end - start) + start)
|
||||||
|
|
||||||
|
#cetz.canvas({
|
||||||
|
import cetz.draw: *
|
||||||
|
line((0,0), (5,0), mark: (end: "stealth", fill: black))
|
||||||
|
content((), block(inset: 0.2em)[$abs(bold(p))$], anchor: "west")
|
||||||
|
line((0,-5), (0,5), mark: (end: "stealth", fill: black))
|
||||||
|
content((), block(inset: 0.2em)[$p^0$], anchor: "east")
|
||||||
|
let pa = linspace(0, 4, 100).map(x => (x, calc.sqrt(9+x*x)))
|
||||||
|
line(..pa, stroke: red)
|
||||||
|
let pb = linspace(0, 4, 100).map(x => (x, -calc.sqrt(9+x*x)))
|
||||||
|
line(..pb, stroke: blue)
|
||||||
|
line((0,0), (5,5), stroke: red)
|
||||||
|
line((0,0), (5,-5), stroke: blue)
|
||||||
|
let pe = linspace(-4, 4, 100).map(x => (calc.sqrt(9+x*x), x))
|
||||||
|
line(..pe, stroke: olive)
|
||||||
|
let draw-point(pos, text, color, anchor) = {
|
||||||
|
circle(pos, radius: 0.1, fill: color, stroke: none)
|
||||||
|
content((), block(inset: 0.3em)[#text], anchor: anchor)
|
||||||
|
}
|
||||||
|
draw-point((0, 3), "(a)", red, "east")
|
||||||
|
draw-point((0, -3), "(b)", blue, "east")
|
||||||
|
draw-point((1, 1), "(c)", red, "south-east")
|
||||||
|
draw-point((1, -1), "(d)", blue, "north-east")
|
||||||
|
draw-point((3, 0), "(e)", olive, "north-east")
|
||||||
|
draw-point((0, 0), "(f)", olive, "east")
|
||||||
|
})
|
||||||
|
|
||||||
|
#import "@preview/cetz:0.3.2"
|
||||||
|
#import "@preview/cetz-plot:0.1.1"
|
||||||
|
#cetz.canvas(
|
||||||
|
{
|
||||||
|
import cetz.draw: *
|
||||||
|
import cetz-plot: *
|
||||||
|
|
||||||
|
|
||||||
|
plot.plot(
|
||||||
|
//size: (5,5),
|
||||||
|
xmin: -2cm,
|
||||||
|
xmax: 2cm,
|
||||||
|
ymin: -2cm,
|
||||||
|
ymax: 4cm,
|
||||||
|
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: ((2, $2$),(1, $1$)),
|
||||||
|
plot.add(
|
||||||
|
domain: (-5,5),
|
||||||
|
x => calc.pow(x, 2)+2
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
#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,2)+2)
|
||||||
|
plot.plot(size: (6,9), axis-style: "school-book", 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: ((2, $2$),), {
|
||||||
|
plot.add(domain: (-1.5, 1.5), f)
|
||||||
|
|
||||||
|
// Hilfslinie damit Koordinatensystem nicht verrutscht
|
||||||
|
plot.add(((0, 0), (0, 0.1)), style: (stroke: none))
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|||||||
@@ -506,6 +506,8 @@
|
|||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#import "@preview/cetz:0.4.2"
|
#import "@preview/cetz:0.4.2"
|
||||||
#import "@preview/cetz-plot:0.1.3": plot
|
#import "@preview/cetz-plot:0.1.3": plot
|
||||||
|
|
||||||
@@ -635,3 +637,280 @@
|
|||||||
content("plot.F2", text(0.85em)[$(x eq.not 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: *
|
||||||
|
set-style(
|
||||||
|
axes: (
|
||||||
|
stroke: (thickness: 0.5pt),
|
||||||
|
x: (mark: (end: "stealth", fill: black)),
|
||||||
|
y: (mark: (end: "stealth", fill: black)),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
|
||||||
|
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))
|
||||||
|
|
||||||
|
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)))
|
||||||
|
|
||||||
|
// 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, 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.05,f(x2)+0.1))
|
||||||
|
})
|
||||||
|
|
||||||
|
content("plot.F", text(0.85em)[$y=f(x)$], anchor: "east", 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: ">"))
|
||||||
|
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#import "@preview/cetz-plot:0.1.3": plot
|
||||||
|
|
||||||
|
#let intersection(plotA, plotB, style: (stroke: red + 2pt)) = {
|
||||||
|
let dataA = plotA.first().data
|
||||||
|
let dataB = plotB.first().data
|
||||||
|
|
||||||
|
let points = dataA.filter(x => x in dataB)
|
||||||
|
|
||||||
|
for ((i, point)) in points.enumerate() {
|
||||||
|
plot.add-anchor("i_" + str(i),point )
|
||||||
|
}
|
||||||
|
|
||||||
|
plotA
|
||||||
|
plotB
|
||||||
|
}
|
||||||
|
|
||||||
|
#canvas(
|
||||||
|
length: 1cm,
|
||||||
|
{
|
||||||
|
import draw: *
|
||||||
|
plot.plot(
|
||||||
|
name: "my_plot",
|
||||||
|
size: (5, 5),
|
||||||
|
axis-style: "school-book",
|
||||||
|
x-label: [$x$],
|
||||||
|
y-label: [$y$],
|
||||||
|
{
|
||||||
|
intersection(
|
||||||
|
plot.add(
|
||||||
|
style: (stroke: black + 1.5pt),
|
||||||
|
domain: (-1, 1),
|
||||||
|
x => calc.pow(x, 4) - 2 * calc.pow(x, 2) + 1,
|
||||||
|
),
|
||||||
|
plot.add(
|
||||||
|
style: (stroke: black + 1.5pt),
|
||||||
|
domain: (-1, 1),
|
||||||
|
x => -(calc.pow(x, 4) - 2 * calc.pow(x, 2) + 1),
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
// reference the point with {plot name}.i_{number}
|
||||||
|
line("my_plot.i_1", ((), "|-", (0,3.5)), mark: (start: ">"), name: "line")
|
||||||
|
content("line.end", [Here], anchor: "south", padding: .1)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
#let intersection(plotA, plotB, style: (stroke: red + 2pt)) = {
|
||||||
|
import draw: *
|
||||||
|
let dataA = plotA.first().data
|
||||||
|
let dataB = plotB.first().data
|
||||||
|
|
||||||
|
plot.annotate({
|
||||||
|
hide({
|
||||||
|
intersections("i", line(..plotA.first().data), line(..plotB.first().data))
|
||||||
|
})
|
||||||
|
for-each-anchor("i", (name) => {
|
||||||
|
circle("i." + name, radius: 0.05, fill: red)
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
plotA
|
||||||
|
plotB
|
||||||
|
}
|
||||||
|
|
||||||
|
#canvas(
|
||||||
|
length: 1cm,
|
||||||
|
{
|
||||||
|
import draw: *
|
||||||
|
plot.plot(
|
||||||
|
name: "plot",
|
||||||
|
size: (10, 10),
|
||||||
|
axis-style: "school-book",
|
||||||
|
x-label: [$x$],
|
||||||
|
y-label: [$y$],
|
||||||
|
{
|
||||||
|
intersection(
|
||||||
|
plot.add(
|
||||||
|
style: (stroke: black + 1.5pt),
|
||||||
|
domain: (-1, 1),
|
||||||
|
x => calc.pow(x, 4) - 2 * calc.pow(x, 2) + 1,
|
||||||
|
),
|
||||||
|
plot.add(
|
||||||
|
style: (stroke: black + 1.5pt),
|
||||||
|
domain: (-1, 1),
|
||||||
|
x => -(calc.pow(x, 4) - 2 * calc.pow(x, 2) + 0.5),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
},
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
#import "@preview/cetz:0.4.0"
|
||||||
|
#import "@preview/cetz-plot:0.1.2"
|
||||||
|
|
||||||
|
#let my-plot = cetz-plot.plot.plot.with(axis-style: "school-book")
|
||||||
|
|
||||||
|
#cetz.canvas({
|
||||||
|
import cetz.draw: *
|
||||||
|
import cetz-plot: *
|
||||||
|
set-style(
|
||||||
|
axes: (
|
||||||
|
stroke: (dash: "dotted", paint: gray),
|
||||||
|
x: (mark: (start: ">", end: ">"), padding: 1),
|
||||||
|
y: (mark: none),
|
||||||
|
tick: (stroke: gray + .5pt),
|
||||||
|
),
|
||||||
|
)
|
||||||
|
my-plot(
|
||||||
|
size: (5, 4),
|
||||||
|
y-tick-step: none,
|
||||||
|
{
|
||||||
|
plot.add(calc.sin, domain: (0, calc.pi * 2))
|
||||||
|
},
|
||||||
|
)
|
||||||
|
})
|
||||||
|
|
||||||
|
#let plot-cfg = (size: (5, 4), axis-style: "school-book")
|
||||||
|
#cetz.canvas({
|
||||||
|
import cetz.draw: *
|
||||||
|
import cetz-plot: *
|
||||||
|
plot.plot(..plot-cfg, {
|
||||||
|
plot.add(calc.sin, domain: (0, calc.pi * 2))
|
||||||
|
})
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#import "@preview/simple-plot:0.3.0": plot
|
||||||
|
|
||||||
|
//#set page(width: auto, height: auto, margin: 0.5cm)
|
||||||
|
|
||||||
|
// Showcases: major grid only, grid-label-break, axis extension, integer ticks
|
||||||
|
#plot(
|
||||||
|
xmin: -3.1, xmax: 3.1,
|
||||||
|
ymin: -1, ymax: 9,
|
||||||
|
xlabel: $x$,
|
||||||
|
ylabel: $y$,
|
||||||
|
//show-grid: "major",
|
||||||
|
(fn: x => calc.pow(x, 2), stroke: blue + 1.5pt, label: $x^2$, label-pos: 0.7, label-side: "below-right"),
|
||||||
|
)
|
||||||
|
|
||||||
|
#plot(
|
||||||
|
xmin: -2 * calc.pi, xmax: 2 * calc.pi,
|
||||||
|
ymin: -2, ymax: 2,
|
||||||
|
width: 10, height: 5,
|
||||||
|
show-grid: "major",
|
||||||
|
xtick: (-2*calc.pi, -calc.pi, 0, calc.pi, 2*calc.pi),
|
||||||
|
xtick-labels: ($-2pi$, $-pi$, $0$, $pi$, $2pi$),
|
||||||
|
(fn: x => calc.sin(x), stroke: blue + 1.2pt),
|
||||||
|
(fn: x => calc.cos(x), stroke: red + 1.2pt),
|
||||||
|
)
|
||||||
|
|
||||||
|
#plot(
|
||||||
|
xmin: -2, xmax: 5,
|
||||||
|
ymin: 0, ymax: 32,
|
||||||
|
show-grid: true,
|
||||||
|
(fn: x => calc.pow(2, x), stroke: blue + 1.5pt, label: $2^x$),
|
||||||
|
(fn: x => calc.pow(3, x), stroke: red + 1.5pt, label: $3^x$),
|
||||||
|
)
|
||||||
998
Band2/Grafiktest.typ
Normal file
998
Band2/Grafiktest.typ
Normal 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)),
|
||||||
|
)
|
||||||
|
}
|
||||||
|
)
|
||||||
|
})
|
||||||
|
})
|
||||||
360
Band2/abhaengigkeit.typ
Normal file
360
Band2/abhaengigkeit.typ
Normal file
@@ -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,
|
||||||
|
),
|
||||||
|
)
|
||||||
215
Band2/grafiken.typ
Normal file
215
Band2/grafiken.typ
Normal file
@@ -0,0 +1,215 @@
|
|||||||
|
#import "@preview/cetz:0.4.2"
|
||||||
|
#import "@preview/cetz-plot:0.1.3": plot
|
||||||
|
|
||||||
|
#let b2_1 = 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")
|
||||||
|
})
|
||||||
|
|
||||||
|
#let b2_2 = 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")
|
||||||
|
})
|
||||||
|
|
||||||
|
#let b2_3 = cetz.canvas(length: 3cm, {
|
||||||
|
import cetz.draw: *
|
||||||
|
|
||||||
|
set-style(
|
||||||
|
mark: (fill: black, scale: 2),
|
||||||
|
stroke: (thickness: 0.4pt, cap: "round"),
|
||||||
|
angle: (
|
||||||
|
radius: 0.3,
|
||||||
|
label-radius: .22,
|
||||||
|
fill: green.lighten(80%),
|
||||||
|
stroke: (paint: green.darken(50%))
|
||||||
|
),
|
||||||
|
content: (padding: 1pt)
|
||||||
|
)
|
||||||
|
|
||||||
|
//grid((-.25, -.25), (2, 2 ), step: 0.5, stroke: gray + 0.2pt)
|
||||||
|
|
||||||
|
line((0, 0.25), (3, 0.25), mark: (end: "stealth", scale: 0.8))
|
||||||
|
content((), $ x $, anchor: "west")
|
||||||
|
|
||||||
|
line((0.5,0.25),(2.5,0.25), stroke: 2pt)
|
||||||
|
|
||||||
|
circle((0.5,0.25), radius: 0.025, fill: white, stroke: (paint: black, thickness: 1.25pt), name: "01")
|
||||||
|
|
||||||
|
//content("01.end", anchor: "north", padding: (left: 3mm, bottom: 2mm), text(green.darken(30%))[Punkt $(a_1, a_2)$])
|
||||||
|
|
||||||
|
content("01.south", padding: (left: 0mm, bottom: -5mm), text([$x_0 -c$]))
|
||||||
|
|
||||||
|
circle((1.5,0.25), radius: 0.025, fill: white, stroke: (paint: black, thickness: 1.25pt), name: "02")
|
||||||
|
|
||||||
|
content("02.south", padding: (left: 0mm, bottom: -5mm), text([$x_0$]))
|
||||||
|
|
||||||
|
circle((2.5,0.25), radius: 0.025, fill: white, stroke: (paint: black, thickness: 1.25pt), name: "03")
|
||||||
|
|
||||||
|
content("03.south", padding: (left: 0mm, bottom: -5mm), text([$x_0 +c$]))
|
||||||
|
|
||||||
|
circle((1.5,0), radius: 0.0005, fill: white, stroke: (paint: white, thickness: 1.25pt), name: "02")
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
#let b2_4 = 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")
|
||||||
|
|
||||||
|
|
||||||
|
})
|
||||||
29
Band2/snippets.typ
Normal file
29
Band2/snippets.typ
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
#align(left, $
|
||||||
|
& 1 &&=& a_1 &+& a_2 &+& a_3 &+& a_4 \
|
||||||
|
& 1 + 2^3 &&=& 2a_1 &+& 2^2a_2 &+& 2^3a_3 &+& 2^4a_4 \
|
||||||
|
& 1 + 2^3 + 3^3 &&=& 3a_1 &+& 3^2a_2 &+& 3^3a_3 &+& 3^4a_4 \
|
||||||
|
& 1 + 2^3 + 3^3 + 4^4 &&=& 4a_1 &+& 4^2a_2 &+& 4^3a_3 &+& 4^4a_4
|
||||||
|
$)
|
||||||
|
|
||||||
|
|
||||||
|
$
|
||||||
|
cases(
|
||||||
|
1 & = thin a_1 &+ a_2 &+ a_3 &+ a_4 ,
|
||||||
|
1 + 2^3 & = thin 2a_1 &+ 2^2a_2 &+ 2^3a_3 &+ 2^4a_4,
|
||||||
|
1 + 2^3 + 3^3 & = thin 3a_1 &+ 3^2a_2 &+ 3^3a_3 &+ 3^4a_4,
|
||||||
|
1 + 2^3 + 3^3 + 4^4 & = thin 4a_1 &+ 4^2a_2 &+ 4^3a_3 &+ 4^4a_4,
|
||||||
|
)
|
||||||
|
$
|
||||||
|
|
||||||
|
|
||||||
|
$ cases(
|
||||||
|
2y_1 +&& y_2 =&& 4x_1\
|
||||||
|
y_1 +&& 2y_2 =&& -12x_2\
|
||||||
|
-2y_1 +&& 3y_2 =&& x_3
|
||||||
|
) $
|
||||||
|
|
||||||
|
$
|
||||||
|
2y_1 +&& y_2 =&& 4x_1\
|
||||||
|
y_1 +&& 2y_2 =&& -12x_2\
|
||||||
|
-2y_1 +&& 3y_2 =&& x_3
|
||||||
|
$
|
||||||
Reference in New Issue
Block a user