From b492fb3ba89205b984c390a39cc9f57d4b2059fa Mon Sep 17 00:00:00 2001 From: samuel niederer Date: Thu, 19 May 2022 18:00:01 +0200 Subject: add tick figure of simple mass system --- buch/papers/kra/images/simple_mass_spring.tex | 64 +++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 buch/papers/kra/images/simple_mass_spring.tex (limited to 'buch/papers/kra/images') diff --git a/buch/papers/kra/images/simple_mass_spring.tex b/buch/papers/kra/images/simple_mass_spring.tex new file mode 100644 index 0000000..e98ee3e --- /dev/null +++ b/buch/papers/kra/images/simple_mass_spring.tex @@ -0,0 +1,64 @@ +% create tikz drawing of a simple mass spring system + +\tikzstyle{hmline}=[{Latex[length=3.3,width=2.2]}-{Latex[length=3.3,width=2.2]},line width=0.3] +\tikzstyle{vmline}=[red, dashed,line width=0.4,dash pattern=on 1pt off 1pt] +\tikzstyle{ground}=[pattern=north east lines] +\tikzstyle{mass}=[line width=0.6,red!30!black,fill=red!40!black!10,rounded corners=1,top color=red!40!black!20,bottom color=red!40!black!10,shading angle=20] +\tikzstyle{spring}=[line width=0.8,blue!7!black!80,snake=coil,segment amplitude=5,line cap=round] + +\begin{tikzpicture}[scale=2] + \newcommand{\ticks}[2] + { + % arguments: x, y coordinates + \draw[thick] (#1, #2 - 0.1 / 2) --++ (0, 0.1); + } + + \tikzmath{ + \hWall = 1.5; + \wWall = 0.3; + \lWall = 3.5; + \hMass = 0.6; + \wMass = 1.1; + \xMass1 = 1.2; + \xMass2 = 2.2; + \xAxisYpos = 0; + \originX1 = 0; + \originY1 = 0.5; + \originX2 = 0; + \originY2 = -2; + \springscale=7; + } + + % create x axis + \draw[->,thick] (0,\xAxisYpos) --+ (\lWall, 0) node[right]{$x$}; + + % create ticks on x axis + \ticks{\wWall}{\xAxisYpos} + \ticks{\xMass1}{\xAxisYpos} + \ticks{\xMass2}{\xAxisYpos} + + % create underground + \draw[ground] (\originX1, \originY1) ++ (0, 0) --+(\lWall,0) --+(\lWall, \wWall) --+(\wWall, \wWall) --+(\wWall, \hWall) --+(0, \hWall) -- cycle; + \draw[ground] (\originX2, \originY2) ++ (0, 0) --+(\lWall,0) --+(\lWall, \wWall) --+(\wWall, \wWall) --+(\wWall, \hWall) --+(0, \hWall) -- cycle; + + % create masses + \draw[mass] (\originX1, \originY1) ++ (\xMass1, \wWall) rectangle ++ (\wMass,\hMass) node[midway] {$m$}; + \draw[mass] (\originX2, \originY2) ++ (\xMass2, \wWall) rectangle ++ (\wMass,\hMass) node[midway] {$m$}; + + % create springs + \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ (\wWall, \wWall + \hMass / 2) --+ (\xMass1 - \wWall, 0); + \draw[spring, segment length=(\xMass2 - \wWall) * \springscale] (\originX2, \originY2) ++ (\wWall, \wWall + \hMass / 2) --+ (\xMass2 - \wWall, 0); + + % create vertical measurement line + \draw[vmline] (\xMass1, \xAxisYpos) --+(0, \originY1 + \wWall); + \draw[vmline] (\xMass2, \xAxisYpos) --+(0, \originY2 + \hMass+\wWall); + \draw[vmline] (\wWall, \originY1+\wWall) --(\wWall, \originY2 + \hWall); + + % create horizontal measurement line + \draw[hmline] (\wWall, \xAxisYpos + 0.2) -- (\xMass1, \xAxisYpos + 0.2) node[midway,fill=white,inner sep=0] {$\ell_0$}; + \draw[hmline] (\xMass1, \xAxisYpos + 0.2) -- (\xMass2, \xAxisYpos + 0.2) node[midway,fill=white,inner sep=0] {$\Delta_{x}$}; + \draw[hmline] (\wWall, \xAxisYpos - 0.3) -- (\xMass2, \xAxisYpos - 0.3) node[midway,fill=white,inner sep=0] {$\ell_{1}$}; + + % create force arrow + \draw[->,blue, very thick,line cap=round] (\xMass2 + \wMass / 2, \originY2 + \wWall + \hMass + 0.15) node[above] {$\vb{F_{R}}$} --+ (-0.5, 0); +\end{tikzpicture} \ No newline at end of file -- cgit v1.2.1 From ffb50c6574c53b805df068fd2ce2e89726597911 Mon Sep 17 00:00:00 2001 From: samuel niederer Date: Thu, 26 May 2022 11:36:20 +0200 Subject: add spring constant --- buch/papers/kra/images/simple_mass_spring.tex | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'buch/papers/kra/images') diff --git a/buch/papers/kra/images/simple_mass_spring.tex b/buch/papers/kra/images/simple_mass_spring.tex index e98ee3e..207f1e0 100644 --- a/buch/papers/kra/images/simple_mass_spring.tex +++ b/buch/papers/kra/images/simple_mass_spring.tex @@ -46,8 +46,10 @@ \draw[mass] (\originX2, \originY2) ++ (\xMass2, \wWall) rectangle ++ (\wMass,\hMass) node[midway] {$m$}; % create springs - \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ (\wWall, \wWall + \hMass / 2) --+ (\xMass1 - \wWall, 0); - \draw[spring, segment length=(\xMass2 - \wWall) * \springscale] (\originX2, \originY2) ++ (\wWall, \wWall + \hMass / 2) --+ (\xMass2 - \wWall, 0); + \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ + (\wWall, \wWall + \hMass / 2) --++ (\xMass1 - \wWall, 0) node[midway,above=0.2] {$k$}; + \draw[spring, segment length=(\xMass2 - \wWall) * \springscale] (\originX2, \originY2) ++ + (\wWall, \wWall + \hMass / 2) --++ (\xMass2 - \wWall, 0) node[midway,above=0.2] {$k$}; % create vertical measurement line \draw[vmline] (\xMass1, \xAxisYpos) --+(0, \originY1 + \wWall); -- cgit v1.2.1 From a0b6394bd559e7d2e1a6d7c028cfc73586503d58 Mon Sep 17 00:00:00 2001 From: samuel niederer Date: Thu, 26 May 2022 11:46:24 +0200 Subject: add drawing --- buch/papers/kra/images/multi_mass_spring.tex | 54 ++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 buch/papers/kra/images/multi_mass_spring.tex (limited to 'buch/papers/kra/images') diff --git a/buch/papers/kra/images/multi_mass_spring.tex b/buch/papers/kra/images/multi_mass_spring.tex new file mode 100644 index 0000000..f255cc8 --- /dev/null +++ b/buch/papers/kra/images/multi_mass_spring.tex @@ -0,0 +1,54 @@ +% create tikz drawing of a multi mass multi spring system + +\tikzstyle{vmline}=[red, dashed,line width=0.4,dash pattern=on 1pt off 1pt] +\tikzstyle{ground}=[pattern=north east lines] +\tikzstyle{mass}=[line width=0.6,red!30!black,fill=red!40!black!10,rounded corners=1,top color=red!40!black!20,bottom color=red!40!black!10,shading angle=20] +\tikzstyle{spring}=[line width=0.8,blue!7!black!80,snake=coil,segment amplitude=5,line cap=round] + +\begin{tikzpicture}[scale=2] + \newcommand{\ticks}[3] + { + % x, y coordinates + \draw[thick] (#1, #2 - 0.1 / 2) --++ (0, 0.1) node[scale=0.8,below=0.2] {#3}; + } + \tikzmath{ + \hWall = 1.2; + \wWall = 0.3; + \lWall = 5; + \hMass = 0.6; + \wMass = 1.1; + \xMass1 = 1.0; + \xMass2 = 3.0; + \xAxisYpos = 0; + \originX1 = 0; + \originY1 = 0.5; + \springscale=7; + } + + % create axis + \draw[->,thick] (0,\xAxisYpos) --+ (\xMass2 + \wMass, 0) node[right]{$q$}; + % create ticks on x / q axis + \ticks{\xMass1}{\xAxisYpos}{$q_{1}$} + \ticks{\xMass2}{\xAxisYpos}{$q_{2}$} + + % create non-moving backgrounds + \draw[ground] (\originX1, \originY1) ++ (0, 0) --+(\lWall,0) --+(\lWall, \hWall) + --+ (\lWall - \wWall, \hWall) --+(\lWall - \wWall, \wWall) --+ (\wWall, \wWall) --+(\wWall, \hWall) --+(0, \hWall) -- cycle; + + % create masses + \draw[mass] (\originX1, \originY1) ++ (\xMass1, \wWall) rectangle ++ (\wMass,\hMass) node[midway] {$m_{1}$}; + \draw[mass] (\originX1, \originY1) ++ (\xMass2, \wWall) rectangle ++ (\wMass,\hMass) node[midway] {$m_{2}$}; + + % create springs + \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ + (\wWall, \wWall + \hMass / 2) --++ (\xMass1 - \wWall, 0) node[midway,above=0.2] {$k_1$}; + \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ + (\xMass1 + \wMass, \wWall + \hMass / 2) --++ (\xMass2 - \xMass1 - \wMass, 0) node[midway,above=0.2] {$k_c$}; + \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ + (\xMass2 + \wMass, \wWall + \hMass / 2) --++ (\lWall - \xMass2 - \wMass - \wWall, 0) node[midway,above=0.2] {$k_2$}; + + % create vertical measurement line + \draw[vmline] (\xMass1, \xAxisYpos) --+(0, \originY1 + \wWall); + \draw[vmline] (\xMass2, \xAxisYpos) --+(0, \originY1 + \wWall); + +\end{tikzpicture} -- cgit v1.2.1 From 052ccbe27e19d53ac7272bf29c9c16e071d7059b Mon Sep 17 00:00:00 2001 From: samuel niederer Date: Wed, 1 Jun 2022 13:34:26 +0200 Subject: add phase space plot --- buch/papers/kra/images/phase_space.tex | 67 ++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 buch/papers/kra/images/phase_space.tex (limited to 'buch/papers/kra/images') diff --git a/buch/papers/kra/images/phase_space.tex b/buch/papers/kra/images/phase_space.tex new file mode 100644 index 0000000..cd51ea4 --- /dev/null +++ b/buch/papers/kra/images/phase_space.tex @@ -0,0 +1,67 @@ +\colorlet{mypurple}{red!50!blue!90!black!80} + +% style to create arrows +\tikzset{ + traj/.style 2 args={thick, postaction={decorate},decoration={markings, + mark=at position #1 with {\arrow{<}}, + mark=at position #2 with {\arrow{<}}} + } +} + +\begin{tikzpicture}[scale=0.6] + % p(t=0) = 0, q(t=0) = A, max(p) = mwA + \tikzmath{ + \axh = 5.2; + \axw1 = 4.2; + \axw2 = 4.8; + \d1 = 0.9; + \a0 = 1; + \b0 = 2; + \a1 = \a0 + \d1; + \b1 = \b0 + \d1; + \a2 = \a1 + \d1; + \b2 = \b1 + \d1; + \a3 = \a2 + \d1; + \b3 = \b2 + \d1; + \d2 = 0.75; + \aa0 = 2; + \bb0 = 1; + \aa1 = \aa0 + \d2; + \bb1 = \bb0 + \d2; + \aa2 = \aa1 + \d2; + \bb2 = \bb1 + \d2; + \aa3 = \aa2 + \d2; + \bb3 = \bb2 + \d2; + } + + \draw[->,thick] (-\axw1,0) -- (\axw1,0) node[right] {$q$}; + \draw[->,thick] (0,-\axh) -- (0,\axh) node[above] {$p$}; + + \draw[traj={0.375}{0.875},darkgreen] ellipse (\a0 and \b0); + \draw[traj={0.375}{0.875},blue] ellipse (\a1 and \b1); + \draw[traj={0.375}{0.875},cyan] ellipse (\a2 and \b2); + \draw[traj={0.375}{0.875},mypurple] ellipse (\a3 and \b3); + + \node[right,darkgreen] at (45:{\a0} and {\b0}) {$E_A$}; + \node[right, blue] at (45:{\a1} and {\b1}) {$E_B$}; + \node[right, cyan] at (45:{\a2} and {\b2}) {$E_C$}; + \node[right, mypurple] at (45:{\a3} and {\b3}) {$E_D$}; + \node[above left] at (110:\b3 + 0.1) {grosses $\omega$}; + + \begin{scope}[xshift=12cm] + \draw[->,thick] (-\axw2,0) -- (\axw2,0) node[right] {$q$}; + \draw[->,thick] (0,-\axh) -- (0,\axh) node[above] {$p$}; + + \draw[traj={0.375}{0.875},darkgreen] ellipse (\aa0 and \bb0); + \draw[traj={0.375}{0.875},blue] ellipse (\aa1 and \bb1); + \draw[traj={0.375}{0.875},cyan] ellipse (\aa2 and \bb2); + \draw[traj={0.375}{0.875},mypurple] ellipse (\aa3 and \bb3); + + \node[above, darkgreen] at (45:{\aa0} and {\bb0}) {$E_A$}; + \node[above, blue] at (45:{\aa1} and {\bb1}) {$E_B$}; + \node[above, cyan] at (45:{\aa2} and {\bb2}) {$E_C$}; + \node[above, mypurple] at (45:{\aa3} and {\bb3}) {$E_D$}; + + \node[above left] at (110:\b3 + 0.1) {kleines $\omega$}; + \end{scope} +\end{tikzpicture} \ No newline at end of file -- cgit v1.2.1 From 5e25727877da020b0b23132fec8c0ea70288a18b Mon Sep 17 00:00:00 2001 From: samuel niederer Date: Sun, 24 Jul 2022 12:03:25 +0200 Subject: add presentation files --- buch/papers/kra/images/simple_mass_spring.tex | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'buch/papers/kra/images') diff --git a/buch/papers/kra/images/simple_mass_spring.tex b/buch/papers/kra/images/simple_mass_spring.tex index 207f1e0..e0e869a 100644 --- a/buch/papers/kra/images/simple_mass_spring.tex +++ b/buch/papers/kra/images/simple_mass_spring.tex @@ -14,7 +14,7 @@ } \tikzmath{ - \hWall = 1.5; + \hWall = 1.2; \wWall = 0.3; \lWall = 3.5; \hMass = 0.6; -- cgit v1.2.1 From 96ca6105b6adad8a6b3c5a1af426df9f8c4024c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Mon, 15 Aug 2022 06:54:23 +0200 Subject: fix physics dependency --- buch/papers/kra/images/Makefile | 9 +++++++++ buch/papers/kra/images/simple.pdf | Bin 0 -> 23130 bytes buch/papers/kra/images/simple.tex | 24 ++++++++++++++++++++++++ buch/papers/kra/images/simple_mass_spring.tex | 12 ++++++------ 4 files changed, 39 insertions(+), 6 deletions(-) create mode 100644 buch/papers/kra/images/Makefile create mode 100644 buch/papers/kra/images/simple.pdf create mode 100644 buch/papers/kra/images/simple.tex (limited to 'buch/papers/kra/images') diff --git a/buch/papers/kra/images/Makefile b/buch/papers/kra/images/Makefile new file mode 100644 index 0000000..ef226a9 --- /dev/null +++ b/buch/papers/kra/images/Makefile @@ -0,0 +1,9 @@ +# +# Makefile -- build standalone images +# +# (c) 2022 Prof Dr Andreas Müller +# +all: simple.pdf + +simple.pdf: simple.tex simple_mass_spring.tex + pdflatex simple.tex diff --git a/buch/papers/kra/images/simple.pdf b/buch/papers/kra/images/simple.pdf new file mode 100644 index 0000000..4351518 Binary files /dev/null and b/buch/papers/kra/images/simple.pdf differ diff --git a/buch/papers/kra/images/simple.tex b/buch/papers/kra/images/simple.tex new file mode 100644 index 0000000..3bdde27 --- /dev/null +++ b/buch/papers/kra/images/simple.tex @@ -0,0 +1,24 @@ +% +% tikztemplate.tex -- template for standalon tikz images +% +% (c) 2021 Prof Dr Andreas Müller, OST Ostschweizer Fachhochschule +% +\documentclass[tikz]{standalone} +\usepackage{amsmath} +\usepackage{times} +\usepackage{txfonts} +\usepackage{pgfplots} +\pgfplotsset{compat=1.16} +\usepackage[outline]{contour} +\usepackage{csvsimple} +\usepackage{physics} +\usetikzlibrary{arrows,intersections,math} +\usetikzlibrary{patterns} +\usetikzlibrary{snakes} +\usetikzlibrary{arrows.meta} +\usetikzlibrary{decorations} +\usetikzlibrary{decorations.markings} +\begin{document} +\input{simple_mass_spring.tex} +\end{document} + diff --git a/buch/papers/kra/images/simple_mass_spring.tex b/buch/papers/kra/images/simple_mass_spring.tex index e0e869a..868362d 100644 --- a/buch/papers/kra/images/simple_mass_spring.tex +++ b/buch/papers/kra/images/simple_mass_spring.tex @@ -6,7 +6,7 @@ \tikzstyle{mass}=[line width=0.6,red!30!black,fill=red!40!black!10,rounded corners=1,top color=red!40!black!20,bottom color=red!40!black!10,shading angle=20] \tikzstyle{spring}=[line width=0.8,blue!7!black!80,snake=coil,segment amplitude=5,line cap=round] -\begin{tikzpicture}[scale=2] +\begin{tikzpicture}[scale=2,>=latex] \newcommand{\ticks}[2] { % arguments: x, y coordinates @@ -47,9 +47,9 @@ % create springs \draw[spring, segment length=(\xMass1 - \wWall) * \springscale] (\originX1, \originY1) ++ - (\wWall, \wWall + \hMass / 2) --++ (\xMass1 - \wWall, 0) node[midway,above=0.2] {$k$}; + (\wWall, \wWall + \hMass / 2) --++ (\xMass1 - \wWall, 0) node[midway,above=3.5] {$k$}; \draw[spring, segment length=(\xMass2 - \wWall) * \springscale] (\originX2, \originY2) ++ - (\wWall, \wWall + \hMass / 2) --++ (\xMass2 - \wWall, 0) node[midway,above=0.2] {$k$}; + (\wWall, \wWall + \hMass / 2) --++ (\xMass2 - \wWall, 0) node[midway,above=3.5] {$k$}; % create vertical measurement line \draw[vmline] (\xMass1, \xAxisYpos) --+(0, \originY1 + \wWall); @@ -57,10 +57,10 @@ \draw[vmline] (\wWall, \originY1+\wWall) --(\wWall, \originY2 + \hWall); % create horizontal measurement line - \draw[hmline] (\wWall, \xAxisYpos + 0.2) -- (\xMass1, \xAxisYpos + 0.2) node[midway,fill=white,inner sep=0] {$\ell_0$}; + \draw[hmline] (\wWall, \xAxisYpos + 0.2) -- (\xMass1, \xAxisYpos + 0.2) node[midway,fill=white,inner sep=0] {$l_0$}; \draw[hmline] (\xMass1, \xAxisYpos + 0.2) -- (\xMass2, \xAxisYpos + 0.2) node[midway,fill=white,inner sep=0] {$\Delta_{x}$}; - \draw[hmline] (\wWall, \xAxisYpos - 0.3) -- (\xMass2, \xAxisYpos - 0.3) node[midway,fill=white,inner sep=0] {$\ell_{1}$}; + \draw[hmline] (\wWall, \xAxisYpos - 0.3) -- (\xMass2, \xAxisYpos - 0.3) node[midway,fill=white,inner sep=0] {$l_{1}$}; % create force arrow \draw[->,blue, very thick,line cap=round] (\xMass2 + \wMass / 2, \originY2 + \wWall + \hMass + 0.15) node[above] {$\vb{F_{R}}$} --+ (-0.5, 0); -\end{tikzpicture} \ No newline at end of file +\end{tikzpicture} -- cgit v1.2.1