Band1 und Band2 Änderungen, speziell Band2 Grafiken
This commit is contained in:
854
Band1/Band1.typ
854
Band1/Band1.typ
@@ -91,6 +91,20 @@
|
|||||||
#deckblatt(bandnr: "1", autor: tt, titel: "Grundlagen der Mathematik,\nAbbildungen,\nFunktionen, Folgen")
|
#deckblatt(bandnr: "1", autor: tt, titel: "Grundlagen der Mathematik,\nAbbildungen,\nFunktionen, Folgen")
|
||||||
#pagebreak()
|
#pagebreak()
|
||||||
//#abhaengigkeit()
|
//#abhaengigkeit()
|
||||||
|
|
||||||
|
//////////////////////////
|
||||||
|
|
||||||
|
#set page(
|
||||||
|
width:162mm,
|
||||||
|
height: 230mm,
|
||||||
|
margin: 20mm,
|
||||||
|
)
|
||||||
|
|
||||||
|
#set par(
|
||||||
|
justify: true, //Blocksatz
|
||||||
|
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: (
|
||||||
@@ -110,24 +124,26 @@
|
|||||||
} */
|
} */
|
||||||
|
|
||||||
#let mynode(pos, zahl, inhalt, name) = {
|
#let mynode(pos, zahl, inhalt, name) = {
|
||||||
|
node(
|
||||||
node(
|
pos,
|
||||||
name: name,
|
name: name,
|
||||||
pos,
|
shape: rect, // 1. Zwingt Fletcher zum Rechteck
|
||||||
block(
|
corner-radius: 0pt, // 2. Verhindert abgerundete Ecken
|
||||||
width: 36mm, // Feste Breite
|
fill: white, // Optional: Hintergrund füllen
|
||||||
height: 14mm, // Feste Höhe
|
stroke: 1.25pt,
|
||||||
{
|
|
||||||
align(top + right, text(2.5em, fill: gray.darken(90%))[#zahl])
|
// 3. WICHTIG: Festlegen einer Mindestgröße, damit alle gleich starten
|
||||||
place(bottom + left, inhalt) // Nutzt den Platz des Blocks
|
// Anstatt extrude nutzen wir feste Maße, die sich aber am Gitter ausrichten
|
||||||
}
|
width: 12em,
|
||||||
),
|
height: 5.8em,
|
||||||
stroke: 1.25pt,
|
|
||||||
corner-radius: 0pt
|
{
|
||||||
)
|
// 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 myedge(start, end, type, ) = {
|
||||||
let sep = 0.15em
|
let sep = 0.15em
|
||||||
@@ -136,125 +152,166 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
#diagram(
|
#diagram(
|
||||||
|
spacing: (11mm, 7mm),
|
||||||
|
//debug: 3,
|
||||||
edge-stroke: 1.25pt,
|
edge-stroke: 1.25pt,
|
||||||
|
|
||||||
mark-scale: 55%,
|
mark-scale: 55%,
|
||||||
mynode((0.25,1),"",[Vorbereitungsband], <A0>),
|
mynode((0,0),"",[Vorbereitungsband], <A0>),
|
||||||
mynode((1.8,1),"1", [Grundlagen], <A1>),
|
mynode((1,0),"1", [Grundlagen], <A1>),
|
||||||
mynode((2.925,1), "13",[Lineare Algebra], <A13>),
|
mynode((2,0), "13",[Lineare Algebra], <A13>),
|
||||||
|
|
||||||
mynode((0.25,1.9),"3",[Unendliche Reihen], <A3>),
|
mynode((0,1),"3",[Unendliche Reihen], <A3>),
|
||||||
mynode((1.8,1.9), "2",[Differential- und Integralrechnung], <A2>),
|
mynode((1,1), "2",[Differential- und Integralrechnung], <A2>),
|
||||||
mynode((2.925,1.9), "14",[Lineare Optimierung], <A14>),
|
mynode((2,1), "14",[Lineare Optimierung], <A14>),
|
||||||
|
|
||||||
mynode((0.25,2.87), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
|
mynode((0,2), [7$#sub(text(0.5em)[1])$],[Gewöhnliche Differentialgleichungen], <A7_1>),
|
||||||
mynode((1.8,2.87), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
|
mynode((1,2), "4",[Differentialrechnung mit mehreren Variablen], <A4>),
|
||||||
mynode((2.925,2.87), "15",[Nichtlineare Optimierung], <A15>),
|
mynode((2,2), "15",[Nichtlineare Optimierung], <A15>),
|
||||||
|
|
||||||
mynode((0.25,3.87), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
|
mynode((0,3), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A7_2>),
|
||||||
mynode((1.8,3.87), "5",[Integralrechnung mit mehreren Variablen], <A5>),
|
mynode((1,3.), "5",[Integralrechnung mit mehreren Variablen], <A5>),
|
||||||
mynode((2.925,3.87), "16",[Optimale Prozesse und Systeme], <A16>),
|
mynode((2,3), "16",[Optimale Prozesse und Systeme], <A16>),
|
||||||
// --------------------
|
|
||||||
mynode((0.25,4.87), "8",[Partielle Differentialgleichungen], <A8>),
|
|
||||||
mynode((1.8,4.87), "6",[Differentialgeometrie], <A6>),
|
|
||||||
mynode((2.925,4.87), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
|
|
||||||
|
|
||||||
mynode((0.25,5.87), "9",[Komplexe Funktionen], <A9>),
|
mynode((0,4), "8",[Partielle Differentialgleichungen], <A8>),
|
||||||
mynode((1.8,5.87), "10",[Operatorenrechnung], <A10>),
|
mynode((1,4), "6",[Differentialgeometrie], <A6>),
|
||||||
mynode((2.925,5.87), [21$#sub(text(0.5em)[1])$],[Spieltheorie], <A21_1>),
|
mynode((2,4), "17",[Wahrscheinlichkeitsrechnung, math.Statistik], <A17>),
|
||||||
|
|
||||||
mynode((0.25,6.87), "12",[Spezielle Funktionen], <A12>),
|
mynode((0,5), "9",[Komplexe Funktionen], <A9>),
|
||||||
mynode((1.8,6.87), "11",[Tensoralgebra und -analysis], <A11>),
|
mynode((1,5), "10",[Operatorenrechnung], <A10>),
|
||||||
mynode((2.925,6.87), [21$#sub(text(0.5em)[2])$],[Graphentheorie], <A21_2>),
|
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.25,7.87), [18],[Numerische Methoden], <A18>),
|
mynode((0,7), [18],[Numerische Methoden], <A18>),
|
||||||
mynode((1.8,7.87), [20],[Simulation], <A20>),
|
mynode((1,7), [20],[Simulation], <A20>),
|
||||||
mynode((2.925,7.87), [19$#sub(text(0.5em)[1])$],[Stochastische Prozesse und Modelle], <A19_1>),
|
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>),
|
||||||
|
|
||||||
mynode((0.25,8.87), [22],[Funktionalanalysis], <A22>),
|
|
||||||
mynode((1.8,8.87), [23],[Symmetriegruppen], <A23>),
|
|
||||||
mynode((2.925,8.87), [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>,"-|>"),
|
||||||
mynode((-1,5.85), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A12>),
|
myedge(<A5.south>,<A6.north>,"-|>"),
|
||||||
mynode((-1,6.85), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A18>),
|
myedge(<A14.south>,<A15.north>,"-|>"),
|
||||||
mynode((-1,7.85), [7$#sub(text(0.5em)[2])$],[Gewöhnliche Differentialgleichungen], <A22>), */
|
myedge(<A7_1.south>,<A7_2.north>,"-|>"),
|
||||||
//mynode((-3,1), [Unendliche Reihen], <A4>),
|
myedge(<A7_2.south>,<A8.north>,"-|>"),
|
||||||
//mynode((-1,1), [Differential- und Integralrechnung], <A5>),
|
myedge(<A8.south>,<A9.north>,"-|>"),
|
||||||
// mynode((2,2), [Harold], $A_3$, <A3>),
|
myedge(<A9.south>,<A12.north>,"-|>"),
|
||||||
// mynode((0,2), [Ian], $A_4$, <A4>),
|
myedge(<A12.south>,<A18.north>,"-|>"),
|
||||||
|
myedge(<A10.south>,<A11.north>,"-|>"),
|
||||||
|
myedge(<A15.south>,<A16.north>,"-|>"),
|
||||||
myedge(<A0.east>,<A1.west>,"-|>"),
|
myedge(<A17.south>,<A21_1.north>,"-|>"),
|
||||||
myedge(<A1.south>,<A2.north>,"-|>"),
|
myedge(<A19_1.south>,<A19_2.north>,"-|>"),
|
||||||
myedge(<A2.west>,<A3.east>,"-|>"),
|
// NEUES Edge: 1,3 (n3_1) → 3,2 (n2_3)
|
||||||
myedge(<A13.south>,<A14.north>,"-|>"),
|
// Verlauf: rechts von n3_1 nach rechts, runter auf Höhe von n2_3, dann links zur Node
|
||||||
myedge(<A2.south>,<A4.north>,"-|>"),
|
|
||||||
myedge(<A14.south>,<A15.north>,"-|>"),
|
|
||||||
// myedge(<A3.west>,<A4.east>,"-|>", $1$, $6$),
|
|
||||||
// myedge(<A4.north>,<A1.south>,"-|>", $8$, $4$),
|
|
||||||
|
|
||||||
|
|
||||||
edge(
|
|
||||||
(rel: (0pt, -5mm), to: <A13.west>),
|
|
||||||
|
|
||||||
(rel: (-0.05, 0.)),
|
|
||||||
//(rel: (0.1, -0.2), to: <A4.east>),
|
|
||||||
(rel: (0.1,-0.2), to: <A4.east>),
|
|
||||||
(rel: (0.,-0.2), to: <A4.east>),
|
|
||||||
//<A4.east>,
|
|
||||||
//<A4.east>, // Zielpunkt
|
|
||||||
"-|>",
|
|
||||||
corner-radius: 0pt ,
|
|
||||||
stroke: 1.25pt,
|
|
||||||
|
|
||||||
|
|
||||||
|
//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),
|
||||||
|
),
|
||||||
|
|
||||||
edge(
|
//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: (0pt, 5mm), to: <A1.east>),
|
||||||
|
|
||||||
(rel: (0.1, 0.)),
|
(rel: (0.1, 0.)),
|
||||||
|
|
||||||
(rel: (0pt, 5mm), to: <A13.west>),
|
(rel: (0pt, 5mm), to: <A13.west>),
|
||||||
"-|>",
|
"-|>",
|
||||||
corner-radius: 0pt ,
|
corner-radius: 0pt ,
|
||||||
stroke: 1.25pt ,
|
stroke: green.darken(30%) + 1.25pt,
|
||||||
),
|
),
|
||||||
|
|
||||||
edge(
|
//5 → 8
|
||||||
(rel: (0pt, -5mm), to: <A4.east>),
|
edge(
|
||||||
|
(rel: (0pt, 0mm), to: <A5.west>),
|
||||||
(rel: (0.1, 0.)),
|
|
||||||
|
|
||||||
(rel: (0pt, -5mm), to: <A15.west>),
|
(rel: (-0.15, 0.)),
|
||||||
"-|>",
|
(rel: (0.08,0), to: <A8.east>),
|
||||||
corner-radius: 0pt ,
|
(rel: (0.,0), to: <A8.east>),
|
||||||
stroke: 1.25pt ,
|
"-|>",
|
||||||
|
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(
|
|
||||||
<A5.east>,
|
|
||||||
|
|
||||||
(rel: (0.07, 0.)),
|
|
||||||
(rel: (0, 0.5)),
|
|
||||||
|
|
||||||
(rel: (0pt, 10pt), to: <A17.north>),
|
|
||||||
<A17.north>,
|
|
||||||
"-|>",
|
|
||||||
corner-radius: 0pt ,
|
|
||||||
stroke: 1.25pt ,
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
edge(
|
edge(
|
||||||
(rel: (0pt, 5mm), to: <A4.west>),
|
(rel: (0pt, 5mm), to: <A4.west>),
|
||||||
|
|
||||||
@@ -265,89 +322,168 @@ edge(
|
|||||||
corner-radius: 0pt ,
|
corner-radius: 0pt ,
|
||||||
stroke: 1.25pt ,
|
stroke: 1.25pt ,
|
||||||
),
|
),
|
||||||
|
//9 → 10
|
||||||
|
edge(
|
||||||
|
(rel: (0pt, 5mm), to: <A9.east>),
|
||||||
|
|
||||||
|
(rel: (0.1, 0.)),
|
||||||
|
|
||||||
edge(
|
(rel: (0pt, 5mm), to: <A10.west>),
|
||||||
(<A3.west>),
|
"-|>",
|
||||||
// Startpunkt
|
corner-radius: 0pt ,
|
||||||
(rel: (-0.6, 0.)), // 1. Punkt: 0.5 Einheiten nach links (bleibt auf gleicher Höhe wie Start)
|
stroke: 1.25pt ,
|
||||||
|
),
|
||||||
|
//5 → 17
|
||||||
|
edge(
|
||||||
|
<A5.east>,
|
||||||
|
|
||||||
|
(rel: (0.07, 0.)),
|
||||||
|
(rel: (0, 0.5)),
|
||||||
|
|
||||||
(rel: (-0.6, 0.), to: <A7_2.west>), // 2. Punkt: Direkt über dem Ziel (gleiches X wie A4.north)
|
(rel: (0pt, 10pt), to: <A17.north>),
|
||||||
<A7_2.west>, // Zielpunkt
|
<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 ,
|
corner-radius: 0pt ,
|
||||||
stroke: 1.25pt, // WICHTIG: Auf 0pt setzen für harte Ecken
|
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>),
|
||||||
edge(
|
(rel: (0.,0), to: <A11.east>),
|
||||||
(<A16.east>),
|
|
||||||
// Startpunkt
|
|
||||||
(rel: (0.2, 0)), // 1. Punkt: 0.5 Einheiten nach links (bleibt auf gleicher Höhe wie Start)
|
|
||||||
|
|
||||||
(rel: (0.2, 0.), to: <A19_1.east>), // 2. Punkt: Direkt über dem Ziel (gleiches X wie A4.north)
|
|
||||||
<A19_1.east>, // Zielpunkt
|
|
||||||
"-|>",
|
"-|>",
|
||||||
corner-radius: 0pt ,
|
corner-radius: 0pt ,
|
||||||
stroke: 1.25pt, // WICHTIG: Auf 0pt setzen für harte Ecken
|
stroke: 1.25pt + purple.lighten(20%),
|
||||||
|
|
||||||
),
|
),
|
||||||
|
//13 → 23
|
||||||
edge(
|
edge(
|
||||||
(<A16.east>),
|
|
||||||
// Startpunkt
|
|
||||||
(rel: (0.2, 0)), // 1. Punkt: 0.5 Einheiten nach links (bleibt auf gleicher Höhe wie Start)
|
|
||||||
|
|
||||||
(rel: (0.2, 0.), to: <A19_2.east>), // 2. Punkt: Direkt über dem Ziel (gleiches X wie A4.north)
|
|
||||||
<A19_2.east>, // Zielpunkt
|
|
||||||
"-|>",
|
|
||||||
corner-radius: 0pt ,
|
|
||||||
stroke: 1.25pt, // WICHTIG: Auf 0pt setzen für harte Ecken
|
|
||||||
|
|
||||||
),
|
|
||||||
|
|
||||||
edge(
|
|
||||||
(<A15.east>),
|
|
||||||
// Startpunkt
|
|
||||||
(rel: (0.3, 0)), // 1. Punkt: 0.5 Einheiten nach links (bleibt auf gleicher Höhe wie Start)
|
|
||||||
|
|
||||||
(rel: (0.3, 0.), to: <A21_1.east>), // 2. Punkt: Direkt über dem Ziel (gleiches X wie A4.north)
|
|
||||||
<A21_1.east>, // Zielpunkt
|
|
||||||
"-|>",
|
|
||||||
corner-radius: 0pt ,
|
|
||||||
stroke: 1.25pt, // WICHTIG: Auf 0pt setzen für harte Ecken
|
|
||||||
|
|
||||||
),
|
|
||||||
edge(
|
|
||||||
(<A15.east>),
|
|
||||||
// Startpunkt
|
|
||||||
(rel: (0.3, 0)), // 1. Punkt: 0.5 Einheiten nach links (bleibt auf gleicher Höhe wie Start)
|
|
||||||
|
|
||||||
(rel: (0.3, 0.), to: <A21_2.east>), // 2. Punkt: Direkt über dem Ziel (gleiches X wie A4.north)
|
|
||||||
<A21_2.east>, // Zielpunkt
|
|
||||||
"-|>",
|
|
||||||
corner-radius: 0pt ,
|
|
||||||
stroke: 1.25pt, // WICHTIG: Auf 0pt setzen für harte Ecken
|
|
||||||
|
|
||||||
),
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
edge(
|
|
||||||
(<A13.east>),
|
(<A13.east>),
|
||||||
// Startpunkt
|
(rel:(0.75,0)),
|
||||||
(rel:(0.4,0)),
|
(rel:(0, 9.8)),// <----
|
||||||
(4., 9.6),
|
(rel:(-3.38, 0)),
|
||||||
(1.8, 9.6),
|
//(rel: (0.6, 0.), to: <A21_2.east>),
|
||||||
//(rel: (0.6, 0.), to: <A21_2.east>), // 2. Punkt: Direkt über dem Ziel (gleiches X wie A4.north)
|
<A23.south>,
|
||||||
<A23.south>, // Zielpunkt
|
|
||||||
"-|>",
|
"-|>",
|
||||||
corner-radius: 0pt ,
|
corner-radius: 0pt ,
|
||||||
stroke: 1.25pt, // WICHTIG: Auf 0pt setzen für harte Ecken
|
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 })
|
||||||
it
|
it
|
||||||
@@ -679,7 +815,7 @@ Die Sätze der Mathematik und anderer Wissenschaften sind Aussagen bzw. Aussagef
|
|||||||
|
|
||||||
Aus der Umgangssprache sind uns eine Reihe von Bindewörtern bekannt, mit deren Hilfe man mehreren Aussagen eine neue zweiwertige Aussage zuordnen kann.
|
Aus der Umgangssprache sind uns eine Reihe von Bindewörtern bekannt, mit deren Hilfe man mehreren Aussagen eine neue zweiwertige Aussage zuordnen kann.
|
||||||
|
|
||||||
_Beispiel 3.4:_ Betrachten wir als Beispiele die beiden Aussagen
|
<Bsp_3_4> _Beispiel 3.4:_ Betrachten wir als Beispiele die beiden Aussagen
|
||||||
|
|
||||||
#einruecken(15mm)[
|
#einruecken(15mm)[
|
||||||
$p=$ "$3$ ist eine Primzahl"
|
$p=$ "$3$ ist eine Primzahl"
|
||||||
@@ -723,13 +859,10 @@ $w(p)=W, w(q)=F$,
|
|||||||
|
|
||||||
$w(p_1=F, w(p_2)=F, w(p_3=W, w(p_4=W, w(p_5)=F,$
|
$w(p_1=F, w(p_2)=F, w(p_3=W, w(p_4=W, w(p_5)=F,$
|
||||||
|
|
||||||
& $w(p_6)=W, w(p_7)=F$.
|
$w(p_6)=W, w(p_7)=F$.
|
||||||
]
|
]
|
||||||
|
|
||||||
|
Wir wollen nun die Überlegungen aus Beispiel @Bsp_3_4 verallgemeinern. Die Größen $p$ und $q$ bezeichnen zwei beliebige Aussagen, $p \in A_2, q \in A_2$. Dann gibt die folgende Tabelle die den Beispielen entsprechenden Aussagenverbindungen, deren Namen und Kurzschreibweisen an. Wir bemerken noch einmal, daß eine solche Aussagenverbindung je zwei Elementen von $A_2$ in eindeutiger Weise ein Element von $A_2$ zuordnet. Im Beispiel (1) wird einer Aussage aus $A_2$ eine andere Aussage, ebenfalls aus $A_2$, eindeutig zugeordnet. Aus diesem Grunde können wir auch das Wort Aussagenfunktion anstelle Aussagenverbindung benutzen.
|
||||||
|
|
||||||
|
|
||||||
// Wir wollen nun die Überlegungen aus Beispiel 3.4 verallgemeinern. Die Größen $p$ und $q$ bezeichnen zwei beliebige Aussagen, $p \in A_2, q \in A_2$. Dann gibt die folgende Tabelle die den Beispielen entsprechenden Aussagenverbindungen, deren Namen und Kurzschreibweisen an. Wir bemerken noch einmal, daß eine solche Aussagenverbindung je zwei Elementen von $A_2$ in eindeutiger Weise ein Element von $A_2$ zuordnet. Im Beispiel (1) wird einer Aussage aus $A_2$ eine andere Aussage, ebenfalls aus $A_2$, eindeutig zugeordnet. Aus diesem Grunde können wir auch das Wort Aussagenfunktion anstelle Aussagenverbindung benutzen.
|
|
||||||
|
|
||||||
// \begin{table}
|
// \begin{table}
|
||||||
// \captionsetup{labelformat=empty}
|
// \captionsetup{labelformat=empty}
|
||||||
@@ -839,4 +972,353 @@ $w(p_1=F, w(p_2)=F, w(p_3=W, w(p_4=W, w(p_5)=F,$
|
|||||||
// $q$ & $F$ & $F$ & $W$ & $W$ \\
|
// $q$ & $F$ & $F$ & $W$ & $W$ \\
|
||||||
// \hline entweder $p$ oder $q$ & $F$ & $W$ & $W$ & $F$
|
// \hline entweder $p$ oder $q$ & $F$ & $W$ & $W$ & $F$
|
||||||
// \end{tabular}
|
// \end{tabular}
|
||||||
// * Aufgabe 3.1: Man gebe die Wahrheitstabellen der Aussagenverbindungen $\overline{p \wedge q}$ (Sheffersche Funktion) bzw. $\overline{p \vee q}$ (Nicodsche Funktion) an!
|
// * Aufgabe 3.1: Man gebe die Wahrheitstabellen der Aussagenverbindungen $\overline{p \wedge q}$ (Sheffersche Funktion) bzw. $\overline{p \vee q}$ (Nicodsche Funktion) an!
|
||||||
|
|
||||||
|
// Zu diesen Tabellen sollen noch einige Bemerkungen gemacht werden. Der Implikation wird nur dann der Wahrheitswert $F$ zugeordnet, wenn die erste Teilaussage $p$ (Voraussetzung) wahr, aber die zweite Teilaussage $q$ (Behauptung) falsch ist.
|
||||||
|
// Beispiel 3.6: Die Aussage „Wenn 3 eine Primzahl ist, so ist 10 durch 3 teilbar“ ist offenbar falsch. Die Aussage „Wenn 4 eine Primzahl ist, so ist 10 durch 3 teilbar“ wird dagegen als wahr angesehen.
|
||||||
|
|
||||||
|
// Bemerkenswert ist auch der Unterschied zwischen Alternative und Disjunktion. Die Alternative stellt ein einschließendes, die Disjunktion ein ausschließendes oder dar.
|
||||||
|
|
||||||
|
// Betrachten wir noch die folgenden zwei Aussagen
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// \begin{aligned}
|
||||||
|
// & p=,, 2 \cdot 2=4 " \text { oder "Berlin ist die Hauptstadt der UdSSR" } \\
|
||||||
|
// & q=\text { Wenn },, 2 \cdot 2=5 " \text { ist, so „ist die Erde ein Planet" }
|
||||||
|
// \end{aligned}
|
||||||
|
// $$
|
||||||
|
|
||||||
|
|
||||||
|
// Aussagenverbindungen dieser Art sind häufig insbesondere philosophischer Kritik ausgesetzt. Im Sinne der Logik handelt es sich jedoch bei $p$ und $q$ um wahre Aussagen, obwohl diese Aussagenverbindungen rein inhaltlich gesehen völlig sinnlos sind. Im Sinne einer völligen Allgemeinheit der zur Aussagenverbindung zugelassenen Aussagen aus $A_2$ ist es aber legitim, auch Verbindungen der obigen Art zu bilden.
|
||||||
|
// Es ist zweckmäßig, die Tabellen 3.1 bis 3.7 gut im Gedächtnis zu behalten, da sie Bausteine für nachfolgende Überlegungen sind.
|
||||||
|
|
||||||
|
// 3.3.3. Wahrheitstabellen $n$-stelliger ( $n>2$ ) Aussagenverbindungen
|
||||||
|
|
||||||
|
// Die Wahrheitstabellen ordnen jeder Kombination (bisher jedem Paar) von Wahrheitswerten eindeutig einen Wahrheitswert zu. Diese Zuordnung ist spaltenweise in den Tabellen rechts vom vertikalen Strich dargestellt. Die Tabellen repräsentieren also Funktionen (siehe auch Abschnitt 8.), die man auch Wahrheitsfunktionen nennt.
|
||||||
|
|
||||||
|
// Am Beispiel der 4 -stelligen Aussagenverbindung
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// (p \wedge q) \rightarrow \cdot(r \vee s)
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// wollen wir jetzt noch zeigen, wie man mit Hilfe der in 3.3.2. angegebenen Wahrheitstabellen die Wahrheitstabelle einer mehr als zweistelligen Aussagenverbindung bestimmt.
|
||||||
|
|
||||||
|
// Zunächst kann man sich überlegen, daß es $2^4=16$ verschiedene Kombinationen von Wahrheitswerten gibt. Diese werden in zweckmäßiger Reihenfolge im Kopf der Tabelle aufgeschrieben. Betrachten wir die Struktur von (3.3), so sehen wir, daß wir es mit einer Aussagenverbindung $t \rightarrow u$ mit $t=p \wedge q, u=r \vee s$ zu tun haben. Dies gibt uns die Möglichkeit, die Wahrheitstabelle schrittweise, wie nachfolgend dargestellt, aus den schon bekannten Bausteinen aufzubauen.
|
||||||
|
|
||||||
|
// \begin{table}
|
||||||
|
// \captionsetup{labelformat=empty}
|
||||||
|
// \caption{Tabelle 3.8. Wahrheitstabelle der Aussagenverbindung $(p \wedge q) \rightarrow(r \vee s)$}
|
||||||
|
// \begin{tabular}{|l|l|l|l|l|l|l|l|l|l|l|l|l|l|l|}
|
||||||
|
// \hline $p$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ \\
|
||||||
|
// \hline $q$ & $F$ & $W$ & $F$ & $F$ & $W$ & $W$ & $F$ & $F$ & $W$ & $W$ & F & $F$ & $W$ & $W$ \\
|
||||||
|
// \hline $r$ & $F$ & $F$ & $W$ & $W$ & $W$ & $W$ & $F$ & $F$ & $F$ & $F$ & $W$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline $S_{\text {。 }}$ & $F$ & $F$ & $F$ & $F$ & $F$ & $F$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline $t$ & $F$ & $W$ & $F$ & $F$ & $F$ & $W$ & $F$ & $F$ & $F$ & $W$ & $F$ & $F$ & F & $W$ \\
|
||||||
|
// \hline $u=r^* \vee s$ & $F$ & $F$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline $t \rightarrow u$ & $W$ & $F$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline
|
||||||
|
// \end{tabular}
|
||||||
|
// \end{table}
|
||||||
|
|
||||||
|
// Wir sehen also, daß $t \rightarrow u$ nur bei genau einer der 16 möglichen Wahrheitswertkombinationen falsch wird. Insbesondere ist also auch eine Aussage wie
|
||||||
|
// „Wenn $2 \cdot 2=3$ und 4 eine Primzahl ist, so ist auch 5 eine Primzahl oder $8^2=60^{\text {" }}$
|
||||||
|
// eine wahre Aussage.
|
||||||
|
// Mit Hilfe der Ergebnisse aus Abschnitt 6.3.2. kann man sich leicht überlegen, daß bei einer $n$-stelligen Aussagenverbindung die Wahrheitstabelle $2^n$ Spalten enthält. Um diese aufzuschreiben ist es zweckmäßig, folgendermaßen vorzugehen (siehe auch Tabelle 3.8, $n=4$ ):
|
||||||
|
|
||||||
|
// Man schreibe in die erste Zeile die Zweiergruppen $F W \ldots$, in die zweite die Vierergruppen $F F W W \ldots$, in die dritte die Achtergruppen $F F F W W W W \ldots$ usw. Auf diese Weise erhält man, wie man sich leicht überlegen kann, alle $2^n$ Spalten, und man ist damit in der Lage, die gewünschte Wahrheitstabelle anzugeben.
|
||||||
|
// * Aufgabe 3.2: Folgt aus dem Satz „Wenn Peter Mathematik studiert, so studiert er auch Operationsforschung oder Kybernetik" und „Peter studiert nicht Operationsforschung" und „Peter studiert Mathematik oder Operationsforschung oder Kybernetik" der Satz: „Peter studiert Kybernetik"?
|
||||||
|
|
||||||
|
// 3.3.4 Verbindungen von Aussageformen
|
||||||
|
|
||||||
|
// Auch Aussageformen lassen sich durch Bindewörter neuen Aussageformen zuordnen. Dabei ist nur zu sichern, daß bei Einsetzung eines beliebigen konkreten Wertes $x_1$ der Variablen $x$ mit dem Bereich $X$ die „Aussageformverbindung" in eine Aussage aus $A_2$ übergeht.
|
||||||
|
|
||||||
|
// Beispiel 3.7: $X=\{1 ; 2 ; 3 ; 4 ; 5 ; 5,1 ; 5,2 ; 6\}$
|
||||||
|
// 1. $p(x)=$ " $x$ ist eine ganze Zahl, und $x$ ist größer als 4 ".
|
||||||
|
|
||||||
|
// Es gilt: $w(p(5))=w(p(6))=W, w\left(p\left(x_1\right)\right)=F$ für $x_1 \in X, x_1 \neq 5 ; 6$.
|
||||||
|
// 2. $p(x)=$ "Wenn $x$ eine ganze Zahl ist, so ist $x$ größer als 4".
|
||||||
|
|
||||||
|
// Es gilt: $w(p(1))=w(p(2))=w(p(3))=w(p(4))=F$,
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// w(p(5))=w(p(5,1))=w(p(5,2))=w(p(6))=W .
|
||||||
|
// $$
|
||||||
|
|
||||||
|
|
||||||
|
// Allgemein können wir folgendes feststellen:
|
||||||
|
// Man kann zum Beispiel durch
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// \begin{aligned}
|
||||||
|
// & \overline{p(x)}, p(x) \wedge q(x), p(x) \vee q(x), p(x) \rightarrow q(x), \\
|
||||||
|
// & p(x) \leftrightarrow q(x), \quad \text { entweder } p(x) \text { oder } q(x)
|
||||||
|
// \end{aligned}
|
||||||
|
// $$
|
||||||
|
|
||||||
|
|
||||||
|
// Aussageformverbindungen bilden, die für jedes $x=x_1 \in X$ in Aussagenverbindungen übergehen. Es können darüberhinaus auch $n$-stellige Aussageformverbindungen gebildet werden.
|
||||||
|
|
||||||
|
// * Aufgabe 3.3: Man gebe die Aussageformverbindung
|
||||||
|
// „Falls $n$ eine Primzahl ist, so teilt 3 eine der Zahlen $n-1$ oder $n+1$ " mittels logischer Zeichen an und stelle für ein beliebiges festes $n$ die Wahrheitstabelle auf!
|
||||||
|
|
||||||
|
// 3.4. Die wesentlichen logischen Zeichen und ihre technische Realisierung
|
||||||
|
// 3.4.1 Logische Zeichen
|
||||||
|
|
||||||
|
// Wir haben bereits in 3.3.1. einige wesentliche Kurzzeichen, die in der Logik zur Beschreibung von Aussagenverbindungen benutzt werden, angegeben.
|
||||||
|
|
||||||
|
// Wir wiederholen:
|
||||||
|
|
||||||
|
// \begin{tabular}{ll}
|
||||||
|
// $\bar{p}$ & - nicht $p$ \\
|
||||||
|
// $p \wedge q$ & - p und $q$ \\
|
||||||
|
// $p \vee q$ & - p oder $q$ \\
|
||||||
|
// $p \rightarrow q$ & - wenn $p$, so $q$ \\
|
||||||
|
// $p \leftrightarrow q$ & - p genau dann, wenn $q$
|
||||||
|
// \end{tabular}
|
||||||
|
|
||||||
|
// Die Zeichen ${ }^{-}, \wedge, \vee, \rightarrow, \leftrightarrow$ sind die Kurzzeichen (Funktoren) der Aussagenlogik. Darüber hinaus gibt es jedoch einige Zeichen, die insbesondere für mathematische Aussagen von Bedeutung sind. Dazu betrachten wir noch einmal eine Aussageform $p(x)$ mit dem Bereich $X$ der Variablen $x$.
|
||||||
|
|
||||||
|
// Es gibt außer der schon behandelten Möglichkeit, von der Aussageform $p(x)$ zu Aussagen überzugehen (einsetzen konkreter $x=x_1 \in X$ ), noch eine andere Möglichkeit, Aussagen mit Hilfe von $p(x)$ zu bilden. Diese Möglichkeit ergibt sich aus der Tatsache, daß beim Einsetzen spezieller $x=x_1 \in X$ in die Aussageform die drei folgenden Fälle eintreten können:
|
||||||
|
// 1. Alle entstehenden Aussagen sind wahr,
|
||||||
|
// 2. mindestens eine der entstehenden Aussagen ist wahr und mindestens eine ist falsch,
|
||||||
|
// 3. alle entstehenden Aussagen sind falsch.
|
||||||
|
|
||||||
|
// Entsprechend definieren wir:
|
||||||
|
// Definition 3.3:
|
||||||
|
|
||||||
|
// D.3.3
|
||||||
|
// (a) $q=(\forall x) p(x)$, gelesen: "Für jedes $x$ gilt $p(x)$ ", ist eine zweiwertige Aussage, die genau dann den Wert $W$ besitzt, wenn $p(x)$ für jedes konkrete $x=x_1 \in X$ eine wahre Aussage darstellt. Das Symbol $\forall$ heißt Allquantor.
|
||||||
|
// (b) $r=(\exists x) p(x)$, gelesen: "Es existiert ein $x$ so, daß $p(x)$ gilt", ist eine zweiwertige Aussage, die genau dann den Wert F besitzt, wenn $p(x)$ für jedes konkrete $x x_1 \in X$ eine falsche Aussage darstellt. Das Symbol $\exists$ heißt Existenzquantor.
|
||||||
|
// (c) $s=(\mathrm{N} x) p(x)=(\forall x) \overline{p(x)}$, gelesen: Für kein $x$ gilt $p(x)$ ". N heißt Nullquantor und kann leicht auf den Allquantor zurückgeführt werden.
|
||||||
|
|
||||||
|
// Beispiele 3.8:
|
||||||
|
// $p(x)=$ " $x$ ist eine gerade Zahl",
|
||||||
|
// $q(x)=$ „Das Quadrat von $x$ ist nicht negativ",
|
||||||
|
// $X=\{\ldots,-2,-1,0,1,2,3,4, \ldots\}=G \quad$ (Menge der ganzen Zahlen).
|
||||||
|
// Dann gilt:
|
||||||
|
// $w((\forall x) p(x))=F$, denn z. B. $x=1$ ist eine ungerade Zahl;
|
||||||
|
// $w((\exists x) p(x))=W$, denn z. B. $x=2$ ist eine gerade Zahl;
|
||||||
|
// $w((\forall x) q(x))=W$, denn das Quadrat einer ganzen Zahl ist nicht negativ;
|
||||||
|
// $w((\exists x) q(x))=W$ ist eine Folgerung von $w((\forall x) q(x))=W$.
|
||||||
|
|
||||||
|
// Die oben genannten Zeichen ${ }^{-}, \vee, \wedge, \rightarrow, \leftrightarrow$ bilden gemeinsam mit den beiden Quantoren $\forall, \exists$ eine Zeichenmenge, mit der man (unter Zuhilfenahme von Klammern) die Aussagen, die in der Mathematik, aber auch in anderen Wissenschaften vorkommen, formalisiert darstellen und auf ihren Wahrheitsgehalt untersuchen kann.
|
||||||
|
|
||||||
|
// Aufgabe 3.4:-Es werden folgende Aussageformen betrachtet:
|
||||||
|
// $q(x)=$,, $x$ ist eine Primzahl ${ }^{\mathrm{c}}$; $\quad r(x)=$ „ $x$ ist durch 2 teilbar";
|
||||||
|
// $s(x)=,, x$ ist durch 3 teilbar"; $\quad t(x)=,, x$ ist durch 6 teilbar".
|
||||||
|
// Dabei ist $x$ eine natürliche Zahl, $x \geqq 1$.
|
||||||
|
// Man formuliere die folgenden Aussagen verbal und untersuche, ob sie wahr sind:
|
||||||
|
// 1. $(\forall x) r(x) \rightarrow \bar{q}(x)$;
|
||||||
|
// 2. $(\forall x) \bar{r}(x) \wedge \bar{s}(x) \rightarrow q(x)$;
|
||||||
|
// 3. $(\forall x) q(x) \rightarrow \bar{r}(x) \wedge \bar{s}(x)$;
|
||||||
|
// 4. $(\forall x) r(x) \wedge s(x) \leftrightarrow t(x)$;
|
||||||
|
// 5. $(\exists x) \bar{r}(x) \wedge \bar{S}(x) \rightarrow q(x)$.
|
||||||
|
// * Aufgabe 3.5: Man stelle die folgenden Aussagen mittels logischer Symbole dar:
|
||||||
|
// a) Zu einer beliebigen natürlichen Zahl läßt sich immer eine größere Zahl finden, die Primzahl ist.
|
||||||
|
// b) Das Quadrat jeder beliebigen reellen Zahl ist größer als null.
|
||||||
|
|
||||||
|
// Man bilde die Verneinung der durch b) formulierten Aussage!
|
||||||
|
|
||||||
|
// 3.4.2 Technische Realisierung der logischen Zeichen
|
||||||
|
|
||||||
|
// Eine wichtige technische Anwendung der Logik ist die Beschreibung von Schaltkreisen. So machte Ehrenfest bereits 1910 darauf aufmerksam, daß man die mathematische Logik auf Relaiskontaktschaltungen anwenden könne. Die Anwendung begann jedoch erst in den dreißiger Jahren mit den Arbeiten von Shannon. Es entstand die Schaltalgebra als mathematische Grundlage für die logischen Schaltungen und speziell für die digitalen Rechenautomaten.
|
||||||
|
|
||||||
|
// Betrachten wir einen Stromkreis, der durch Schalter geöffnet werden kann. Dann läßt sich leicht die folgende zweiwertige Aussage definieren
|
||||||
|
// $p=$ „Der Stromkreis ist geschlossen" $=$ „Es fließt Strom"
|
||||||
|
// Dabei ist $w(p) \in\{W, F\}$, wobei $W$ dem geschlossenen, $F$ dem geöffneten Stromkreis entspricht.
|
||||||
|
|
||||||
|
// Wir wollen jetzt die Wahrheitstabellen (Wahrheitswertfunktionen) der grundlegenden Verknüpfungen (Aussagenverbindungen) durch Schaltungen technisch realisieren.
|
||||||
|
|
||||||
|
// In Bild 3.1 und Bild 3.2 haben wir jeweils zwei Schalter, wobei
|
||||||
|
// $p_1=$ „Der Schalter 1 ist geschlossen“,
|
||||||
|
// $p_2=$ „Der Schalter 2 ist geschlossen"
|
||||||
|
// wie oben zweiwertige Aussagen sind. Eine Glühlampe $G$ zeigt an, ob der Stromkreis geschlossen oder offen ist. Für die Schaltung aus Bild 3.1 gilt
|
||||||
|
|
||||||
|
// $w(p)=\left\{\begin{array}{l}W \text { genau dann, wenn } w\left(p_1\right)=W \text { oder } w\left(p_2\right)=W \\ F \text { genau dann, wenn } w\left(p_1\right)=F \text { und } w\left(p_2\right)=F .\end{array}\right.$
|
||||||
|
|
||||||
|
// Damit ist $p$ also eine Aussagenverbindung von $p_1, p_2$, deren Wahrheitsverhalten mit dem der „oder“ Verbindung (Alternative) übereinstimmt. Die Parallelschaltung aus Bild 3.1 realisiert die Wahrheitstabelle der Aussagenverbindung $p=p_1 \vee p_2$.
|
||||||
|
|
||||||
|
// Bild 3.1. $p=p_1 \vee p_2$ (Alternative)
|
||||||
|
|
||||||
|
// Bild 3.2. $p=p_1 \wedge p_2$ (Konjunktion)
|
||||||
|
|
||||||
|
// Für die Reihenschaltung der Schalter 1 und 2 aus Bild 3.2 können wir uns leicht überlegen, daß der Wahrheitswert der Aussage $p=$ „Der Stromkreis ist geschlossen“
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// w(p)=\left\{\begin{array}{l}
|
||||||
|
// W \text { genau dann, wenn } w\left(p_1\right)=W \text { und } w\left(p_2\right)=W \\
|
||||||
|
// F \text { sonst }
|
||||||
|
// \end{array}\right.
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// ist. Wir sehen also Übereinstimmung mit der Wahrheitstabelle der Konjunktion, und deshalb realisiert die Reihenschaltung aus Bild 3.2 die Wahrheitstabelle einer Konjunktion,
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// p=p_1 \wedge p_2 .
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// Das Wahrheitsverhalten der Negation, also einer einstelligen Aussagenverbindung, läßt sich schaltungstechnisch durch einen Ruhekontakt (Bild 3.3) realisieren.
|
||||||
|
|
||||||
|
// Bild 3.3. $p=\bar{q}$ (Negation)
|
||||||
|
|
||||||
|
// Durch Betrachtung von Bild 3.3 sehen wir, der Stromkreis mit der Glühlampe $G$ ist geschlossen, falls der Schalter 1 geöffnet ist und umgekehrt. Es ist also
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// w(p)= \begin{cases}W, & \text { falls } w(q)=F \\ F, & \text { falls } w(q)=W .\end{cases}
|
||||||
|
// $$
|
||||||
|
|
||||||
|
|
||||||
|
// Deshalb gilt: $p=\bar{q}$.
|
||||||
|
// Für die Konstruktion von komplizierten elektronischen Schaltungen ist es notwendig, die Wahrheitstabellen $n$-stelliger Aussagenverbindungen schaltungstechnisch zu realisieren, insbesondere auch die der anderen Aussagenverbindungen Implikation, Äquivalenz, Entweder-oder-Verbindung, Sheffersche und Nicodsche Funktion. Ohne auf die Theorie hier näher einzugehen, wollen wir ein grundlegendes und für die Technik äußerst wichtiges Ergebnis formulieren, welches sich im Rahmen der mathematischen Logik beweisen läßt.
|
||||||
|
|
||||||
|
// Jede beliebige $n$-stellige Wahrheitswertfunktion (Wahrheitstabelle) läßt sich aus den Wahrheitswertfunktionen der Negation, Konjunktion und Alternative (Tabellen 3.2, 3.3, 3.4) durch gewisse Operationen gewinnen. Es ist darüber hinaus sogar möglich, allein mit Hilfe der Wahrheitswertfunktion der Shefferschen bzw. der Nicodschen
|
||||||
|
|
||||||
|
// Funktion (Aufgabe 3.1) jede beliebige andere $n$-stellige Wahrheitswertfunktion darzustellen.
|
||||||
|
|
||||||
|
// Da sich die Operationen, die für die Darstellungen notwendig sind, schaltungstechnisch gut realisieren lassen, bedeutet dies, daß wir allein mit den drei angegebenen Grundschaltungen (Bilder 3.1, 3.2, 3.3) als Bausteine jede beliebige $n$-stellige Wahrheitswertfunktion technisch realisieren können.
|
||||||
|
|
||||||
|
// Bisher haben wir nur die technischen Realisierungen der grundlegenden Verknüpfungen angegeben.
|
||||||
|
|
||||||
|
// Im allgemeinen steht aber die Frage, komplizierte Aussagenverbindungen auf der Basis dieser Grundverknüpfungen schaltungstechnisch zu realisieren und dabei möglichst geringen Aufwand zu treiben. Wir wollen das an zwei Beispielen illustrieren. Die Aussagenverbindungen
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// p \wedge(p \vee q) \text { und } p
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// bzw.
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// p \vee(q \wedge r) \text { und }(p \vee q) \wedge(p \vee r)
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// besitzen die gleichen Wahrheitstabellen, realisieren also logisch gleichwertige Aussagenverbindungen. Das hat zur Folge, daß die Wahrheitswerttabellen der Aussagenverbindungen
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// \begin{aligned}
|
||||||
|
// & p \wedge(p \vee q) \leftrightarrow p \\
|
||||||
|
// & p \vee(q \wedge r) \leftrightarrow(p \vee q) \wedge(p \vee r)
|
||||||
|
// \end{aligned}
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// in der letzten Zeile jeweils nur das Symbol $W$ besitzen, also immer wahre Aussagen darstellen. (Wir werden in Abschnitt 4.1.1. auf diese wichtige Klasse der Aussagenverbindungen, die Tautologien, ausführlich zu sprechen kommen.)
|
||||||
|
|
||||||
|
// \begin{table}
|
||||||
|
// \captionsetup{labelformat=empty}
|
||||||
|
// \caption{Tabelle 3.9}
|
||||||
|
// \begin{tabular}{l|llll}
|
||||||
|
// $p$ & $F$ & $W$ & $F$ & $W$ \\
|
||||||
|
// $q$ & $F$ & $F$ & $W$ & $W$ \\
|
||||||
|
// \hline$r=p \vee q$ & $F$ & $W$ & $W$ & $W$ \\
|
||||||
|
// $s=p \wedge r$ & $F$ & $W$ & $F$ & $W$ \\
|
||||||
|
// $p$ & $F$ & $W$ & $F$ & $W$ \\
|
||||||
|
// \hline$(p \wedge r) \leftrightarrow p$ & $W$ & $W$ & $W$ & $W$
|
||||||
|
// \end{tabular}
|
||||||
|
// \end{table}
|
||||||
|
|
||||||
|
|
||||||
|
// \begin{table}
|
||||||
|
// \captionsetup{labelformat=empty}
|
||||||
|
// \caption{Tabelle 3.10}
|
||||||
|
// \begin{tabular}{l|llllllll}
|
||||||
|
// $p$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ \\
|
||||||
|
// $q$ & $F$ & $F$ & $W$ & $W$ & $F$ & $F$ & $W$ & $W$ \\
|
||||||
|
// $r$ & $F$ & $F$ & $F$ & $F$ & $W$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline$s=q \wedge r$ & $F$ & $F$ & $F$ & $F$ & $F$ & $F$ & $W$ & $W$ \\
|
||||||
|
// \hline$p \vee s$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline$t=p \vee r$ & $F$ & $W$ & $F$ & $W$ & $W$ & $W$ & $W$ & $W$ \\
|
||||||
|
// $u=p \vee q$ & $F$ & $W$ & $W$ & $W$ & $F$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline$t \wedge u$ & $F$ & $W$ & $F$ & $W$ & $F$ & $W$ & $W$ & $W$ \\
|
||||||
|
// \hline$p \vee s \leftrightarrow t \wedge u$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$ & $W$
|
||||||
|
// \end{tabular}$\leftarrow$
|
||||||
|
// \end{table}
|
||||||
|
|
||||||
|
// Somit können wir die betrachteten Aussageverbindungen durch Schaltungen realisieren, die jeweils dasselbe leisten (siehe Bild 3.4 und 3.5). Man braucht sicherlich nicht gesondert zu erwähnen, welches die jeweils einfachere Schaltung ist.
|
||||||
|
|
||||||
|
// Bild 3.5. Logisch gleichwertige Aussagenverbindungen $p \vee(q \wedge r),(p \vee q) \wedge(p \vee r)$
|
||||||
|
|
||||||
|
// Gelegentlich vereinfacht man die Schreibweise von Ausdrücken der Form wie z. B.
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// p \vee(q \wedge r)
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// indem man sogenannte Vorrang- oder Klammereinsparungsregeln vereinbart. So hat die Konjunktion $\wedge$ Vorrang vor $\vee$, d. h. man kann anstelle (3.5) auch
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// p \vee q \wedge r
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// schreiben.
|
||||||
|
// Es sei noch bemerkt, daß Relaiskontaktschaltungen nicht die einzigen technischen Realisierungen der Wahrheitswertfunktion sind.
|
||||||
|
|
||||||
|
// Die Anwendung der Logik beschränkt sich heute keineswegs mehr auf die Schaltalgebra, d. h. die mathematische Beschreibung, Analyse, Synthese und Optimierung von technischen Schaltungen. Es ist zweckmäßig, die Aussagenlogik auch zur Beschreibung anderer Sachverhalte aus verschiedenen Wissenschaften anzuwenden.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 4. Einige Beweisprinzipien
|
||||||
|
|
||||||
|
// Die nachfolgenden Ausführungen enthalten einige wichtige logische Schlüsse und die Methode der vollständigen Induktion als Beweisprinzipien. Die logischen Schlüsse, welche zuerst behandelt werden, knüpfen unmittelbar an die Grundbegriffe der Logik aus Abschnitt 3. an und sind selbst ein wesentlicher Bestandteil der Logik. Wir werden sie hier an Beispielen erläutern.
|
||||||
|
// 4.1 Logische Schlüsse
|
||||||
|
|
||||||
|
// Beim Beweisen mathematischer Aussagen steht häufig das Problem, daß nicht sofort eine Beweisidee vorhanden ist oder ein direkter Beweis entweder nur schwer oder nicht möglich ist. Betrachten wir zur Erläuterung folgendes
|
||||||
|
|
||||||
|
// Beispiel 4.1: Man beweise: Wenn $\alpha$ und $\beta$ zwei gleiche Winkel über einer Strecke $\overline{P_1 P_2}$ sind, so geht der durch die Punkte $P_1, P_2, P_3$ bestimmte Kreis $K$ auch durch den Punkt $P_4$. (In Bild 4.1 ist zu sehen, daß der Winkel bei $P_3$ mit $\alpha$, der Winkel bei $P_4$ mit $\beta$ bezeichnet wird.)
|
||||||
|
|
||||||
|
// Mit den Hilfsmitteln, die in der Logik bereitgestellt werden, sind wir bereits in der Lage, die zu beweisende mathematische Aussage als Aussagenverbindung darzustellen. Bezeichnen nämlich
|
||||||
|
// $p=,, \alpha$ und $\beta$ sind zwei gleiche Winkel über $\overline{P_1 P_2}$ "
|
||||||
|
// $q=,, P_4$ liegt auf dem Kreis $K$ "
|
||||||
|
// zweiwertige Aussagen, so haben wir zu beweisen, daß
|
||||||
|
// $p \rightarrow q$ eine wahre Aussage ist.
|
||||||
|
// Ein direkter Beweis dieser Implikation gelingt nicht ohne weiteres, und deshalb wird der Beweis mit Hilfe einer Methode des indirekten Beweisens geführt. Man zeigt:
|
||||||
|
|
||||||
|
// Bild 4.1
|
||||||
|
|
||||||
|
// Bild 4.2
|
||||||
|
|
||||||
|
// Wenn der Punkt $P_4$ nicht auf dem Kreis $K$ liegt, so ist $\alpha$ ungleich $\beta$. Wie Bild 4.2 zeigt, zerfällt die Aussage $\bar{q}=,, P_4$ liegt nicht auf dem Kreis $K$ " in zwei Fälle:
|
||||||
|
// $\bar{q}_1=,, P_4$ liegt außerhalb $K$ "
|
||||||
|
// $\bar{q}_2=,, P_4$ liegt innerhalb $K$ ",
|
||||||
|
// d. h. es gilt
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// \bar{q}=\text { entweder } \bar{q}_1 \text { oder } \bar{q}_2 .
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// In jedem dieser beiden Fälle kann man beweisen (der Beweis wird unter Verwendung des Peripheriewinkelsatzes und eines Satzes über Außenwinkel am Dreieck geführt), da $\beta \alpha$ ungleich $\beta$ ist, d. h.
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// \bar{q}_1 \rightarrow \bar{p} \quad \text { und } \quad \bar{q}_2 \rightarrow \bar{p}
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// sind wahre Aussagen.
|
||||||
|
// Aufgabe 4.1: Man beweise, daß $\bar{q}_1 \rightarrow \bar{p}$ und $\bar{q}_2 \rightarrow \bar{p}$ wahre Aussagen sind.
|
||||||
|
// Die Frage ist nun, wieso wir auf Grund dessen, daß $\bar{q}_1 \rightarrow \bar{p}$ und $\bar{q}_2 \rightarrow \bar{p}$ wahre Aussagen sind, darauf schließen können, daß auch $p \rightarrow q$ eine wahre Aussage ist. Der wesentliche Schritt hierbei ist, daß wir begründen:
|
||||||
|
|
||||||
|
// Es genügt zu wissen, daß $\bar{q} \rightarrow \bar{p}, \bar{q} \rightarrow \bar{p}=$ Wenn ,, $P_4$ nicht auf $K^{\prime \prime}$ liegt, so gilt „Winkel $\alpha$ ist verschieden Winkel $\beta$ ", eine wahre Aussage ist, um folgern zu können, daß auch $p \rightarrow q$ wahr ist. Falls eine solche Begründung möglich ist, gilt sie natürlich für alle Beispiele, in denen man den Beweis von $p \rightarrow q$ durch den Beweis von $\bar{q} \rightarrow \bar{p}$ ersetzen möchte. Wir verlassen also zunächst das Beispiel und stellen uns unter $p, q$ beliebige Aussagen vor.
|
||||||
|
|
||||||
|
// Die oben genannte Begründung kann man wie folgt formulieren:
|
||||||
|
// I. Es ist zu zeigen, daß $\bar{q} \rightarrow \bar{p}$ eine wahre Aussage ist.
|
||||||
|
// II. Die Aussagenverbindung
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// (\bar{q} \rightarrow \bar{p}) \rightarrow(p \rightarrow q)
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// ist immer eine wahre Aussage, ganz gleich welche konkreten (wahren oder falschen) Aussagen $p$ und $q$ darstellen (Beweis s. Tabelle 4.1).
|
||||||
|
// III. Demzufolge ist auch $(\bar{q} \rightarrow \bar{p}) \wedge((\bar{q} \rightarrow \bar{p}) \rightarrow(p \rightarrow q))$ als Konjunktion zweier wahrer Aussagen, wiederum wahr (Tabelle 3.3).
|
||||||
|
// IV. Weil die Aussage
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// (s \wedge(s \rightarrow t)) \rightarrow t
|
||||||
|
// $$
|
||||||
|
|
||||||
|
// unabhängig davon, welche konkreten (wahren oder falschen) Aussagen $s, t$ in diese Verbindung eingehen, immer wahr ist, können wir mit $s=\bar{q} \rightarrow \bar{p}$ und $t=p \rightarrow q$ auf die Wahrheit. der Aussage $p \rightarrow q$ schließen (Beweis siehe Tabelle 4.2). (Auf Grund der Wahrheitstabelle der Implikation (Tabelle 3.5) muß bei Richtigkeit der Voraussetzung und der Implikation auch die Behauptung wahr sein.)
|
||||||
|
|
||||||
|
// Sicherlich ist diese Begründung beim ersten Lesen schwer zu verstehen. Andererseits stellt sie aber das Muster für das Verständnis aller logischen Schlüsse dar und sollte deshalb gut durchdacht werden. In den Punkten II. und IV. sind zwei Behauptungen formuliert, die die entscheidende Rolle für die Stichhaltigkeit unserer Begründung spielen.
|
||||||
|
|
||||||
|
// Wir behaupten, daß die Aussagenverbindungen (4.1) und (4.2) immer wahre Aussagen darstellen. Den Beweis dafür können wir leicht mit Hilfe der Wahrheitstabellen führen.
|
||||||
|
|
||||||
|
// In der letzten Zeile dieser Wahrheitstabellen steht jeweils nur das Symbol $W, \mathrm{~d} . \mathrm{h}$. die Aussagenverbindungen sind immer wahr, ganz gleich ob $p, q, r, s$ wahr oder falsch sind.
|
||||||
|
|
||||||
|
// -26-
|
||||||
@@ -184,7 +184,7 @@ place(
|
|||||||
// Text
|
// Text
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -1cm,
|
dx: -12mm,
|
||||||
dy: 2.6cm,
|
dy: 2.6cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
@@ -193,7 +193,7 @@ place(
|
|||||||
)
|
)
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -0.9cm,
|
dx: -12mm,
|
||||||
dy: 4.7cm,
|
dy: 4.7cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
@@ -202,7 +202,7 @@ place(
|
|||||||
)
|
)
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -0.4cm,
|
dx: -0.7cm,
|
||||||
dy: 5.4cm,
|
dy: 5.4cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
@@ -212,7 +212,7 @@ place(
|
|||||||
|
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -0.4cm,
|
dx: -0.7cm,
|
||||||
dy: 6.1cm,
|
dy: 6.1cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
@@ -221,7 +221,7 @@ place(
|
|||||||
|
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -0.4cm,
|
dx: -0.7cm,
|
||||||
dy: 6.8cm,
|
dy: 6.8cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
@@ -230,7 +230,7 @@ place(
|
|||||||
|
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -0.4cm,
|
dx: -0.7cm,
|
||||||
dy: 10cm,
|
dy: 10cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
@@ -239,7 +239,7 @@ place(
|
|||||||
|
|
||||||
place(
|
place(
|
||||||
top + left,
|
top + left,
|
||||||
dx: -0.4cm,
|
dx: -0.7cm,
|
||||||
dy: 11.5cm,
|
dy: 11.5cm,
|
||||||
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
box(width: 150%, {
|
box(width: 150%, {
|
||||||
|
|||||||
797
Band2/Band2.typ
Normal file
797
Band2/Band2.typ
Normal file
@@ -0,0 +1,797 @@
|
|||||||
|
#import "@preview/cetz:0.4.2": * //Grafiken
|
||||||
|
#import "@preview/fletcher:0.5.8" as fletcher: diagram, node, edge
|
||||||
|
|
||||||
|
#import "@preview/marge:0.1.0": sidenote
|
||||||
|
|
||||||
|
#import "@preview/itemize:0.2.0" as el
|
||||||
|
|
||||||
|
#import "@preview/eqalc:0.1.3": *
|
||||||
|
|
||||||
|
#import "deckblatt.typ": deckblatt
|
||||||
|
|
||||||
|
//#import "abhaengigkeit.typ": abhaengigkeit
|
||||||
|
|
||||||
|
#let einruecken(abstand, inhalt) = pad(left: abstand, inhalt)
|
||||||
|
|
||||||
|
#let def-counter = counter("definition")
|
||||||
|
|
||||||
|
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||||
|
|
||||||
|
|
||||||
|
#let def-counter = counter("definition")
|
||||||
|
|
||||||
|
// Zähler bei jedem neuen Kapitel zurücksetzen
|
||||||
|
#show heading.where(level: 1): it => {
|
||||||
|
it
|
||||||
|
def-counter.update(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
#let definition(title: none, body, label: none) = context {
|
||||||
|
def-counter.step()
|
||||||
|
|
||||||
|
let h1-num = counter(heading).at(here()).first()
|
||||||
|
let d-num = def-counter.at(here()).first()
|
||||||
|
let full-num = [#h1-num.#d-num]
|
||||||
|
|
||||||
|
// Die Figure wird erstellt und das Label direkt angehängt
|
||||||
|
[
|
||||||
|
#figure(
|
||||||
|
block(width: 100%, align(left)[
|
||||||
|
*Definition #full-num*: #if title != none [(#title)] #body
|
||||||
|
]),
|
||||||
|
kind: "definition",
|
||||||
|
supplement: [D.],
|
||||||
|
numbering: _ => full-num,
|
||||||
|
) #label
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
// Zähler bei jedem neuen Kapitel (Ebene 1) zurücksetzen
|
||||||
|
#show heading.where(level: 1): it => {
|
||||||
|
it
|
||||||
|
def-counter.update(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#let sn-base = sidenote
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#let snr(it) = sn-base(side: right, padding: 1em)[
|
||||||
|
#set text(size: 1.3em, weight: "bold")
|
||||||
|
#it
|
||||||
|
]
|
||||||
|
#let snl(it) = sn-base(side: left, padding: 1em)[
|
||||||
|
#set text(size: 1.3em, weight: "bold")
|
||||||
|
#it
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//#import "definitionen.typ": *
|
||||||
|
|
||||||
|
#set text(
|
||||||
|
font: "Lato", //Serifenlose Schrift
|
||||||
|
size: 8.5pt,
|
||||||
|
lang: "de", //Deutsche Spracheinstellungen
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
#set page(
|
||||||
|
width:162mm,
|
||||||
|
height: 230mm,
|
||||||
|
margin: 20mm,
|
||||||
|
)
|
||||||
|
|
||||||
|
#set par(
|
||||||
|
justify: true, //Blocksatz
|
||||||
|
leading: 0.55em,
|
||||||
|
)
|
||||||
|
#let tt = "PFORR \u{2219} SCHIROTZEK"
|
||||||
|
#let meinContent = [*Band 7* #sym.dot.c _Grundlagen_]
|
||||||
|
// Einfach die Funktion aufrufen
|
||||||
|
#deckblatt(bandnr: "2", autor: tt, titel: "Differential- und Integralrechnung\nfür Funktionen\nmit einer Variablen")
|
||||||
|
#pagebreak()
|
||||||
|
|
||||||
|
|
||||||
|
#set page(
|
||||||
|
width:162mm,
|
||||||
|
height: 230mm,
|
||||||
|
margin: 20mm,
|
||||||
|
)
|
||||||
|
|
||||||
|
#set par(
|
||||||
|
justify: true, //Blocksatz
|
||||||
|
leading: 0.55em,
|
||||||
|
)
|
||||||
|
|
||||||
|
#set page(
|
||||||
|
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||||
|
margin: (
|
||||||
|
top: 2mm,
|
||||||
|
bottom: 2mm,
|
||||||
|
x: 10mm,
|
||||||
|
),
|
||||||
|
width:162mm,
|
||||||
|
height: 230mm,
|
||||||
|
)
|
||||||
|
#heading(outlined: false)[Abhängigkeitsgraph]
|
||||||
|
/* #let mynode(pos, text1, text2, name) = {
|
||||||
|
node(pos, [#text( size:1.7em, text2) \ #text1], name:name, stroke: 1pt, corner-radius: 0mm,
|
||||||
|
height: 3.5em, width:10em)
|
||||||
|
/* Dashed separator from east to west */
|
||||||
|
//edge(label(str(name)+".west"), label(str(name)+".east"),"-", stroke: 0.2mm, dash:(1mm, 0.8mm))
|
||||||
|
} */
|
||||||
|
|
||||||
|
#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)
|
||||||
|
}
|
||||||
|
|
||||||
|
#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 => {
|
||||||
|
set block(below: if it.level == 1 { 2em } else { 1em })
|
||||||
|
it
|
||||||
|
}
|
||||||
|
|
||||||
|
#counter(page).update(1)
|
||||||
|
#pagebreak()
|
||||||
|
#set text(font: "Atkinson Hyperlegible Next")
|
||||||
|
|
||||||
|
#set text(
|
||||||
|
font: "Atkinson Hyperlegible Next", //Serifenlose Schrift
|
||||||
|
size: 9pt,
|
||||||
|
lang: "de", //Deutsche Spracheinstellungen
|
||||||
|
)
|
||||||
|
#set par(
|
||||||
|
justify: true,
|
||||||
|
leading: 0.55em,
|
||||||
|
)
|
||||||
|
|
||||||
|
#set page(
|
||||||
|
//background: grid(columns: (1mm,) * 162, rows: (1mm,) * 230, stroke: 0.1mm),
|
||||||
|
margin: (
|
||||||
|
top: 18mm,
|
||||||
|
bottom: 20mm,
|
||||||
|
x: 15mm,
|
||||||
|
),
|
||||||
|
width:162mm,
|
||||||
|
height: 230mm,
|
||||||
|
|
||||||
|
)
|
||||||
|
//#set heading(numbering: "1.1.")
|
||||||
|
|
||||||
|
#set outline(indent: auto)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#set page(
|
||||||
|
header: context {
|
||||||
|
// 1. Kapitelstart-Check (wie zuvor)
|
||||||
|
let h1_on_page = query(heading.where(level: 1))
|
||||||
|
.any(it => it.location().page() == here().page())
|
||||||
|
if h1_on_page { return none }
|
||||||
|
|
||||||
|
let page_num = here().page()
|
||||||
|
|
||||||
|
// 2. Aktuelle Überschriften finden
|
||||||
|
let h1_current = query(heading.where(level: 1))
|
||||||
|
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||||
|
let h2_current = query(heading.where(level: 2))
|
||||||
|
.filter(it => it.location().page() <= page_num).at(-1, default: none)
|
||||||
|
|
||||||
|
// Hilfsfunktion: Nummer + Text zusammenfügen
|
||||||
|
let format-head(h) = {
|
||||||
|
if h != none {
|
||||||
|
// Falls die Überschrift eine Nummerierung hat, diese anzeigen
|
||||||
|
if h.numbering != none {
|
||||||
|
numbering(h.numbering, ..counter(heading).at(h.location()))
|
||||||
|
[ ] // Kleiner Abstand
|
||||||
|
}
|
||||||
|
h.body
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. Layout (Zahlen außen, Text innen oder wie gewünscht)
|
||||||
|
set text(size: 9pt, style: "italic") // Header dezent formatieren
|
||||||
|
|
||||||
|
if calc.even(page_num) {
|
||||||
|
// Gerade Seite: [Seite] [Kapitelnummer Text]
|
||||||
|
grid(
|
||||||
|
columns: (20pt, 1fr),
|
||||||
|
align(left)[#page_num],
|
||||||
|
align(right)[#format-head(h1_current)]
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
// Ungerade Seite: [Unterkapitelnummer Text] [Seite]
|
||||||
|
grid(
|
||||||
|
columns: (1fr, 20pt),
|
||||||
|
align(left)[#format-head(h2_current)],
|
||||||
|
align(right)[#page_num]
|
||||||
|
)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
)
|
||||||
|
|
||||||
|
#show selector(<nonumber>): set heading(numbering: none)
|
||||||
|
|
||||||
|
= Vorwort <nonumber>
|
||||||
|
Dem vorliegenden Band 2 dieser Lehrbuchreihe kommt ebenso wie dem Band 1 insofern eine besondere Bedeutung innerhalb des gesamten Lehrwerkes zu, als nahezu alle anderen Bände darauf aufbauen.
|
||||||
|
|
||||||
|
Ein Teil der in diesem Buch behandelten Gegenstände ist auch im Lehrplan unserer Oberschulen enthalten. Ein Weglassen des dort bereits Dargebotenen hätte aber zu einer unzusammenhängenden Darstellung des Gebietes geführt; außerdem wäre nicht gewährleistet, daß alle Leser mit den gleichen Voraussetzungen die weiteren Bände studieren können.
|
||||||
|
|
||||||
|
Eine korrekte Anwendung mathematischer Methoden setzt die genaue Kenntnis der zugrunde liegenden Begriffe voraus. Es muß dem Leser daher dringend nahegelegt werden, sich um ein volles Verständnis der eingeführten Begriffe zu bemühen. Anhand von vielen Beispielen wird gezeigt, wie mathematische Begriffe in den Anwendungen zu interpretieren sind. Ein gründliches Studium des Textes und das selbständige Lösen der über 100 Übungsaufgaben sollte den Leser in die Lage versetzen, die spezifische Anwendbarkeit der behandelten Begriffe und Methoden in seinem Fachgebiet selbst zu erkennen.
|
||||||
|
|
||||||
|
Im Interesse einer straffen Darstellung mußte auf eine Reihe von Beweisen verzichtet werden. Alle Aussagen werden aber erläutert und - soweit möglich - geometrisch interpretiert.
|
||||||
|
|
||||||
|
Für wertvolle Hinweise danken wir vor allem dem Herausgeber, Herrn Prof. Dr. O. Greuel (Mittweida), den Gutachtern, Herrn Prof. Dr. W. Dück (Berlin) und Herrn Prof. Dr. H. Goering (Magdeburg), sowie Herrn Prof. Dr. G. Opitz (Dresden). Besonderer Dank gebührt Frau I. Kamenz für das sorgfältige Schreiben des Manuskripts. Dem Verlag sei für die gute Zusammenarbeit herzlich gedankt.
|
||||||
|
|
||||||
|
Dresden, Januar 1973 #h(1fr) E. A. Pforr
|
||||||
|
|
||||||
|
#h(1fr) W. Schirotzek
|
||||||
|
|
||||||
|
= Vorwort zur 6. Auflage <nonumber>
|
||||||
|
In dieser Auflage wurden gegenüber der vorangegangenen an zwei Stellen inhaltliche Veränderungen größeren Umfangs vorgenommen. Im Hinblick auf den Einsatz von elektronischen Rechnern, insbesondere auch von Taschenrechnern, war die Darstellung der Näherungsverfahren (Abschnitt 7.7.) zu überarbeiten. Der algorithmische Aspekt wurde stärker herausgearbeitet, auf die Formulierung von Algorithmen in einer Programmiersprache jedoch verzichtet. Außerdem wurde der Abschnitt über elliptische Integrale (9.3.5.) erweitert.
|
||||||
|
|
||||||
|
Für die wertvolle Unterstützung bei der Überarbeitung von Abschnitt 7.7. sei Herrn Dr. sc. nat. S. Dietze (Dresden) herzlich gedankt.
|
||||||
|
|
||||||
|
Dresden, Juli 1985 #h(1fr) E. A. Pforr
|
||||||
|
|
||||||
|
#h(1fr)W. Schirotzek
|
||||||
|
|
||||||
|
#pagebreak()
|
||||||
|
#outline()
|
||||||
|
#pagebreak()
|
||||||
|
|
||||||
|
#set heading(numbering: "1.1.1.")
|
||||||
|
TEIL 1: DIFFERENTIALRECHNUNG
|
||||||
|
|
||||||
|
= Problemstellung und Historisches
|
||||||
|
|
||||||
|
Zur mathematischen Beschreibung von Naturvorgängen, aber auch von technischen und ökonomischen Prozessen ist die Differentialrechnung ein unentbehrliches Hilfsmittel. Es ist daher nicht verwunderlich, daß gerade von Naturforschern entscheidende Anstöße zu ihrer Entwicklung ausgingen. Wichtige Vorarbeiten wurden im 16. und 17. Jahrhundert geleistet. Die eigentlichen Urheber dieser Disziplin sind aber Isaac Newton (1643-1727) und Gottfried Wilhelm Leibniz (1646-1716), die die Differential- (und Integral-) Rechnung etwa gleichzeitig und voneinander unabhängig zu einem Kalkül entwickelten. Newton schuf seine "Fluxionsrechnung“ bei der Ableitung des Gravitationsgesetzes aus den Keplerschen Gesetzen der Planetenbewegung. Leibniz, der auch das Symbol ${d y}/{d x}$ einführte, ging von dem Problem aus, an eine Kurve in einem vorgegebenen Kurvenpunkt die Tangente zu legen ("Tangentenproblem“). Die Arbeiten dieser genialen Forscher lösten eine außerordentlich rasche Entwicklung der Mathematik aus, die ihrerseits in hohem Maße befruchtend auf andere Wissenschaften wirkte. Entscheidenden Anteil an dieser Entwicklung hatten die Brüder Jakob und Johann Bernoulli (1654-1705 bzw. 1667-1748), auf deren Vorlesungen auch das erste, 1696 erschienene Lehrbuch der Differential- und Integralrechnung des Marquis de l'Hospital (1661-1704) basiert.
|
||||||
|
|
||||||
|
Wie wir noch sehen werden, beruht die Differentialrechnung, ebenso wie die Integralrechnung, auf dem Begriff des _Grenzwertes_. Zeitlich ging jedoch die kalkülmäßige Entwicklung der Differential- und Integralrechnung der strengen Begriffsdefinition voran. Daraus entstanden immer häufiger Schwierigkeiten und Unstimmigkeiten, die sich zunächst nicht überwinden ließen. Schließlich führte Jean le Rond d'Alembert (1717-1783) den Grenzwertbegriff in die Mathematik ein. Doch erst Bernard Bolzano (1781-1848) und Augustin Louis Cauchy (1789-1857) wendeten diesen Begriff konsequent an und stellten damit die Infinitesimalrechnung (zu der man neben der Differential- und Integralrechnung auch die Theorie der unendlichen Reihen zählt) auf ein solides Fundament.
|
||||||
|
|
||||||
|
Vor einem Aufbau der Differentialrechnung ist also der Grenzwertbegriff für Funktionen zu behandeln. Zwangsläufig wird man damit zum Begriff der _Stetigkeit_ geführt. Die eigentliche Differentialrechnung beginnt mit der Definition der _Ableitung_ einer Funktion.
|
||||||
|
|
||||||
|
Alle drei Begriffe werden zur exakten Beschreibung bestimmter Sachverhalte in den unterschiedlichsten Gebieten herangezogen. So kann man mit dem Grenzwertbegriff z. B. das Verhalten einer zeitabhängigen Größe, "nach sehr langer Zeit“ charakterisieren, mit dem Begriff der Stetigkeit bzw. Unstetigkeit den "kontinuierlichen“ bzw. "sprunghaften“ Ablauf eines Vorgangs erfassen und mit der Ableitung die "Änderungsgeschwindigkeit" eines Prożesses beschreiben.
|
||||||
|
|
||||||
|
Die mathematischen Möglichkeiten reichen jedoch über die unmittelbare Anwendbarkeit dieser Begriffe weit hinaus. So werden wir unter Verwendung der Differentialrechnung u.a. Näherungsformeln für (nichtrationale) Funktionen herleiten, Methoden zur Ermittlung von Extremwerten angeben und Verfahren zur numerischen Lösung von Gleichungen behandeln. Dem "Praktiker“ werden damit Hilfsmittel zur Verfügung gestellt, auf die er fortlaufend zurückgreifen muß.
|
||||||
|
|
||||||
|
#pagebreak()
|
||||||
|
|
||||||
|
= Grenzwerte
|
||||||
|
|
||||||
|
//== 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
|
||||||
|
// 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$ :
|
||||||
|
|
||||||
|
// $$
|
||||||
|
// 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$
|
||||||
|
|
||||||
|
|
||||||
|
#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$),
|
||||||
|
)
|
||||||
|
|
||||||
0
Band2/Grafiken/B2.1.typ
Normal file
0
Band2/Grafiken/B2.1.typ
Normal file
0
Band2/Grafiken/B2.2.typ
Normal file
0
Band2/Grafiken/B2.2.typ
Normal file
0
Band2/Grafiken/B2.3.typ
Normal file
0
Band2/Grafiken/B2.3.typ
Normal file
637
Band2/Grafiken/Grafiken.typ
Normal file
637
Band2/Grafiken/Grafiken.typ
Normal file
@@ -0,0 +1,637 @@
|
|||||||
|
// #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")
|
||||||
|
})
|
||||||
|
|
||||||
250
Band2/deckblatt.typ
Normal file
250
Band2/deckblatt.typ
Normal file
@@ -0,0 +1,250 @@
|
|||||||
|
#let deckblatt(bandnr: "", autor: "", titel: "") = {
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -20mm, // Hebt den linken Rand auf
|
||||||
|
dy: -20mm, // Abstand von der Oberkante des Blattes
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 163mm, // Exakte Breite A4
|
||||||
|
height: 230mm,
|
||||||
|
fill: rgb(52.2%, 87.8%, 78.4%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
//stroke: 0.5pt + red,
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -20mm,
|
||||||
|
dy: 12mm,
|
||||||
|
//Linie
|
||||||
|
rect(
|
||||||
|
width: 162mm,
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(100%, 100%, 87.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm,
|
||||||
|
dy: 1.4cm,
|
||||||
|
rect(
|
||||||
|
width: 27cm, height: 2mm,
|
||||||
|
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm,
|
||||||
|
dy: 1.6cm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm, // Exakte Breite A4
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(100%, 100%, 87.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
//stroke: 0.5pt + red,
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm,
|
||||||
|
dy: 1.8cm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm, // Exakte Breite A4
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
//stroke: 0.5pt + red,
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm, // Hebt den linken Rand auf
|
||||||
|
dy: 2cm, // Abstand von der Oberkante des Blattes
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm, // Exakte Breite A4
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(100%, 100%, 87.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
//stroke: 0.5pt + red,
|
||||||
|
))
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left, // Wo auf der Seite (oder im Absatz)
|
||||||
|
dx: 94mm, // Versatz von links
|
||||||
|
dy: 85mm, // Versatz von oben
|
||||||
|
{
|
||||||
|
import "@preview/cetz:0.3.1"
|
||||||
|
cetz.canvas({
|
||||||
|
import cetz.draw: *
|
||||||
|
// Halbkreis
|
||||||
|
arc((x:0,y:0), start: 0deg, stop: -180deg, radius: 17mm, fill: rgb(100%, 100%, 87.1%), stroke: none)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm, // Hebt den linken Rand auf
|
||||||
|
dy: 2.2cm, // Abstand von der Oberkante des Blattes
|
||||||
|
rect(
|
||||||
|
width: 230cm, // Exakte Breite A4
|
||||||
|
height: 58mm,
|
||||||
|
fill: rgb(12.9%, 18%, 32.9%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
//stroke: 0.5pt + red,
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm, // Hebt den linken Rand auf
|
||||||
|
dy: 80mm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm,
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(100%, 100%, 87.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm,
|
||||||
|
dy: 82mm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm,
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm,
|
||||||
|
dy: 84mm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm,
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(100%, 100%, 87.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm,
|
||||||
|
dy: 86mm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm,
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(17.3%, 19.6%, 36.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -2.5cm, // Hebt den linken Rand auf
|
||||||
|
dy: 88mm,
|
||||||
|
|
||||||
|
rect(
|
||||||
|
width: 27cm,
|
||||||
|
height: 2mm,
|
||||||
|
fill: rgb(100%, 100%, 87.1%),
|
||||||
|
inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
))
|
||||||
|
|
||||||
|
|
||||||
|
/* place(
|
||||||
|
top + left,
|
||||||
|
dx: 7.5cm, // Hebt den linken Rand auf
|
||||||
|
dy: 62mm,
|
||||||
|
|
||||||
|
circle( radius: 15mm, fill: rgb(100%, 32.2%, 18.8%)),
|
||||||
|
|
||||||
|
//height: 2mm,
|
||||||
|
//fill: rgb(100%, 100%, 87.1%),
|
||||||
|
//inset: (right: 1cm, left: 7mm, top: 1cm),
|
||||||
|
) */
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: 95mm,
|
||||||
|
dy: 68mm,
|
||||||
|
box(width: 30mm, height: 30mm)[
|
||||||
|
#circle(radius: 16mm, fill: rgb(100%, 32.2%, 18.8%), stroke: none)
|
||||||
|
#place(center + horizon)[
|
||||||
|
// Wir erzwingen hier ALLES neu
|
||||||
|
#set text(font: "Fira Math", size: 48pt, fill: black)
|
||||||
|
#bandnr
|
||||||
|
]
|
||||||
|
]
|
||||||
|
/* {
|
||||||
|
set align(center + horizon)
|
||||||
|
text(weight: "bold",fill: black, size: 45pt)[$1$]
|
||||||
|
}*/
|
||||||
|
)
|
||||||
|
// Text
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -12mm,
|
||||||
|
dy: 2.6cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
text(7.5em, fill: rgb(100%, 32.2%, 18.8%), weight: "bold",style: "italic", tracking: 0.06em, font: "Lato")[MATHEMATIK]
|
||||||
|
})
|
||||||
|
)
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -12mm,
|
||||||
|
dy: 4.7cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[FÜR INGENIEURE]
|
||||||
|
})
|
||||||
|
)
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -0.7cm,
|
||||||
|
dy: 5.4cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[NATURWISSENSCHAFTLER]
|
||||||
|
})
|
||||||
|
)
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -0.7cm,
|
||||||
|
dy: 6.1cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[ÖKONOMEN]
|
||||||
|
}))
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -0.7cm,
|
||||||
|
dy: 6.8cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
text(2em, fill: rgb(100%, 100%, 87.1%), weight: "bold", tracking: 0em, font: "Lato")[LANDWIRTE]
|
||||||
|
}))
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -0.7cm,
|
||||||
|
dy: 10cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
text(1.25em, fill: rgb(3.1%, 20%, 29%), weight: "bold", tracking: 0.05em, font: "Lato")[#autor]
|
||||||
|
}))
|
||||||
|
|
||||||
|
place(
|
||||||
|
top + left,
|
||||||
|
dx: -0.7cm,
|
||||||
|
dy: 11.5cm,
|
||||||
|
// box mit width: auto erlaubt der Zeile, beliebig lang zu werden
|
||||||
|
box(width: 150%, {
|
||||||
|
set par(leading: 1em)
|
||||||
|
text(1.9em, fill: rgb(3.1%, 20%, 29%),weight: "bold", tracking: 0.0em, font: "Lato")[#titel]
|
||||||
|
}))
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user