From e9ee32864a0251ca4a9a92de548f720788f46808 Mon Sep 17 00:00:00 2001 From: MuedeHydra Date: Wed, 8 Oct 2025 23:53:59 +0200 Subject: [PATCH] add sigver --- img/python/mehere_plots.svg | 1598 +++++++++++++++++++++++++++++++++++ photonics.typ | 1 + src/analysis_3.typ | 29 +- src/bachelorarbeit.typ | 4 + src/python.typ | 65 +- src/signalverarbeitung.typ | 10 + 6 files changed, 1685 insertions(+), 22 deletions(-) create mode 100644 img/python/mehere_plots.svg create mode 100644 src/signalverarbeitung.typ diff --git a/img/python/mehere_plots.svg b/img/python/mehere_plots.svg new file mode 100644 index 0000000..b2210bd --- /dev/null +++ b/img/python/mehere_plots.svg @@ -0,0 +1,1598 @@ + + + + + + + + 2025-10-07T10:30:40.440347 + image/svg+xml + + + Matplotlib v3.10.3, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/photonics.typ b/photonics.typ index b25f0f4..86ed837 100644 --- a/photonics.typ +++ b/photonics.typ @@ -87,6 +87,7 @@ Diese Dokumentation ist primär für eine Linux-Umgebung ausgelegt. Windows-spez #pagebreak() = Signalverarbeitung +#include "src/signalverarbeitung.typ" #pagebreak() = Python diff --git a/src/analysis_3.typ b/src/analysis_3.typ index 1134711..5aeb543 100644 --- a/src/analysis_3.typ +++ b/src/analysis_3.typ @@ -1,3 +1,5 @@ +#set math.mat(align: left) + == Differentialgleichungen === Abkürzungen #table(columns: (0.5fr, 1fr, 1fr), @@ -13,29 +15,44 @@ fill: (x, y) => if y == 0 {gray.lighten(40%)}, === Klassifizierung nach Kriterien // #table(columns: 3, stroke: (x: none), align: horizon, inset: 2pt, #table(columns: (0.7fr, 0.8fr, 1fr), stroke: (x: none), align: horizon, -[Analytisch isolierbar], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = f(x; y)$ ])], [ +[Analytisch isolierbar], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = f(x; y)$])], [ - $y' = y$ - $y' = x^2 dot y^3$ - $y' = sin(x) dot cos^2(y) - tan(x dot y)$], -[Elementar integrierbar], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = g(x)$ ])], [ +[Elementar integrierbar], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = g(x)$])], [ - $y' = 2 dot x$ - $y' = 1 + 3 dot x^2$ - $y' = cos(x) + 1$ ], -[Separierbar], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = g(x) dot h(y)$ ])], [ +[Autonom], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = h(y)$])], [ + - $y' = y$ + - $y' = 1 + y^2$ + - $y' dot y = 2 - y^3$ +], +[Separierbar], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = g(x) dot h(y)$])], [ - $y' = x^2$ - $y' = y^2$ - $y' = x^2 dot y^3$ ], -[Linear], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = m(x) dot y + q(x)$ ])], [ - - $y' = 3 det y$ +[Linear], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = m(x) dot y + q(x)$ ])], [ + - $y' = 3 dot y + 5$ + - $y' = 3 dot x^2 dot y + 5$ + - $y' = sin(x) dot y + e^x$ +], +[Linear (Homogen)], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y' = m(x) dot y$ ])], [ + - $y' = 3 dot y$ - $y' = 3 dot x^2 dot y$ - $y' = sin(x) dot y + e^x$ ], -[Statische Lösung], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y_s' eq.triple c eq.triple "konst."$])], [ +[Statische Lösung], [#box(stroke: 1pt + red, inset: (x: 1em, y: 0.5em), [$y_s' eq.triple c eq.triple "konst."$])], [ - $y' = 2 dot y + 8$ - $y' = y^2 - 1 = (y + 1) dot (y - 1)$ - $y' = g(x) dot h(y_s)$ ], ) +=== Visualisierung +Richtungsvektorfeld: \ +#box(stroke: 1pt + red, inset: (x: 1em, y: 1em), [$accent(v, hat)(x;y) :eq frac(1, root(,1 + f^2(x;y))) dot mat(delim: "[", 1; f(x;y))$]) + + diff --git a/src/bachelorarbeit.typ b/src/bachelorarbeit.typ index b46296e..45ca0fb 100644 --- a/src/bachelorarbeit.typ +++ b/src/bachelorarbeit.typ @@ -202,6 +202,10 @@ Falls in einer gui umgebung gearbeitet wird gibt es dafür schaltflächen, aber [$sigma$], [```typ $sigma$ ```], [$sigma$], [```typ $sigma$ ```], [$accent(x, macron)$], [```typ $accent(x, macron)$ ```], +[$accent(x, hat)$], [```typ $accent(x, hat)$ ```], +[$accent(x, tilde)$], [```typ $accent(x, tilde)$ ```], +[$accent(x, arrow)$], [```typ $accent(x, arrow)$ ```], +[$accent(x, harpoon)$], [```typ $accent(x, harpoon)$ ```], [$root(, 4)$], [```typ $root(, 4)$ ```], [$root(3, 4)$], [```typ $root(3, 4)$ ```], [$frac(1, 2)$], [```typ $frac(1, 2)$ ```], diff --git a/src/python.typ b/src/python.typ index b49d719..9b0179b 100644 --- a/src/python.typ +++ b/src/python.typ @@ -169,21 +169,54 @@ plt.ylabel('fruit supply') plt.title('Fruit supply by kind and color') plt.show() ```], [#image("../img/python/matplotlib_säulendiagramme_wagerecht.png", width: 100%)], - -[Ausgabe als png], [```py -plt.savefig("test.png", transparent=True) # transparent nur für png -plt.savefig("test.png") -plt.show() # savefig muss zwingend vor show()! -```], [#image("../img/python/matplotlib_savefig.png", width: 100%)], -[Ausgabe als pdf], [```py -plt.savefig("test.pdf", pad_inches=0.1, bbox_inches="tight") -# so ist der Rand um den plot schmaller. -plt.savefig("test.pdf") -plt.show() # savefig muss zwingend vor show()! -```], [#image("../img/python/matplotlib_savefig_tight.png", width: 100%)], -[Ausgabe als svg], [```py -plt.savefig("test.svg") -plt.show() # savefig muss zwingend vor show()! -```], [svg ist eine Vektorgrafik], +) + +=== Mehere Plots +#table(columns: (0.9fr, 0.6fr),[```py +fig, axs = plt.subplots(1, 2) + +ax = axs[0] +ax.plot(f, ref, label="Referenzwessung") +ax.plot(f, probe, label="Probenmessung") +ax.set_xlabel("Frequenz (THz)") +ax.set_ylabel("Intensität (arb.u.)") +ax.set_title("Rohspecktren") +ax.legend() + +ax = axs[1] +ax.plot(f, trans, label="Transmissionsspecktrum") +ax.plot(f, absorb, label="Absorbtionsspecktrum") +ax.set_xlabel("Frequenz (THz)") +ax.set_ylabel("Intensität (arb.u.)") +ax.set_title("Specktren") +ax.legend() + +# plt.subplots_adjust(wspace=0.35) +plt.tight_layout() +plt.show() +```], [#image("../img/python/mehere_plots.svg", width: 100%)], +) +*optionen* +#table(columns: (0.6fr, 0.9fr), +[Abstand so das nichts überlagert], [```py plt.tight_layout() ```], +[Abstand zwischen den plots], [```py plt.subplots_adjust(wspace=0.35) ```], +[Schriftgrösse], [```py ax.set_title(r'$r^2 = 0.9$', fontsize=14) ``` \ ```py ax.legend(fontsize=8) ```], +[Abstand zwischen den plots], [```py plt.subplots_adjust(wspace=0.35) ```], +[Achsen limiten einstellen], [```py ax.set_xlim(0, 10) ``` \ ```py ax.set_ylim(0, 40) ```], +[Seiten verhältniss einstellen], [```py ax.set_aspect(0.25) ```], +) + +=== Ausgabe als Datei +#table(columns: (0.3fr, 0.9fr), +[Ausgabe als Datei], [```py +plt.savefig("test.png") +plt.savefig("test.svg") +plt.savefig("test.pdf") +plt.show() # savefig muss zwingend vor show()! +```], +[Transposition], [```py plt.savefig("test.png", transparent=True) ``` \ `# transparent nur für img z.B. .png oder .svg`], +[Schamller Rand um den Plot], [```py plt.savefig("test.pdf", bbox_inches="tight") ```], +[Zusätzlicher Rand um den Plot], [```py plt.savefig("test.pdf", pad_inches=0.1) ```], +[Spezifische auflösung], [```py plt.savefig("test.pdf", dpi=300) ```], ) diff --git a/src/signalverarbeitung.typ b/src/signalverarbeitung.typ new file mode 100644 index 0000000..e5945cc --- /dev/null +++ b/src/signalverarbeitung.typ @@ -0,0 +1,10 @@ +== Basis-Signale +== Eigenschaften von Systemen +== Transformationen von Signalen +== Filtern +== Zeit-diskrete und zeit-kontinuierlich Modulation +== Abtasten (Sampling) und Interpolation +== Laplace-Transformation +== Systemtheorie +== z-Transformation +== Stochastische Signale