diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/0808a4e641f3bfd149695bb00c73368d6b872d03.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/0808a4e641f3bfd149695bb00c73368d6b872d03.svg new file mode 100644 index 0000000..7fa9175 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/0808a4e641f3bfd149695bb00c73368d6b872d03.svg @@ -0,0 +1,1723 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/461e4a99905b6a95ee1aa9339dbbe19f90fef570.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/0aaae8f600192b07ca01041789f5cbeaf0d48ee2.svg similarity index 96% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/461e4a99905b6a95ee1aa9339dbbe19f90fef570.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/0aaae8f600192b07ca01041789f5cbeaf0d48ee2.svg index d734632..fadec40 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/461e4a99905b6a95ee1aa9339dbbe19f90fef570.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/0aaae8f600192b07ca01041789f5cbeaf0d48ee2.svg @@ -41,12 +41,12 @@ z - - + @@ -82,7 +82,7 @@ z - + @@ -116,7 +116,7 @@ z - + @@ -154,7 +154,7 @@ z - + @@ -198,7 +198,7 @@ z - + @@ -240,7 +240,7 @@ z - + @@ -284,7 +284,7 @@ z - + @@ -351,12 +351,12 @@ z - - + @@ -391,7 +391,7 @@ z - + @@ -408,7 +408,7 @@ z - + @@ -424,7 +424,7 @@ z - + @@ -440,7 +440,7 @@ z - + @@ -606,7 +606,7 @@ L 190.633003 68.854931 L 190.987916 68.11121 L 237.126681 68.11121 L 237.126681 68.11121 -" clip-path="url(#pa9537c6c1b)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p9cfe5f58b6)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p9cfe5f58b6)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p9cfe5f58b6)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#p9cfe5f58b6)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #ff7f0e; stroke-width: 0.5"/> + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/1446c6e53dac7fbcb1089dcf980e7299b7d75301.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/1446c6e53dac7fbcb1089dcf980e7299b7d75301.svg new file mode 100644 index 0000000..9649e6e --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/1446c6e53dac7fbcb1089dcf980e7299b7d75301.svg @@ -0,0 +1,1198 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/2055a903d73105290085026649070f77a60ddd40.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/2055a903d73105290085026649070f77a60ddd40.svg deleted file mode 100644 index a4a9504..0000000 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/2055a903d73105290085026649070f77a60ddd40.svg +++ /dev/null @@ -1,1170 +0,0 @@ - - - - - - - - 1980-01-01T00:00:00+00:00 - image/svg+xml - - - Matplotlib v3.6.2, https://matplotlib.org/ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/2b127d9efe76f2d5af7288fd1c86ed71265d6c8a.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/2b127d9efe76f2d5af7288fd1c86ed71265d6c8a.svg new file mode 100644 index 0000000..3e0fd57 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/2b127d9efe76f2d5af7288fd1c86ed71265d6c8a.svg @@ -0,0 +1,905 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/3c84f70ced5643089d048ba60451f50a3409c231.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/3c84f70ced5643089d048ba60451f50a3409c231.svg new file mode 100644 index 0000000..be56efd --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/3c84f70ced5643089d048ba60451f50a3409c231.svg @@ -0,0 +1,2214 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/3d588233ddaeb47b80e2d98855937e09ec32bd3f.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/3d588233ddaeb47b80e2d98855937e09ec32bd3f.svg new file mode 100644 index 0000000..c844ccb --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/3d588233ddaeb47b80e2d98855937e09ec32bd3f.svg @@ -0,0 +1,1262 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/4fb778a2d542fde60accec2963706290dff4418b.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/4fb778a2d542fde60accec2963706290dff4418b.svg new file mode 100644 index 0000000..8680605 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/4fb778a2d542fde60accec2963706290dff4418b.svg @@ -0,0 +1,9279 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/71e4dbcb0c094107e336437a1247ef0a1e316bcb.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/71e4dbcb0c094107e336437a1247ef0a1e316bcb.svg new file mode 100644 index 0000000..45a8dc5 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/71e4dbcb0c094107e336437a1247ef0a1e316bcb.svg @@ -0,0 +1,1886 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c7199307117d774aea29cabdc27a35366881d724.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/737556be87761f7451bcfd437fd96170f7637ec9.svg similarity index 99% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c7199307117d774aea29cabdc27a35366881d724.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/737556be87761f7451bcfd437fd96170f7637ec9.svg index ac4dcea..ba70155 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c7199307117d774aea29cabdc27a35366881d724.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/737556be87761f7451bcfd437fd96170f7637ec9.svg @@ -39,7 +39,7 @@ z - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + @@ -36160,7 +36160,7 @@ z - + @@ -36226,7 +36226,7 @@ z - + @@ -36240,7 +36240,7 @@ z - + @@ -36275,7 +36275,7 @@ z - + @@ -36310,7 +36310,7 @@ z - + @@ -36325,7 +36325,7 @@ z - + @@ -36340,7 +36340,7 @@ z - + @@ -36383,12 +36383,12 @@ z - - + @@ -36413,7 +36413,7 @@ z - + @@ -36427,7 +36427,7 @@ z - + @@ -36440,7 +36440,7 @@ z - + @@ -36453,7 +36453,7 @@ z - + @@ -36645,16 +36645,16 @@ z +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #7fbee9; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #ffbf86; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #87de87; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #eb9293; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #c9b3de; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #cca79f; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke: #e377c2; stroke-width: 0.5; stroke-linecap: square"/> - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + @@ -37561,9 +37561,9 @@ z L 111.772314 112.20716 L 174.203572 122.422799 L 236.634831 132.515235 -" clip-path="url(#pc0740a4ffe)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pda5ad0327a)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #8c564b; stroke-width: 0.5"/> - - - - - - + + + + + @@ -37624,7 +37624,7 @@ L 57.076366 117.235821 - + @@ -37758,7 +37758,7 @@ L 57.076366 130.702197 - + @@ -37932,7 +37932,7 @@ L 57.076366 144.168574 - + @@ -37985,7 +37985,7 @@ L 57.076366 157.63495 - + @@ -38061,7 +38061,7 @@ L 57.076366 171.101326 - + @@ -38090,7 +38090,7 @@ L 66.076366 189.067702 - + @@ -38106,7 +38106,7 @@ L 66.076366 189.067702 - + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/73ad99c8f33025ef14048abda5eeefe8c0dd7b15.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/73ad99c8f33025ef14048abda5eeefe8c0dd7b15.svg new file mode 100644 index 0000000..eceb546 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/73ad99c8f33025ef14048abda5eeefe8c0dd7b15.svg @@ -0,0 +1,1930 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8dc6d71eabb095e2a21fc5d4050d2e77f8a4d407.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/7c4c619d2f9e55840f6181197c2c4e96a71c324a.svg similarity index 99% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8dc6d71eabb095e2a21fc5d4050d2e77f8a4d407.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/7c4c619d2f9e55840f6181197c2c4e96a71c324a.svg index 4b77cc8..82d5f46 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8dc6d71eabb095e2a21fc5d4050d2e77f8a4d407.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/7c4c619d2f9e55840f6181197c2c4e96a71c324a.svg @@ -39,7 +39,7 @@ z - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + @@ -36160,7 +36160,7 @@ z - + @@ -36226,7 +36226,7 @@ z - + @@ -36240,7 +36240,7 @@ z - + @@ -36275,7 +36275,7 @@ z - + @@ -36310,7 +36310,7 @@ z - + @@ -36325,7 +36325,7 @@ z - + @@ -36340,7 +36340,7 @@ z - + @@ -36383,12 +36383,12 @@ z - - + @@ -36422,7 +36422,7 @@ z - + @@ -36438,7 +36438,7 @@ z - + @@ -36454,7 +36454,7 @@ z - + @@ -36469,7 +36469,7 @@ z - + @@ -36484,7 +36484,7 @@ z - + @@ -36678,16 +36678,16 @@ z +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #7fbee9; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #ffbf86; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #87de87; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #eb9293; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #c9b3de; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #cca79f; stroke-width: 0.5"/> - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + @@ -37675,9 +37675,9 @@ z L 201.372614 108.816966 L 335.989779 118.88376 L 470.606945 128.882548 -" clip-path="url(#p86905052b0)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#pb1b680e6d3)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #8c564b; stroke-width: 0.5"/> - - - - - - + + + + + @@ -37738,7 +37738,7 @@ L 63.662873 131.635821 - + @@ -37872,7 +37872,7 @@ L 63.662873 145.102197 - + @@ -38046,7 +38046,7 @@ L 63.662873 158.568574 - + @@ -38099,7 +38099,7 @@ L 63.662873 172.03495 - + @@ -38175,7 +38175,7 @@ L 63.662873 185.501326 - + @@ -38204,7 +38204,7 @@ L 72.662873 203.467702 - + @@ -38220,7 +38220,7 @@ L 72.662873 203.467702 - + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/d10a82faed83ac74fbdb0a80362cb43f7e44dbac.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/81d7229d7ed52abe3f521c318cdeeeb4c52e5a87.svg similarity index 99% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/d10a82faed83ac74fbdb0a80362cb43f7e44dbac.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/81d7229d7ed52abe3f521c318cdeeeb4c52e5a87.svg index 83313e3..20dbaef 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/d10a82faed83ac74fbdb0a80362cb43f7e44dbac.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/81d7229d7ed52abe3f521c318cdeeeb4c52e5a87.svg @@ -6043,7 +6043,7 @@ L -393.279419 98.790415 L -393.48983 98.790415 L -393.70024 98.790415 z -" clip-path="url(#p929863a6c0)" style="fill: #7fbee9; fill-opacity: 0.5; stroke: #7fbee9; stroke-opacity: 0.5; stroke-width: 0.24"/> +" clip-path="url(#pde329a851f)" style="fill: #7fbee9; fill-opacity: 0.5; stroke: #7fbee9; stroke-opacity: 0.5; stroke-width: 0.24"/> +" clip-path="url(#pde329a851f)" style="fill: #ffbf86; fill-opacity: 0.5; stroke: #ffbf86; stroke-opacity: 0.5; stroke-width: 0.24"/> - - + @@ -12140,7 +12140,7 @@ z - + @@ -12185,7 +12185,7 @@ z - + @@ -12228,7 +12228,7 @@ z - + @@ -12273,7 +12273,7 @@ z - + @@ -12313,7 +12313,7 @@ z - + @@ -12349,7 +12349,7 @@ z - + @@ -12422,12 +12422,12 @@ z - - + @@ -12451,7 +12451,7 @@ z - + @@ -12466,7 +12466,7 @@ z - + @@ -12481,7 +12481,7 @@ z - + @@ -12496,7 +12496,7 @@ z - + @@ -12511,7 +12511,7 @@ z - + @@ -12626,7 +12626,7 @@ L 235.63746 132.835579 L 236.899923 132.912244 L 237.531154 132.913169 L 237.531154 132.913169 -" clip-path="url(#p929863a6c0)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pde329a851f)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pde329a851f)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pde329a851f)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> - + @@ -13355,7 +13355,7 @@ z - + @@ -13370,7 +13370,7 @@ z - + @@ -13385,7 +13385,7 @@ z - + @@ -13400,7 +13400,7 @@ z - + @@ -13415,7 +13415,7 @@ z - + @@ -13430,7 +13430,7 @@ z - + @@ -13453,7 +13453,7 @@ z - + @@ -13469,7 +13469,7 @@ z - + @@ -13485,7 +13485,7 @@ z - + @@ -13501,7 +13501,7 @@ z - + @@ -13517,7 +13517,7 @@ z - + @@ -13533,7 +13533,7 @@ z - + @@ -13549,7 +13549,7 @@ z - + @@ -13678,17 +13678,17 @@ L 482.764962 129.259894 L 484.027425 129.327142 L 484.448246 129.327391 L 484.448246 129.327391 -" clip-path="url(#p66b6dd12a8)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pf2174cdfdc)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pf2174cdfdc)" style="fill: none; stroke: #d3d3d3; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pf2174cdfdc)" style="fill: none; stroke: #d3d3d3; stroke-width: 0.5; stroke-linecap: square"/> + - + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6576fcf3377ebb38995ea45a6571775d4365b7ef.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8471d776db4404270d3df20b7173e59f783b92ba.svg similarity index 91% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6576fcf3377ebb38995ea45a6571775d4365b7ef.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8471d776db4404270d3df20b7173e59f783b92ba.svg index 6fe0844..aa97a84 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6576fcf3377ebb38995ea45a6571775d4365b7ef.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8471d776db4404270d3df20b7173e59f783b92ba.svg @@ -41,12 +41,12 @@ z - - + @@ -104,7 +104,7 @@ z - + @@ -145,7 +145,7 @@ z - + @@ -192,7 +192,7 @@ z - + @@ -237,7 +237,7 @@ z - + @@ -284,7 +284,7 @@ z - + @@ -326,7 +326,7 @@ z - + @@ -364,7 +364,7 @@ z - + @@ -459,12 +459,12 @@ z - - + @@ -500,7 +500,7 @@ z - + @@ -518,7 +518,7 @@ z - + @@ -535,7 +535,7 @@ z - + @@ -552,7 +552,7 @@ z - + @@ -569,7 +569,7 @@ z - + @@ -634,7 +634,7 @@ L 191.336112 13.719234 L 216.813658 13.688469 L 242.291205 13.881329 L 242.291205 13.881329 -" clip-path="url(#p1c57071a03)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #d62728; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #9467bd; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #8c564b; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #e377c2; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #7f7f7f; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #bcbd22; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #17becf; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p99257e71e2)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> - + @@ -807,7 +807,7 @@ z - + @@ -824,7 +824,7 @@ z - + @@ -841,7 +841,7 @@ z - + @@ -858,7 +858,7 @@ z - + @@ -875,7 +875,7 @@ z - + @@ -892,7 +892,7 @@ z - + @@ -909,7 +909,7 @@ z - + @@ -934,7 +934,7 @@ z - + @@ -949,68 +949,68 @@ z - - + - + - + - + - + - + - + - + - + @@ -1064,7 +1064,7 @@ L 429.25897 14.240747 L 454.736516 13.82995 L 480.214063 14.041406 L 480.214063 14.041406 -" clip-path="url(#pa5eb07a0dc)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #d62728; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #9467bd; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #8c564b; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #e377c2; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #7f7f7f; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #bcbd22; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #17becf; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p1fedf4fc60)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> + - + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6904e11bd3ec5b85e0c2e0d8d60c91a3940b3b84.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/962ffa455699bc4ceabd74a04f849593a57a8e96.svg similarity index 98% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6904e11bd3ec5b85e0c2e0d8d60c91a3940b3b84.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/962ffa455699bc4ceabd74a04f849593a57a8e96.svg index 63d625c..2911e55 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6904e11bd3ec5b85e0c2e0d8d60c91a3940b3b84.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/962ffa455699bc4ceabd74a04f849593a57a8e96.svg @@ -39,7 +39,7 @@ z - - - + + - - - + + - - + @@ -4146,7 +4146,7 @@ z - + @@ -4191,7 +4191,7 @@ z - + @@ -4234,7 +4234,7 @@ z - + @@ -4279,7 +4279,7 @@ z - + @@ -4319,7 +4319,7 @@ z - + @@ -4355,7 +4355,7 @@ z - + @@ -4428,12 +4428,12 @@ z - - + @@ -4468,7 +4468,7 @@ z - + @@ -4485,7 +4485,7 @@ z - + @@ -4501,7 +4501,7 @@ z - + @@ -4517,7 +4517,7 @@ z - + @@ -4533,7 +4533,7 @@ z - + @@ -4549,7 +4549,7 @@ z - + @@ -4674,7 +4674,7 @@ L 235.88324 119.667839 L 236.416143 119.85937 L 237.126681 119.903286 L 237.126681 119.903286 -" clip-path="url(#pfc05cf2efb)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#p1a422b9577)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#p1a422b9577)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/1dfc8faed914b3db9255e2f8148e6dd71674ebe3.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/a2139b7a51fb5e3f03188d349b787fb2e3030961.svg similarity index 99% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/1dfc8faed914b3db9255e2f8148e6dd71674ebe3.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/a2139b7a51fb5e3f03188d349b787fb2e3030961.svg index e26566c..fb5cf86 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/1dfc8faed914b3db9255e2f8148e6dd71674ebe3.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/a2139b7a51fb5e3f03188d349b787fb2e3030961.svg @@ -39,7 +39,7 @@ z - - - + + - - - + + - - - + + - - - + + - - - + + - - - + + - - + @@ -36160,7 +36160,7 @@ z - + @@ -36226,7 +36226,7 @@ z - + @@ -36240,7 +36240,7 @@ z - + @@ -36275,7 +36275,7 @@ z - + @@ -36310,7 +36310,7 @@ z - + @@ -36325,7 +36325,7 @@ z - + @@ -36340,7 +36340,7 @@ z - + @@ -36383,12 +36383,12 @@ z - - + @@ -36422,7 +36422,7 @@ z - + @@ -36438,7 +36438,7 @@ z - + @@ -36454,7 +36454,7 @@ z - + @@ -36469,7 +36469,7 @@ z - + @@ -36484,7 +36484,7 @@ z - + @@ -36678,16 +36678,16 @@ z +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #7fbee9; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #ffbf86; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #87de87; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #d62728; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #eb9293; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #c9b3de; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #cca79f; stroke-width: 0.5"/> - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + - - - - - - + + + + + @@ -37528,9 +37528,9 @@ z L 116.063523 101.84095 L 176.49887 111.216657 L 236.934218 120.529027 -" clip-path="url(#p6a2f225256)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #8c564b; stroke-width: 0.5"/> +" clip-path="url(#paad2f45bd0)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #8c564b; stroke-width: 0.5"/> - - - - - - + + + + + @@ -37591,7 +37591,7 @@ L 63.662873 117.235821 - + @@ -37725,7 +37725,7 @@ L 63.662873 130.702197 - + @@ -37899,7 +37899,7 @@ L 63.662873 144.168574 - + @@ -37952,7 +37952,7 @@ L 63.662873 157.63495 - + @@ -38028,7 +38028,7 @@ L 63.662873 171.101326 - + @@ -38057,7 +38057,7 @@ L 72.662873 189.067702 - + @@ -38073,7 +38073,7 @@ L 72.662873 189.067702 - + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/ad6aa52c6730f14c9f10f32edb03ae96b8f6a006.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/ad6aa52c6730f14c9f10f32edb03ae96b8f6a006.svg new file mode 100644 index 0000000..30965ef --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/ad6aa52c6730f14c9f10f32edb03ae96b8f6a006.svg @@ -0,0 +1,1361 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/af1722dd51faebbec05b3013eba2c2e2864dd0f4.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/af1722dd51faebbec05b3013eba2c2e2864dd0f4.svg new file mode 100644 index 0000000..0d2209b --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/af1722dd51faebbec05b3013eba2c2e2864dd0f4.svg @@ -0,0 +1,1068 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6b305bc0d459a215b7c7df707b2fa4704d07a4b3.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/af9b31c1231b61d27855a73c8e6dc2f2db604233.svg similarity index 99% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6b305bc0d459a215b7c7df707b2fa4704d07a4b3.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/af9b31c1231b61d27855a73c8e6dc2f2db604233.svg index 2c9f45c..49a0e8c 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/6b305bc0d459a215b7c7df707b2fa4704d07a4b3.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/af9b31c1231b61d27855a73c8e6dc2f2db604233.svg @@ -6043,7 +6043,7 @@ L -3493.180378 84.550875 L -3494.945587 83.734756 L -3496.710796 83.454065 z -" clip-path="url(#p77968b6734)" style="fill: #7fbee9; fill-opacity: 0.5; stroke: #7fbee9; stroke-opacity: 0.5; stroke-width: 0.24"/> +" clip-path="url(#pcb7266022b)" style="fill: #7fbee9; fill-opacity: 0.5; stroke: #7fbee9; stroke-opacity: 0.5; stroke-width: 0.24"/> +" clip-path="url(#pcb7266022b)" style="fill: #ffbf86; fill-opacity: 0.5; stroke: #ffbf86; stroke-opacity: 0.5; stroke-width: 0.24"/> - - + @@ -12140,7 +12140,7 @@ z - + @@ -12155,7 +12155,7 @@ z - + @@ -12170,7 +12170,7 @@ z - + @@ -12215,7 +12215,7 @@ z - + @@ -12258,7 +12258,7 @@ z - + @@ -12303,7 +12303,7 @@ z - + @@ -12343,7 +12343,7 @@ z - + @@ -12407,12 +12407,12 @@ z - - + @@ -12446,7 +12446,7 @@ z - + @@ -12461,7 +12461,7 @@ z - + @@ -12476,7 +12476,7 @@ z - + @@ -12492,7 +12492,7 @@ z +" clip-path="url(#pcb7266022b)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #808080; stroke-width: 0.5"/> +" clip-path="url(#pcb7266022b)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pcb7266022b)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pcb7266022b)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pcb7266022b)" style="fill: none; stroke: #d62728; stroke-width: 0.5; stroke-linecap: square"/> + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8e414af41379a102f5e066cb063acdd3a410a6a2.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c4573aef927c867b1f7b60cb1176771fdaa66f5d.svg similarity index 84% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8e414af41379a102f5e066cb063acdd3a410a6a2.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c4573aef927c867b1f7b60cb1176771fdaa66f5d.svg index 8e15c85..68f1894 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/8e414af41379a102f5e066cb063acdd3a410a6a2.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c4573aef927c867b1f7b60cb1176771fdaa66f5d.svg @@ -41,12 +41,12 @@ z - - + @@ -115,7 +115,7 @@ z - + @@ -128,7 +128,7 @@ z - + @@ -142,7 +142,7 @@ z - + @@ -425,12 +425,12 @@ z - - + @@ -476,7 +476,7 @@ z - + @@ -544,7 +544,7 @@ z - + @@ -563,7 +563,7 @@ z - + @@ -582,7 +582,7 @@ z - + @@ -600,7 +600,7 @@ z - + @@ -618,7 +618,7 @@ z - + @@ -636,7 +636,7 @@ z - + @@ -703,112 +703,112 @@ z +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #d3d3d3; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> - - - - - - - - - - - - - + + + + + + + + + + + + @@ -862,9 +862,9 @@ L 165.84046 16.661852 L 180.050465 23.873739 L 194.26047 46.839033 L 208.470475 114.235901 -" clip-path="url(#p1898c65f80)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> - - - - - - - - - - - - - + + + + + + + + + + + + @@ -902,9 +902,9 @@ L 165.84046 71.577582 L 180.050465 70.968343 L 194.26047 71.307964 L 208.470475 71.921972 -" clip-path="url(#p1898c65f80)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> - - - - - - - - - - - - - + + + + + + + + + + + + @@ -976,7 +976,7 @@ L 135.038429 103.604255 - + @@ -998,7 +998,7 @@ L 135.038429 117.231101 - + @@ -1054,7 +1054,7 @@ L 135.038429 130.525834 - + @@ -1104,12 +1104,12 @@ z - - + @@ -1123,7 +1123,7 @@ L 3.5 0 - + @@ -1137,7 +1137,7 @@ L 3.5 0 - + @@ -1151,7 +1151,7 @@ L 3.5 0 - + @@ -1235,28 +1235,28 @@ z +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5"/> +" clip-path="url(#pd4b3e44009)" style="fill: none; stroke: #9467bd; stroke-width: 0.5; stroke-linecap: square"/> - - - - - - - - - - + + + + + + + + + @@ -1339,7 +1339,7 @@ L 85.365421 18.45 - + @@ -1352,7 +1352,7 @@ L 85.365421 18.45 - + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/b0331e0557f3d5aa3f24e97405ad88d097838be6.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c578a4380fca2032a39326c64b497ca15a876dc2.svg similarity index 96% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/b0331e0557f3d5aa3f24e97405ad88d097838be6.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c578a4380fca2032a39326c64b497ca15a876dc2.svg index 9aa4cfc..4bb32cd 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/b0331e0557f3d5aa3f24e97405ad88d097838be6.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/c578a4380fca2032a39326c64b497ca15a876dc2.svg @@ -41,12 +41,12 @@ z - - + @@ -82,7 +82,7 @@ z - + @@ -148,7 +148,7 @@ z - + @@ -162,7 +162,7 @@ z - + @@ -197,7 +197,7 @@ z - + @@ -232,7 +232,7 @@ z - + @@ -247,7 +247,7 @@ z - + @@ -262,7 +262,7 @@ z - + @@ -305,12 +305,12 @@ z - - + @@ -344,7 +344,7 @@ z - + @@ -390,7 +390,7 @@ z - + @@ -431,7 +431,7 @@ z - + @@ -475,7 +475,7 @@ z - + @@ -491,7 +491,7 @@ z - + @@ -764,7 +764,7 @@ L 234.098284 136.470671 L 236.156876 136.888923 L 236.349869 136.852457 L 236.349869 136.852457 -" clip-path="url(#pbb535d3dd9)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p71932e806c)" style="fill: none; stroke: #1f77b4; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p71932e806c)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#p71932e806c)" style="fill: none; stroke: #2ca02c; stroke-width: 0.5; stroke-linecap: square"/> + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/cb7df72fdbae443014029e58c57c8cd040d2cdad.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/cb7df72fdbae443014029e58c57c8cd040d2cdad.svg new file mode 100644 index 0000000..91d1075 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/cb7df72fdbae443014029e58c57c8cd040d2cdad.svg @@ -0,0 +1,1316 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/de3eb2a9f0973f77f95d912248d6f10ee0635854.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/de3eb2a9f0973f77f95d912248d6f10ee0635854.svg new file mode 100644 index 0000000..8909157 --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/de3eb2a9f0973f77f95d912248d6f10ee0635854.svg @@ -0,0 +1,1214 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e370756ca7053f6e2cd87fb4928a509100b6900d.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e370756ca7053f6e2cd87fb4928a509100b6900d.svg new file mode 100644 index 0000000..736477b --- /dev/null +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e370756ca7053f6e2cd87fb4928a509100b6900d.svg @@ -0,0 +1,968 @@ + + + + + + + + 1980-01-01T00:00:00+00:00 + image/svg+xml + + + Matplotlib v3.6.2, https://matplotlib.org/ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e82e58b9e588d336d71900346ebb97ac1ed8fcba.svg b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e8e0f0c962520ab4b163a0756b2a22e2ebd7435f.svg similarity index 99% rename from python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e82e58b9e588d336d71900346ebb97ac1ed8fcba.svg rename to python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e8e0f0c962520ab4b163a0756b2a22e2ebd7435f.svg index 234e936..0bc8848 100644 --- a/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e82e58b9e588d336d71900346ebb97ac1ed8fcba.svg +++ b/python/otto_motor/subprojects/cycle_shift/.ob-jupyter/e8e0f0c962520ab4b163a0756b2a22e2ebd7435f.svg @@ -39,7 +39,7 @@ z - - - + + - - - + + - - - + + - - - + + - - + @@ -8168,7 +8168,7 @@ z - + @@ -8213,7 +8213,7 @@ z - + @@ -8256,7 +8256,7 @@ z - + @@ -8301,7 +8301,7 @@ z - + @@ -8341,7 +8341,7 @@ z - + @@ -8377,7 +8377,7 @@ z - + @@ -8450,12 +8450,12 @@ z - - + @@ -8489,7 +8489,7 @@ z - + @@ -8504,7 +8504,7 @@ z - + @@ -8519,7 +8519,7 @@ z - + @@ -8642,7 +8642,7 @@ L 235.663805 118.473937 L 236.208268 118.650392 L 236.934218 118.690851 L 236.934218 118.690851 -" clip-path="url(#p5375c9e665)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pa36b620dcc)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #1f77b4; stroke-width: 0.5"/> +" clip-path="url(#pa36b620dcc)" style="fill: none; stroke: #ff7f0e; stroke-width: 0.5; stroke-linecap: square"/> +" clip-path="url(#pa36b620dcc)" style="fill: none; stroke-dasharray: 1.85,0.8; stroke-dashoffset: 0; stroke: #2ca02c; stroke-width: 0.5"/> +" clip-path="url(#pa36b620dcc)" style="fill: none; stroke: #d62728; stroke-width: 0.5; stroke-linecap: square"/> + diff --git a/python/otto_motor/subprojects/cycle_shift/cycle_shift.org b/python/otto_motor/subprojects/cycle_shift/cycle_shift.org index cc67089..20b9218 100644 --- a/python/otto_motor/subprojects/cycle_shift/cycle_shift.org +++ b/python/otto_motor/subprojects/cycle_shift/cycle_shift.org @@ -80,7 +80,7 @@ We shift so that we just overlap with coupling/decoupling and one above. #+end_src #+RESULTS: -[[file:./.ob-jupyter/52bc73698a80a2938e44a3276eaeff5aded093cd.svg]] +[[file:./.ob-jupyter/af1722dd51faebbec05b3013eba2c2e2864dd0f4.svg]] #+begin_src jupyter-python :tangle no #ot.plot_cycles(models, bath=0, legend=True) @@ -104,13 +104,16 @@ We shift so that we just overlap with coupling/decoupling and one above. #+end_src #+RESULTS: -[[file:./.ob-jupyter/6c8cd0ac2518b43e36bd407ca0bb146a9f53dac7.svg]] +[[file:./.ob-jupyter/73ad99c8f33025ef14048abda5eeefe8c0dd7b15.svg]] ** Integrate #+begin_src jupyter-python :tangle tangle/original.py ot.integrate_online_multi(models, 80_000, increment=10_000, analyze_kwargs=dict(every=10_000)) #+end_src +#+RESULTS: +: 88731cee-8bf8-411e-b9db-0b0138807646 + ** Analysis #+begin_src jupyter-python for model in models: @@ -144,7 +147,7 @@ We shift so that we just overlap with coupling/decoupling and one above. #+RESULTS: :RESULTS: : \(N=80000\) -[[file:./.ob-jupyter/8dc6d71eabb095e2a21fc5d4050d2e77f8a4d407.svg]] +[[file:./.ob-jupyter/7c4c619d2f9e55840f6181197c2c4e96a71c324a.svg]] :END: #+begin_src jupyter-python @@ -183,11 +186,23 @@ We shift so that we just overlap with coupling/decoupling and one above. #+RESULTS: :RESULTS: -: [[0.11920292 0. ] -: [0. 0.88079708]] -: [[0.37754067 0. ] -: [0. 0.62245933]] -[[file:./.ob-jupyter/d10a82faed83ac74fbdb0a80362cb43f7e44dbac.svg]] +#+begin_example + [[0.11920292 0. ] + [0. 0.88079708]] + [[0.37754067 0. ] + [0. 0.62245933]] + /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/cbook/__init__.py:1369: ComplexWarning: Casting complex values to real discards the imaginary part + return np.asarray(x, float) + /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_axes.py:5340: ComplexWarning: Casting complex values to real discards the imaginary part + pts[0] = start + /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_axes.py:5341: ComplexWarning: Casting complex values to real discards the imaginary part + pts[N + 1] = end + /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_axes.py:5344: ComplexWarning: Casting complex values to real discards the imaginary part + pts[1:N+1, 1] = dep1slice + /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_axes.py:5346: ComplexWarning: Casting complex values to real discards the imaginary part + pts[N+2:, 1] = dep2slice[::-1] +#+end_example +[[file:./.ob-jupyter/81d7229d7ed52abe3f521c318cdeeeb4c52e5a87.svg]] :END: #+begin_src jupyter-python @@ -196,7 +211,6 @@ We shift so that we just overlap with coupling/decoupling and one above. #+end_src #+RESULTS: -[[file:./.ob-jupyter/2055a903d73105290085026649070f77a60ddd40.svg]] #+begin_src jupyter-python @@ -205,7 +219,7 @@ We shift so that we just overlap with coupling/decoupling and one above. #+end_src #+RESULTS: -[[file:./.ob-jupyter/6904e11bd3ec5b85e0c2e0d8d60c91a3940b3b84.svg]] +[[file:./.ob-jupyter/962ffa455699bc4ceabd74a04f849593a57a8e96.svg]] #+begin_src jupyter-python @@ -214,7 +228,7 @@ We shift so that we just overlap with coupling/decoupling and one above. #+end_src #+RESULTS: -[[file:./.ob-jupyter/6576fcf3377ebb38995ea45a6571775d4365b7ef.svg]] +[[file:./.ob-jupyter/8471d776db4404270d3df20b7173e59f783b92ba.svg]] We see that we get a pretty good picture after about 30k-40k samples. @@ -224,7 +238,7 @@ We see that we get a pretty good picture after about 30k-40k samples. #+end_src #+RESULTS: -[[file:./.ob-jupyter/8e414af41379a102f5e066cb063acdd3a410a6a2.svg]] +[[file:./.ob-jupyter/c4573aef927c867b1f7b60cb1176771fdaa66f5d.svg]] #+begin_src jupyter-python fig, ax =ot.plot_steady_energy_changes([baseline, models[3+2]], 2, label_fn=lambda m: ("baseline" if m.hexhash == baseline.hexhash else "shifted")) @@ -233,7 +247,7 @@ We see that we get a pretty good picture after about 30k-40k samples. #+end_src #+RESULTS: -[[file:./.ob-jupyter/e82e58b9e588d336d71900346ebb97ac1ed8fcba.svg]] +[[file:./.ob-jupyter/e8e0f0c962520ab4b163a0756b2a22e2ebd7435f.svg]] The best shift: @@ -253,7 +267,7 @@ The best shift: #+RESULTS: :RESULTS: : 7cac0199140ff8f9fb2e0073b950e079e582466b8a6aea99f286d5d81b62cad8 -[[file:./.ob-jupyter/b0331e0557f3d5aa3f24e97405ad88d097838be6.svg]] +[[file:./.ob-jupyter/c578a4380fca2032a39326c64b497ca15a876dc2.svg]] :END: @@ -306,7 +320,7 @@ The best shift: #+end_src #+RESULTS: -[[file:./.ob-jupyter/461e4a99905b6a95ee1aa9339dbbe19f90fef570.svg]] +[[file:./.ob-jupyter/0aaae8f600192b07ca01041789f5cbeaf0d48ee2.svg]] #+begin_src jupyter-python @@ -317,9 +331,9 @@ The best shift: #+RESULTS: :RESULTS: -| | -[[file:./.ob-jupyter/1dfc8faed914b3db9255e2f8148e6dd71674ebe3.svg]] -[[file:./.ob-jupyter/c7199307117d774aea29cabdc27a35366881d724.svg]] +| | +[[file:./.ob-jupyter/a2139b7a51fb5e3f03188d349b787fb2e3030961.svg]] +[[file:./.ob-jupyter/737556be87761f7451bcfd437fd96170f7637ec9.svg]] :END: @@ -359,7 +373,7 @@ The best shift: #+end_src #+RESULTS: -[[file:./.ob-jupyter/6b305bc0d459a215b7c7df707b2fa4704d07a4b3.svg]] +[[file:./.ob-jupyter/af9b31c1231b61d27855a73c8e6dc2f2db604233.svg]] * Explore Coupling Length Dimension for The best performing state @@ -410,7 +424,28 @@ The best shift: #+end_src #+RESULTS: -: 0.12 +:RESULTS: +# [goto error] +#+begin_example + --------------------------------------------------------------------------- + NameError Traceback (most recent call last) + Cell In[91], line 38 +  34 return next_model +  37 Ns = list(range(1, 4))[:1] + ---> 38 overlap_models = [overlap(best_shift_model, N, step) for N in Ns] +  39 overlap_models = [overlap_cold(best_shift_model, N, step) for N in Ns] +  40 new_step_size = 6 + + Cell In[91], line 38, in (.0) +  34 return next_model +  37 Ns = list(range(1, 4))[:1] + ---> 38 overlap_models = [overlap(best_shift_model, N, step) for N in Ns] +  39 overlap_models = [overlap_cold(best_shift_model, N, step) for N in Ns] +  40 new_step_size = 6 + + NameError: name 'step' is not defined +#+end_example +:END: #+begin_src jupyter-python :tangle no ot.plot_cycles([overlap_models[0]], legend=True) @@ -418,8 +453,13 @@ The best shift: #+RESULTS: :RESULTS: -|
| | -[[file:./.ob-jupyter/1448dddffc867d28693765ef9638d816846cbb48.svg]] +# [goto error] +: --------------------------------------------------------------------------- +: NameError Traceback (most recent call last) +: Cell In[90], line 1 +: ----> 1 ot.plot_cycles([overlap_models[0]], legend=True) +: +: NameError: name 'overlap_models' is not defined :END: ** Integrate @@ -592,8 +632,8 @@ modulation. #+RESULTS: :RESULTS: -: -[[file:./.ob-jupyter/471bcf75fc64732c2fc4f25ea50b3d129f263072.svg]] +: +[[file:./.ob-jupyter/cb7df72fdbae443014029e58c57c8cd040d2cdad.svg]] :END: @@ -621,14 +661,7 @@ modulation. #+end_src #+RESULTS: -:RESULTS: -[[file:./.ob-jupyter/07448a73c1975e4ddc88d7c7dbfcbfc57255a4ad.svg]] -: (pid=gcs_server) [2023-04-04 14:39:14,000 E 868116 868116] (gcs_server) gcs_server.cc:283: Failed to get the resource load: GrpcUnavailable: RPC Error message: Connection reset by peer; RPC Error details: -: (pid=gcs_server) [2023-04-04 14:39:14,000 E 868116 868116] (gcs_server) gcs_server.cc:283: Failed to get the resource load: GrpcUnavailable: RPC Error message: Connection reset by peer; RPC Error details: -: (pid=gcs_server) [2023-04-04 14:39:14,000 E 868116 868116] (gcs_server) gcs_server.cc:283: Failed to get the resource load: GrpcUnavailable: RPC Error message: Connection reset by peer; RPC Error details: -: (pid=gcs_server) [2023-04-04 14:39:14,000 E 868116 868116] (gcs_server) gcs_server.cc:283: Failed to get the resource load: GrpcUnavailable: RPC Error message: Connection reset by peer; RPC Error details: -: (pid=gcs_server) [2023-04-04 14:39:14,000 E 868116 868116] (gcs_server) gcs_server.cc:283: Failed to get the resource load: GrpcUnavailable: RPC Error message: Connection reset by peer; RPC Error details: -:END: +[[file:./.ob-jupyter/ad6aa52c6730f14c9f10f32edb03ae96b8f6a006.svg]] #+begin_src jupyter-python :tangle tangle/long.py @@ -649,15 +682,19 @@ modulation. #+end_src #+RESULTS: -: -0.18 0.12 80000 -0.7432352797196996 -98.3933277583729 (-0.6547883379568094, 0.32914493962691976) -: -0.12 0.12 80000 0.5515764970059213 -4.588837155210551 (0.28325656807481425, 0.32914493962691976) -: -0.06 0.12 80000 0.9849641934327689 10.389858999462525 (0.433043529621545, 0.32914493962691976) -: 0.0 0.12 80000 0.9864290608793423 10.386118256193916 (0.4330061221888589, 0.32914493962691976) -: 0.06 0.12 80000 0.9777553355809067 10.616195121156663 (0.4353068908384864, 0.32914493962691976) -: 0.12 0.12 80000 1.1185864670592693 10.712677023075978 (0.43627170985767955, 0.32914493962691976) -: 0.18 0.12 80000 1.280064611377701 7.403981413620636 (0.4031847537631261, 0.32914493962691976) -: 0.24 0.12 80000 1.1867997141496045 2.747192020803302 (0.3566168598349528, 0.32914493962691976) -: 0.3 0.12 80000 0.7281813558728701 -10.479096524510464 (0.22435397438181512, 0.32914493962691976) +#+begin_example + -0.18 0.12 80000 -0.7432352797196996 -98.3933277583729 (-0.6547883379568094, 0.32914493962691976) + -0.12 0.12 80000 0.5515764970059213 -4.588837155210551 (0.28325656807481425, 0.32914493962691976) + -0.06 0.12 80000 0.9849641934327689 10.389858999462525 (0.433043529621545, 0.32914493962691976) + 0.0 0.12 80000 0.9864290608793423 10.386118256193916 (0.4330061221888589, 0.32914493962691976) + 0.06 0.12 80000 0.9777553355809067 10.616195121156663 (0.4353068908384864, 0.32914493962691976) + 0.12 0.12 80000 1.1185864670592693 10.712677023075978 (0.43627170985767955, 0.32914493962691976) + 0.18 0.12 80000 1.280064611377701 7.403981413620636 (0.4031847537631261, 0.32914493962691976) + 0.24 0.12 80000 1.1867997141496045 2.747192020803302 (0.3566168598349528, 0.32914493962691976) + 0.3 0.12 80000 0.7281813558728701 -10.479096524510464 (0.22435397438181512, 0.32914493962691976) + 0.36 0.12 80000 -0.45197344202291523 -49.898300662353925 (-0.16983806699661946, 0.32914493962691976) + 0.42 0.12 80000 -1.4644608753444812 -108.49803909971185 (-0.7558354513701987, 0.32914493962691976) +#+end_example #+begin_src jupyter-python @@ -674,7 +711,7 @@ modulation. #+end_src #+RESULTS: -[[file:./.ob-jupyter/136aed41f1e97c8727d923361a130a92097a60ce.svg]] +[[file:./.ob-jupyter/3c84f70ced5643089d048ba60451f50a3409c231.svg]] Aho! The trick is just to slow down the coupling switching. @@ -687,8 +724,8 @@ Aho! The trick is just to slow down the coupling switching. #+RESULTS: :RESULTS: -: -[[file:./.ob-jupyter/79b743c561edc35e3a3916de2ce83b18cba6c55d.svg]] +: +[[file:./.ob-jupyter/4fb778a2d542fde60accec2963706290dff4418b.svg]] :END: #+begin_src jupyter-python @@ -705,7 +742,7 @@ Aho! The trick is just to slow down the coupling switching. # [goto error] : --------------------------------------------------------------------------- : NameError Traceback (most recent call last) -: Cell In[56], line 3 +: Cell In[27], line 3 :  1 powers_long = [-model.power(steady_idx=2).value for model in long_models] :  2 powers_short = [-model.power(steady_idx=2).value for model in models] : ----> 3 power_overlap = -overlap_models[0].power(steady_idx=2).value @@ -730,8 +767,17 @@ The overlap model still has slightly, but negligible power advantage. #+RESULTS: :RESULTS: -: -[[file:./.ob-jupyter/e3ad584293286425efa5f50a7c2037f568438277.svg]] +# [goto error] +: --------------------------------------------------------------------------- +: NameError Traceback (most recent call last) +: Cell In[28], line 3 +:  1 efficiencys_long = [model.efficiency(steady_idx=2).value for model in long_models] +:  2 efficiencys_short = [model.efficiency(steady_idx=2).value for model in models] +: ----> 3 efficiency_overlap = overlap_models[0].efficiency(steady_idx=2).value +:  4 plt.plot(shifts, efficiencys_short) +:  5 plt.plot(shifts, efficiencys_long) +: +: NameError: name 'overlap_models' is not defined :END: Ok, we find that there's nothing special about the overlap model. @@ -759,7 +805,7 @@ Now let's try to find out why the efficiency improved. #+end_src #+RESULTS: -[[file:./.ob-jupyter/ae6cb31c3edef8ef606a639a364d4a25e0442688.svg]] +[[file:./.ob-jupyter/1446c6e53dac7fbcb1089dcf980e7299b7d75301.svg]] Way less energy is dumped into the cold bath. #+begin_src jupyter-python @@ -807,7 +853,19 @@ Way less energy is dumped into the cold bath. #+end_src #+RESULTS: -[[file:./.ob-jupyter/68ae36ac29f3001fc1745d612ccfcba544ef5707.svg]] +:RESULTS: +: /home/hiro/src/hopsflow/hopsflow/util.py:332: RuntimeWarning: divide by zero encountered in divide +: left_i[1] / right_i[1], +: /home/hiro/src/hopsflow/hopsflow/util.py:332: RuntimeWarning: invalid value encountered in divide +: left_i[1] / right_i[1], +: /home/hiro/src/hopsflow/hopsflow/util.py:334: RuntimeWarning: divide by zero encountered in divide +: (left_i[2] / right_i[1]) ** 2 +: /home/hiro/src/hopsflow/hopsflow/util.py:335: RuntimeWarning: divide by zero encountered in divide +: + (left_i[1] / (right_i[1]) ** 2 * right_i[2]) ** 2 +: /home/hiro/src/hopsflow/hopsflow/util.py:335: RuntimeWarning: invalid value encountered in divide +: + (left_i[1] / (right_i[1]) ** 2 * right_i[2]) ** 2 +[[file:./.ob-jupyter/3d588233ddaeb47b80e2d98855937e09ec32bd3f.svg]] +:END: #+begin_src jupyter-python plt.plot(best_shift_model.t, (best_shift_model.bath_energy().for_bath(0) / best_shift_model.bath_energy().for_bath(1)).value) @@ -819,7 +877,7 @@ Way less energy is dumped into the cold bath. : /home/hiro/src/hopsflow/hopsflow/util.py:334: RuntimeWarning: invalid value encountered in divide : (left_i[2] / right_i[1]) ** 2 | -1.0 | 1.0 | -[[file:./.ob-jupyter/2481b239f61a4fc84617ca79cb91d7ee2c7eae6d.svg]] +[[file:./.ob-jupyter/e370756ca7053f6e2cd87fb4928a509100b6900d.svg]] :END: @@ -833,7 +891,7 @@ Way less energy is dumped into the cold bath. #+RESULTS: #+begin_src jupyter-python :results none :tangle tangle/only_cold.py - shifts = sc.make_shifts() + shifts = sc.make_shifts(extra_r=4) cold_models = [sc.make_model(shift, shift, switch_t=6., only_cold=True) for shift in shifts] #+end_src @@ -859,6 +917,7 @@ Way less energy is dumped into the cold bath. #+end_src #+RESULTS: +[[file:./.ob-jupyter/de3eb2a9f0973f77f95d912248d6f10ee0635854.svg]] [[file:./.ob-jupyter/e3413d8306c7996bd7476d0047a621c7c973187e.svg]] @@ -884,7 +943,7 @@ Way less energy is dumped into the cold bath. #+RESULTS: :RESULTS: | 0.0 | 60.0 | -[[file:./.ob-jupyter/88280474909756e93a10041db2d0af4db2e54edd.svg]] +[[file:./.ob-jupyter/71e4dbcb0c094107e336437a1247ef0a1e316bcb.svg]] :END: #+begin_src jupyter-python @@ -905,7 +964,61 @@ Way less energy is dumped into the cold bath. #+end_src #+RESULTS: -[[file:./.ob-jupyter/2dba4cb317ec601eaa32575401efb8dcb75a69ea.svg]] +:RESULTS: +# [goto error] +#+begin_example + --------------------------------------------------------------------------- + ValueError Traceback (most recent call last) + Cell In[36], line 3 +  1 fig, (ax2, ax1, ax3) = plt.subplots(nrows=1, ncols=3) +  2 _, ax1_right = ot.plot_powers_and_efficiencies(np.array(shifts) * 100, cold_models, xlabel="Cycle Shift", ax=ax1)[2] + ----> 3 _, ax2_right = ot.plot_powers_and_efficiencies(np.array(shifts) * 100, long_models, xlabel="Cycle Shift", ax=ax2)[2] +  4 _, ax3_right = ot.plot_powers_and_efficiencies(np.array(shifts) * 100, models, xlabel="Cycle Shift", ax=ax3)[2] +  6 ax1_right.sharey(ax2_right) + + File ~/Documents/Projects/UNI/master/eflow_paper/python/otto_motor/subprojects/cycle_shift/plot_utils.py:40, in wrap_plot..wrapped(ax, setup_function, *args, **kwargs) +  37 if not ax: +  38 fig, ax = setup_function() + ---> 40 ret_val = f(*args, ax=ax, **kwargs) +  41 return (fig, ax, ret_val) if ret_val else (fig, ax) + + File ~/Documents/Projects/UNI/master/eflow_paper/python/otto_motor/subprojects/cycle_shift/otto_utilities.py:80, in plot_powers_and_efficiencies(x, models, steady_idx, ax, xlabel) +  78 mask = efficiencies > 0 +  79 a2 = ax.twinx() + ---> 80 ax.errorbar(x, powers, yerr=powers_σ, marker=".", label=r"$\bar{P}$") +  81 ax.errorbar( +  82 x, +  83 system_powers, +  (...) +  86 label=r"$\bar{P}_{\mathrm{sys}}$", +  87 ) +  89 ax.errorbar( +  90 x, +  91 interaction_powers, +  (...) +  94 label=r"$\bar{P}_{\mathrm{int}}$", +  95 ) + + File /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/__init__.py:1423, in _preprocess_data..inner(ax, data, *args, **kwargs) +  1420 @functools.wraps(func) +  1421 def inner(ax, *args, data=None, **kwargs): +  1422 if data is None: + -> 1423 return func(ax, *map(sanitize_sequence, args), **kwargs) +  1425 bound = new_sig.bind(ax, *args, **kwargs) +  1426 auto_label = (bound.arguments.get(label_namer) +  1427 or bound.kwargs.get(label_namer)) + + File /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_axes.py:3491, in Axes.errorbar(self, x, y, yerr, xerr, fmt, ecolor, elinewidth, capsize, barsabove, lolims, uplims, xlolims, xuplims, errorevery, capthick, **kwargs) +  3489 x, y = np.atleast_1d(x, y) # Make sure all the args are iterable. +  3490 if len(x) != len(y): + -> 3491 raise ValueError("'x' and 'y' must have the same size") +  3493 everymask = self._errorevery_to_mask(x, errorevery) +  3495 label = kwargs.pop("label", None) + + ValueError: 'x' and 'y' must have the same size +#+end_example +[[file:./.ob-jupyter/0808a4e641f3bfd149695bb00c73368d6b872d03.svg]] +:END: #+begin_src jupyter-python ot.plot_multi_powers_and_efficiencies(shifts, [models, long_models, cold_models], ["shifted", "shifted + slower modulation", "slower + only cold shifted"], xlabel=r"Shift $\delta$") @@ -913,7 +1026,63 @@ Way less energy is dumped into the cold bath. #+end_src #+RESULTS: -[[file:./.ob-jupyter/b1465aa4fa0c0e24f8fa2129d1f2405598f3542f.svg]] +:RESULTS: +# [goto error] +#+begin_example + --------------------------------------------------------------------------- + ValueError Traceback (most recent call last) + Cell In[37], line 1 + ----> 1 ot.plot_multi_powers_and_efficiencies(shifts, [models, long_models, cold_models], ["shifted", "shifted + slower modulation", "slower + only cold shifted"], xlabel=r"Shift $\delta$") +  2 fs.export_fig("shift_comparison", y_scaling=1, x_scaling=2) + + File ~/Documents/Projects/UNI/master/eflow_paper/python/otto_motor/subprojects/cycle_shift/otto_utilities.py:177, in plot_multi_powers_and_efficiencies(x, multi_models, titles, steady_idx, xlabel) +  171 efficiencies_σ = np.array( +  172 [100 * model.efficiency(steady_idx=steady_idx).σ for model in models] +  173 ) +  175 mask = efficiencies > 0 + --> 177 power.plot(x, powers, marker=marker) +  178 system_power.plot( +  179 x, +  180 system_powers, +  181 marker=marker, +  182 ) +  184 interaction_power.plot( +  185 x, +  186 interaction_powers, +  187 marker=marker, +  188 ) + + File /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_axes.py:1662, in Axes.plot(self, scalex, scaley, data, *args, **kwargs) +  1419 """ +  1420 Plot y versus x as lines and/or markers. +  1421 +  (...) +  1659 (``'green'``) or hex strings (``'#008000'``). +  1660 """ +  1661 kwargs = cbook.normalize_kwargs(kwargs, mlines.Line2D) + -> 1662 lines = [*self._get_lines(*args, data=data, **kwargs)] +  1663 for line in lines: +  1664 self.add_line(line) + + File /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_base.py:311, in _process_plot_var_args.__call__(self, data, *args, **kwargs) +  309 this += args[0], +  310 args = args[1:] + --> 311 yield from self._plot_args( +  312  this, kwargs, ambiguous_fmt_datakey=ambiguous_fmt_datakey) + + File /nix/store/08ccd1bg10pbkpv71fwccyxabr1cycim-python3-3.9.15-env/lib/python3.9/site-packages/matplotlib/axes/_base.py:504, in _process_plot_var_args._plot_args(self, tup, kwargs, return_kwargs, ambiguous_fmt_datakey) +  501 self.axes.yaxis.update_units(y) +  503 if x.shape[0] != y.shape[0]: + --> 504 raise ValueError(f"x and y must have same first dimension, but " +  505 f"have shapes {x.shape} and {y.shape}") +  506 if x.ndim > 2 or y.ndim > 2: +  507 raise ValueError(f"x and y can be no greater than 2D, but have " +  508 f"shapes {x.shape} and {y.shape}") + + ValueError: x and y must have same first dimension, but have shapes (9,) and (11,) +#+end_example +[[file:./.ob-jupyter/2b127d9efe76f2d5af7288fd1c86ed71265d6c8a.svg]] +:END: ** Findings - coupling overlap doesn't help much diff --git a/python/otto_motor/subprojects/cycle_shift/figures/cold_bath_flow.pdf b/python/otto_motor/subprojects/cycle_shift/figures/cold_bath_flow.pdf index 4ba191d..90a59b1 100644 Binary files a/python/otto_motor/subprojects/cycle_shift/figures/cold_bath_flow.pdf and b/python/otto_motor/subprojects/cycle_shift/figures/cold_bath_flow.pdf differ diff --git a/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_cold_shift.pdf b/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_cold_shift.pdf index 2b10c56..e12b93a 100644 Binary files a/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_cold_shift.pdf and b/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_cold_shift.pdf differ diff --git a/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_power_efficiency_with_slower.pdf b/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_power_efficiency_with_slower.pdf index bb5ab35..8e2a6ed 100644 Binary files a/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_power_efficiency_with_slower.pdf and b/python/otto_motor/subprojects/cycle_shift/figures/cycle_shift_power_efficiency_with_slower.pdf differ diff --git a/python/otto_motor/subprojects/cycle_shift/figures/hot_vs_cold_bath.pdf b/python/otto_motor/subprojects/cycle_shift/figures/hot_vs_cold_bath.pdf index 983d07d..e281a18 100644 Binary files a/python/otto_motor/subprojects/cycle_shift/figures/hot_vs_cold_bath.pdf and b/python/otto_motor/subprojects/cycle_shift/figures/hot_vs_cold_bath.pdf differ