From 06d365f8caad7dbea853a8565497a913d51688b1 Mon Sep 17 00:00:00 2001 From: levi Date: Sat, 7 Feb 2026 12:41:24 +0100 Subject: [PATCH] Bauelemente schmente (Eintore bald fertig) --- src/cheatsheets/Schaltungstheorie.typ | 457 ++++++++++++++++---------- 1 file changed, 275 insertions(+), 182 deletions(-) diff --git a/src/cheatsheets/Schaltungstheorie.typ b/src/cheatsheets/Schaltungstheorie.typ index 961a94c..f8b5128 100644 --- a/src/cheatsheets/Schaltungstheorie.typ +++ b/src/cheatsheets/Schaltungstheorie.typ @@ -412,7 +412,280 @@ columns: (1fr, 1fr, 1fr), stroke: none, align: center, - table.header([*Zeichen*], [*Gleichung*], [*Abbildung*]), + table.header([*Zeichen*], [*Gleichungen*], [*Abbildung*]), + + // Nullator + [ + Nullator + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + + })) + ], + [ + $u = 0$ + + $i = 0$ + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + + plot.add(((0,0), (0,0)), + mark-style: (stroke: red, fill: red), mark: "o", ) + }) + })) + ], + + // Norator + [ + Norator + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + + })) + ], + [ + u = beliebig + i = beliebig + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + plot.add-contour(x-domain: (-3, 3), y-domain: (-3, 3), + style: (fill: rgb("#f7000832"), stroke: none), + fill: true, + op: "<", // Find contours where data < z + z: (0,100000), // Z values to find contours for + (x, y) => calc.sqrt(x*x + y * y)) + }) + })) + ], + + table.hline(), + + // Kurzschluss + [ + Kurzschluss + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + + node("n1", (0, 0)) + node("n2", (1, 0)) + wire((0,0), (1,0)) + wire((-0.25,0), (0,0)) + wire((1,0), (1.25,0)) + + })) + ], + [ + $u = 0$ + + i = beliebig + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + + plot.add(((0, -1), (0, 1)), style: (stroke: red)) + }) + })) + ], + + // Leerlauf + [ + Leerlauf + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + node("n1", (0, 0)) + node("n2", (1, 0)) + + wire((-0.25,0), (0,0)) + wire((1,0), (1.25,0)) + })) + ], + [ + u = beliebig + $i = 0$ + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + + plot.add(((-1, 0), (1, 0)), style: (stroke: red)) + }) + })) + ], + + table.hline(), + // Quellen: // + // Spannungs-quelle + [ + Spannungs-quelle + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + vsource( + "b1", + (0, 0), + (1.75, 0), + ) + })) + ], + [ + $u = U_0$ + + i = beliebig + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + + plot.add(((1, -1), (1, 1)), style: (stroke: red)) + plot.add-anchor("pt",(1,0)) + }) + content("plot.pt", [$U_0$], anchor: "north-west", padding: .1) + })) + ], + + // Strom-quelle + [ + Strom-quelle + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + isource( + "b1", + (0, 0), + (1.75, 0), + ) + })) + ], + [ + u = beliebig + + $i = I_0$ + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + + plot.add(((-1, 1), (1, 1)), style: (stroke: red)) + plot.add-anchor("pt",(0,1)) + }) + content("plot.pt", [$I_0$], anchor: "south-east", padding: .1) + })) + ], + + table.hline(), + +// Wiederstand + [ + Wiederstand + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + resistor( + "b1", + (0, 0), + (2, 0), + ) + })) + ], + [ + $u = r * i$ + $i = u/r$ + ], + [ + #scale(x: 75%, y: 75%, cetz.canvas({ + import cetz.draw: * + import cetz-plot: * + + let opts = (x-tick-step: none, y-tick-step: none, size: (2, 1), x-label: [u], y-label: [i]) + + plot.plot(axis-style: "school-book", ..opts, name: "plot", { + + plot.add(((-1, -1), (1, 1)), style: (stroke: red)) + }) + })) + ], + + // Induktivität + [ + Induktivität + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + inductor( + "b1", + (0, 0), + (2, 0), + variant: "ieee", + ) + })) + ], + [ + + ], + [ + + ], + + // Kapazität + [ + Kapazität + #scale(x: 100%, y: 100%, zap.circuit({ + import zap: * + import cetz.draw: content, line + capacitor( + "b1", + (0, 0), + (2, 0), + ) + })) + ], + [ + + ], + [ + + ], + + table.hline(), // Dioden :// // @@ -547,187 +820,7 @@ ], - // Quellen: // - // Spannungs-quelle - [ - Spannungs-quelle - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - vsource( - "b1", - (0, 0), - (1.75, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Strom-quelle - [ - Strom-quelle - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - isource( - "b1", - (0, 0), - (1.75, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Wiederstand - [ - Wiederstand - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - resistor( - "b1", - (0, 0), - (2, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Induktivität - [ - Induktivität - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - inductor( - "b1", - (0, 0), - (2, 0), - variant: "ieee", - ) - })) - ], - [ - - ], - [ - - ], - - // Kapazität - [ - Kapazität - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - capacitor( - "b1", - (0, 0), - (2, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Kurzschluss - [ - Kurzschluss - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - capacitor( - "b1", - (0, 0), - (2, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Leerlauf - [ - Leerlauf - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - capacitor( - "b1", - (0, 0), - (2, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Nullator - [ - Nullator - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - capacitor( - "b1", - (0, 0), - (2, 0), - ) - })) - ], - [ - - ], - [ - - ], - - // Norator - [ - Norator - #scale(x: 100%, y: 100%, zap.circuit({ - import zap: * - import cetz.draw: content, line - capacitor( - "b1", - (0, 0), - (2, 0), - ) - })) - ], - [ - - ], - [ - - ], + );