Compare commits

...

115 Commits

Author SHA1 Message Date
35831eaa72 add repo links and table of contents 2025-08-10 05:01:46 -05:00
40e3eb831a render site again 2025-08-08 04:25:27 -05:00
e693e840ae fix remaining links 2025-08-08 04:25:11 -05:00
e30024cbd5 fix freeze 2025-08-08 04:22:49 -05:00
b4ed75e95c update links following renaming 2025-08-08 04:22:45 -05:00
baf09ec891 rename posts to posts/math 2025-08-08 04:06:40 -05:00
b4813a5862 add topics to navbar 2025-08-08 04:01:33 -05:00
77897b5488 disable breadcrumbs on topic indices 2025-08-08 03:38:37 -05:00
9d63317254 moved posts by topic page to posts/index, add reverse chronological listing on site index 2025-08-08 03:37:37 -05:00
318338e39b add about page 2025-08-08 03:22:06 -05:00
5a696f143e add sidebars 2025-08-08 02:26:38 -05:00
5cab55a9fd fix typo 2025-08-07 22:52:41 -05:00
bd8f52d1bb freeze type-algebra 2025-08-07 22:41:46 -05:00
3291ddded3 add index to type-algebra 2025-08-07 22:38:19 -05:00
64d2b07865 ensure consistent function order in type-algebra.* 2025-08-07 22:33:15 -05:00
71b4f64594 update dates on type-algebra.* 2025-08-07 22:16:34 -05:00
12fe38bfd5 revisions to type-algebra.3 2025-08-07 18:24:02 -05:00
dd3b9a4ee7 revisions to type-algebra.2 2025-08-07 00:54:51 -05:00
125c7a6c02 revisions to type-algebra.1 2025-08-06 04:11:37 -05:00
c47d9cb6f1 import type-algebra from from-wordpress 2025-08-05 23:37:15 -05:00
3e7746714c freeze posts 2025-08-05 04:07:50 -05:00
a699e24eaf add finite-field index 2025-08-05 04:05:56 -05:00
5c6795163f add extra post as a child of finite-field.2 2025-08-05 04:05:36 -05:00
46128385fc add taglines to finite-field.{2,3,4} 2025-08-05 03:32:38 -05:00
93889bc2a9 add cleanup makefile for removing build artifacts 2025-08-05 03:20:27 -05:00
3581c804cf haskellify finite-field.4 2025-08-05 03:17:36 -05:00
91cfd2397a haskellify finite-field.3 2025-08-04 05:33:30 -05:00
8d14c5b414 minor cleanups in finite-field.2 2025-08-03 22:56:15 -05:00
52913ce62d relocate gitignore 2025-08-03 22:43:19 -05:00
ee4b2cd0a5 haskellify finite-field.2 2025-08-03 22:40:35 -05:00
9385797c63 haskellify finite-field.1 2025-08-01 04:32:34 -05:00
86778da52a posts/finite-field/2/char_2_irreducibles_graphs.png: convert to Git LFS 2025-07-31 23:54:38 -05:00
bee03e467f remove extraneous quotes from descriptions 2025-07-31 23:36:17 -05:00
8d590251f6 initial revisions to finite.4 2025-07-31 23:36:17 -05:00
b0ce5e8f83 initial revisions to finite.3 2025-07-31 23:36:16 -05:00
72e2489e3c initial revisions to finite.2 2025-07-31 23:36:16 -05:00
a293cd57e9 revisions to finite.1 2025-07-31 23:36:16 -05:00
6fc358b8a5 add finite-field from from-wordpress 2025-07-31 23:36:16 -05:00
dea3fa5e5b revisions to misc.infinitesimals 2025-07-31 23:12:35 -05:00
8c0839c086 import misc.infinitesimals from from-wordpress 2025-07-31 00:42:37 -05:00
398eedc07a remove code block hiding from number-number 2025-07-30 17:59:37 -05:00
497f057b9b add frozen output for stereo.1 2025-07-30 03:37:32 -05:00
b4ecd4fb43 render and freeze pages 2025-07-30 03:34:43 -05:00
ab9da81700 add parent page to number-number 2025-07-30 03:34:17 -05:00
9637139046 remove static matplotlib outputs 2025-07-30 03:29:27 -05:00
b60bb688dd revisions and haskellification to number-number.1 2025-07-30 03:27:50 -05:00
6bbcf0cfcc move gitignore 2025-07-30 03:27:32 -05:00
118657d2fc extra revisions to number-number.2 2025-07-30 00:37:47 -05:00
3fe47b2af3 finish haskellification to number-number.2 2025-07-29 06:03:26 -05:00
fe213401dd redo row and diagonal rendering functions 2025-07-29 05:59:34 -05:00
b5785fff56 lift rendercells to either string a 2025-07-29 00:59:42 -05:00
4cfca44e6c stop relying on undefined in RenderCell 2025-07-29 00:47:03 -05:00
35d97a8a16 images and initial haskellification to number-number.2 2025-07-29 00:34:50 -05:00
0ccdd33538 images and initial revisions to number-number.1 2025-07-26 14:23:33 -05:00
cd4d3e57ec import number-number from from-wordpress 2025-07-22 19:32:47 -05:00
cb0f669874 add git lfs 2025-07-22 03:56:03 -05:00
a0669af50e Merge branch 'algebraic-stereography' into rewritten 2025-07-22 03:34:47 -05:00
097431afdc add stereo index 2025-07-22 03:31:59 -05:00
94dee54cdb add videos in stereo.2 2025-07-22 03:28:17 -05:00
8fb3ddad8f add programmatic output for approximation in stereo.1 2025-07-22 03:28:11 -05:00
01f7014fcf move files to subdir, add recipe for results 2025-07-22 02:52:37 -05:00
b2b2dd4e04 fixes for stereographic approximation reporting 2025-07-22 02:37:59 -05:00
86938469af refactor c files 2025-07-22 01:19:57 -05:00
32294879c9 clang-format stereography c files 2025-07-22 00:16:00 -05:00
5fbf8970c2 add old c files for pade approximants 2025-07-21 23:45:41 -05:00
3799b5c077 merge branch 'rewritten' into algebraic-sterography (squash) 2025-07-21 21:34:18 -05:00
c923255683 add white outline to favicon 2025-07-19 23:33:41 -05:00
66a7fe20e8 render site and add frozen artifacts 2025-07-19 20:27:32 -05:00
b4859d237f add chebyshev index, sort posts by date ascending instead 2025-07-19 20:26:19 -05:00
87af956a7f remove quotes from descriptions of chebychev/* 2025-07-19 20:26:11 -05:00
ef08bdfde5 add listing page for permutations 2025-07-19 20:09:10 -05:00
88f0d0017d blacken python scripts 2025-07-19 19:55:08 -05:00
6cde000ea0 undo bad padding 2025-07-19 19:54:36 -05:00
d833f66ebb secondary revisions to permutations 2025-07-19 19:53:55 -05:00
9b8f133133 fix swap diagram in embedding image 2025-07-19 19:53:40 -05:00
33cc0f2fe8 add missing root to exponential graph 2025-07-19 18:29:06 -05:00
ff69a2ce65 images and revisions to permutations.appendix 2025-07-11 02:14:37 -05:00
397c278e34 images and revisions to permutations.3 2025-07-07 03:08:01 -05:00
f5d6614462 finish pythonifying data, minor revisions to permutations.2 2025-07-06 02:54:11 -05:00
2c1775e8f2 start pythonifying data 2025-07-06 00:11:15 -05:00
55cb9ddd3d images and partial revisions to permutations.2 2025-07-05 14:40:38 -05:00
de53067561 revisions and images to permutations.1 2025-07-05 01:48:14 -05:00
e9ae48f466 import permutations from from-wordpress 2025-07-04 08:53:31 -05:00
a15fca6599 refactored notes into markdown, add gitignore 2025-07-03 03:54:23 -05:00
e3f4bb83c8 add old stereograph_notes script 2025-07-01 04:55:45 -05:00
6f34d0ca0d revisions and images to stereo.2 (videos pending) 2025-07-01 04:44:54 -05:00
7dd5f5a44e revisions and images to stereo.1 2025-06-29 23:53:02 -05:00
6a1c2d5689 import stereo from from-wordpress 2025-06-28 20:00:51 -05:00
e4aa0dd8d9 tweaks to all chebyshev posts 2025-06-28 19:37:59 -05:00
869c35c1a4 revisions and images to chebyshev.extra 2025-06-27 03:50:24 -05:00
7b14ea318d add new image; fix labelling in old image 2025-06-25 18:35:08 -05:00
a202facfcd revisions and images to chebyshev.2 2025-06-24 06:23:26 -05:00
466a41668b reorder sections in chebyshev.1 2025-06-19 02:53:41 -05:00
14fcad9af7 revisions and images to chebyshev.1 2025-06-19 02:27:00 -05:00
9e9bacd069 add images to platonic-volume 2025-06-17 03:16:23 -05:00
7f14865306 add revisions to platonic_volume 2025-06-15 13:17:11 -05:00
634f07759f add chebyshev and platonic_volume from from-wordpress 2025-06-03 05:43:30 -05:00
1d0df50149 add logos 2025-03-26 22:16:58 -05:00
bede4516d9 ignore identity in double-goldberg recipes 2025-03-25 20:19:12 -05:00
cc41c90cca fix newline disabling katex render 2025-03-25 20:03:22 -05:00
3bcf958e86 add execution results 2025-03-23 22:38:57 -05:00
8f71b6d179 small name cleanup part 2 2025-03-23 22:38:04 -05:00
6fe3661888 add index page 2025-03-23 22:34:44 -05:00
ddcfc8cad7 small name cleanup 2025-03-23 22:34:11 -05:00
77dfe62b06 remove unused, rename goldberg.common to goldberg.display 2025-03-23 22:21:27 -05:00
bbf141785e refactor pentagons.3 2025-03-23 22:05:24 -05:00
6caf4640ac refactor pentagons.2 2025-03-23 20:25:31 -05:00
118b1a2477 refactor into package, refactor pentagons.1 2025-03-23 20:24:54 -05:00
e6188cc36a finish revisions to pentagons.3 2025-03-19 06:48:53 -05:00
a38b9f10df half-revisions to pentagons.3 2025-03-18 05:18:08 -05:00
72b9ce677e revisions to pentagons.2 2025-03-16 10:30:13 -05:00
f040d9c222 revisions to pentagons.1 2025-03-10 05:10:05 -05:00
6ddfa44cf9 refactor image rendering script 2025-03-10 05:01:31 -05:00
d9337616db add image rendering script 2025-03-08 23:31:22 -06:00
ff2cb39dd0 import pentagons from from-wordpress 2025-03-06 02:45:03 -06:00
394 changed files with 47351 additions and 33 deletions

3
.gitattributes vendored Normal file
View File

@ -0,0 +1,3 @@
*.mp4 filter=lfs diff=lfs merge=lfs -text
*.gif filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,334 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-08-03T22:53:53.738594</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 57.6 307.584
L 414.72 307.584
L 414.72 41.472
L 57.6 41.472
z
" style="fill: #ffffff"/>
</g>
<g id="patch_3">
<path d="M 390.514075 187.957836
Q 236.158737 122.454172 82.832593 57.387266
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 85.733454 60.790941
L 82.832593 57.387266
L 87.29605 57.108782
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="patch_4">
<path d="M 279.499516 173.899003
Q 334.710372 181.992361 388.815017 189.92356
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 385.147394 187.364549
L 388.815017 189.92356
L 384.567234 191.322252
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="patch_5">
<path d="M 263.518245 168.164289
Q 172.381729 113.105228 82.202167 58.624299
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 84.591676 62.404543
L 82.202167 58.624299
L 86.660068 58.980838
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="patch_6">
<path d="M 267.221177 180.467066
Q 241.802173 234.06546 216.862251 286.653664
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 220.383344 283.89651
L 216.862251 286.653664
L 216.769184 282.182497
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="patch_7">
<path d="M 220.228666 291.252913
Q 305.581235 243.413972 389.958514 196.121668
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 385.491361 196.332723
L 389.958514 196.121668
L 387.447066 199.822023
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="patch_8">
<path d="M 208.361368 287.975988
Q 143.251403 174.525827 78.697949 62.045353
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 78.954355 66.510133
L 78.697949 62.045353
L 82.423616 64.519096
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="patch_9">
<path d="M 216.383108 287.663982
Q 241.802112 234.065589 266.742034 181.477385
" clip-path="url(#p8fa51a7528)" style="fill: none; stroke: #000000; stroke-linecap: round"/>
<path d="M 263.22094 184.234539
L 266.742034 181.477385
L 266.835101 185.948552
z
" clip-path="url(#p8fa51a7528)" style="stroke: #000000; stroke-linecap: round"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1"/>
<g id="xtick_2"/>
<g id="xtick_3"/>
<g id="xtick_4"/>
<g id="xtick_5"/>
<g id="xtick_6"/>
<g id="xtick_7"/>
<g id="xtick_8"/>
<g id="xtick_9"/>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1"/>
<g id="ytick_2"/>
<g id="ytick_3"/>
<g id="ytick_4"/>
<g id="ytick_5"/>
<g id="ytick_6"/>
<g id="ytick_7"/>
</g>
<g id="PathCollection_1">
<path d="M 398.487273 200.00167
C 400.783999 200.00167 402.986966 199.089171 404.610997 197.465141
C 406.235028 195.84111 407.147527 193.638142 407.147527 191.341416
C 407.147527 189.04469 406.235028 186.841722 404.610997 185.217692
C 402.986966 183.593661 400.783999 182.681162 398.487273 182.681162
C 396.190547 182.681162 393.987579 183.593661 392.363548 185.217692
C 390.739518 186.841722 389.827019 189.04469 389.827019 191.341416
C 389.827019 193.638142 390.739518 195.84111 392.363548 197.465141
C 393.987579 199.089171 396.190547 200.00167 398.487273 200.00167
z
" clip-path="url(#p8fa51a7528)" style="fill: #1f78b4; stroke: #1f78b4"/>
<path d="M 73.832727 62.228254
C 76.129453 62.228254 78.332421 61.315755 79.956452 59.691724
C 81.580482 58.067694 82.492981 55.864726 82.492981 53.568
C 82.492981 51.271274 81.580482 49.068306 79.956452 47.444276
C 78.332421 45.820245 76.129453 44.907746 73.832727 44.907746
C 71.536001 44.907746 69.333034 45.820245 67.709003 47.444276
C 66.084972 49.068306 65.172473 51.271274 65.172473 53.568
C 65.172473 55.864726 66.084972 58.067694 67.709003 59.691724
C 69.333034 61.315755 71.536001 62.228254 73.832727 62.228254
z
" clip-path="url(#p8fa51a7528)" style="fill: #1f78b4; stroke: #1f78b4"/>
<path d="M 270.931712 181.303303
C 273.228439 181.303303 275.431406 180.390804 277.055437 178.766773
C 278.679467 177.142742 279.591966 174.939775 279.591966 172.643049
C 279.591966 170.346322 278.679467 168.143355 277.055437 166.519324
C 275.431406 164.895294 273.228439 163.982795 270.931712 163.982795
C 268.634986 163.982795 266.432019 164.895294 264.807988 166.519324
C 263.183957 168.143355 262.271458 170.346322 262.271458 172.643049
C 262.271458 174.939775 263.183957 177.142742 264.807988 178.766773
C 266.432019 180.390804 268.634986 181.303303 270.931712 181.303303
z
" clip-path="url(#p8fa51a7528)" style="fill: #1f78b4; stroke: #1f78b4"/>
<path d="M 212.672572 304.148254
C 214.969299 304.148254 217.172266 303.235755 218.796297 301.611724
C 220.420327 299.987694 221.332826 297.784726 221.332826 295.488
C 221.332826 293.191274 220.420327 290.988306 218.796297 289.364276
C 217.172266 287.740245 214.969299 286.827746 212.672572 286.827746
C 210.375846 286.827746 208.172879 287.740245 206.548848 289.364276
C 204.924817 290.988306 204.012318 293.191274 204.012318 295.488
C 204.012318 297.784726 204.924817 299.987694 206.548848 301.611724
C 208.172879 303.235755 210.375846 304.148254 212.672572 304.148254
z
" clip-path="url(#p8fa51a7528)" style="fill: #1f78b4; stroke: #1f78b4"/>
</g>
<g id="patch_10">
<path d="M 57.6 307.584
L 57.6 41.472
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_11">
<path d="M 414.72 307.584
L 414.72 41.472
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_12">
<path d="M 57.6 307.584
L 414.72 307.584
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_13">
<path d="M 57.6 41.472
L 414.72 41.472
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="text_1">
<!-- 10 -->
<g transform="translate(390.852273 194.652666) scale(0.12 -0.12)">
<defs>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
</g>
</g>
<g id="text_2">
<!-- 16 -->
<g transform="translate(66.197727 56.87925) scale(0.12 -0.12)">
<defs>
<path id="DejaVuSans-36" d="M 2113 2584
Q 1688 2584 1439 2293
Q 1191 2003 1191 1497
Q 1191 994 1439 701
Q 1688 409 2113 409
Q 2538 409 2786 701
Q 3034 994 3034 1497
Q 3034 2003 2786 2293
Q 2538 2584 2113 2584
z
M 3366 4563
L 3366 3988
Q 3128 4100 2886 4159
Q 2644 4219 2406 4219
Q 1781 4219 1451 3797
Q 1122 3375 1075 2522
Q 1259 2794 1537 2939
Q 1816 3084 2150 3084
Q 2853 3084 3261 2657
Q 3669 2231 3669 1497
Q 3669 778 3244 343
Q 2819 -91 2113 -91
Q 1303 -91 875 529
Q 447 1150 447 2328
Q 447 3434 972 4092
Q 1497 4750 2381 4750
Q 2619 4750 2861 4703
Q 3103 4656 3366 4563
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-36" transform="translate(63.623047 0)"/>
</g>
</g>
<g id="text_3">
<!-- 14 -->
<g transform="translate(263.296712 175.954299) scale(0.12 -0.12)">
<defs>
<path id="DejaVuSans-34" d="M 2419 4116
L 825 1625
L 2419 1625
L 2419 4116
z
M 2253 4666
L 3047 4666
L 3047 1625
L 3713 1625
L 3713 1100
L 3047 1100
L 3047 0
L 2419 0
L 2419 1100
L 313 1100
L 313 1709
L 2253 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-34" transform="translate(63.623047 0)"/>
</g>
</g>
<g id="text_4">
<!-- 17 -->
<g transform="translate(205.037572 298.79925) scale(0.12 -0.12)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-37" transform="translate(63.623047 0)"/>
</g>
</g>
</g>
</g>
<defs>
<clipPath id="p8fa51a7528">
<rect x="57.6" y="41.472" width="357.12" height="266.112"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 10 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,744 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-07-30T17:57:28.746680</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 33.73 317.72
L 442.035 317.72
L 442.035 14.76
L 33.73 14.76
z
" style="fill: #ffffff"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<defs>
<path id="m704ac02017" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m704ac02017" x="50.822178" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
<!-- 0.0 -->
<g transform="translate(42.870616 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-2e" d="M 684 794
L 1344 794
L 1344 0
L 684 0
L 684 794
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_2">
<g id="line2d_2">
<g>
<use xlink:href="#m704ac02017" x="125.939735" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
<!-- 0.2 -->
<g transform="translate(117.988172 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-32" d="M 1228 531
L 3431 531
L 3431 0
L 469 0
L 469 531
Q 828 903 1448 1529
Q 2069 2156 2228 2338
Q 2531 2678 2651 2914
Q 2772 3150 2772 3378
Q 2772 3750 2511 3984
Q 2250 4219 1831 4219
Q 1534 4219 1204 4116
Q 875 4013 500 3803
L 500 4441
Q 881 4594 1212 4672
Q 1544 4750 1819 4750
Q 2544 4750 2975 4387
Q 3406 4025 3406 3419
Q 3406 3131 3298 2873
Q 3191 2616 2906 2266
Q 2828 2175 2409 1742
Q 1991 1309 1228 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_3">
<g id="line2d_3">
<g>
<use xlink:href="#m704ac02017" x="201.057292" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
<!-- 0.4 -->
<g transform="translate(193.105729 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-34" d="M 2419 4116
L 825 1625
L 2419 1625
L 2419 4116
z
M 2253 4666
L 3047 4666
L 3047 1625
L 3713 1625
L 3713 1100
L 3047 1100
L 3047 0
L 2419 0
L 2419 1100
L 313 1100
L 313 1709
L 2253 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-34" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_4">
<g id="line2d_4">
<g>
<use xlink:href="#m704ac02017" x="276.174848" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
<!-- 0.6 -->
<g transform="translate(268.223286 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-36" d="M 2113 2584
Q 1688 2584 1439 2293
Q 1191 2003 1191 1497
Q 1191 994 1439 701
Q 1688 409 2113 409
Q 2538 409 2786 701
Q 3034 994 3034 1497
Q 3034 2003 2786 2293
Q 2538 2584 2113 2584
z
M 3366 4563
L 3366 3988
Q 3128 4100 2886 4159
Q 2644 4219 2406 4219
Q 1781 4219 1451 3797
Q 1122 3375 1075 2522
Q 1259 2794 1537 2939
Q 1816 3084 2150 3084
Q 2853 3084 3261 2657
Q 3669 2231 3669 1497
Q 3669 778 3244 343
Q 2819 -91 2113 -91
Q 1303 -91 875 529
Q 447 1150 447 2328
Q 447 3434 972 4092
Q 1497 4750 2381 4750
Q 2619 4750 2861 4703
Q 3103 4656 3366 4563
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-36" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_5">
<g id="line2d_5">
<g>
<use xlink:href="#m704ac02017" x="351.292405" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
<!-- 0.8 -->
<g transform="translate(343.340842 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-38" d="M 2034 2216
Q 1584 2216 1326 1975
Q 1069 1734 1069 1313
Q 1069 891 1326 650
Q 1584 409 2034 409
Q 2484 409 2743 651
Q 3003 894 3003 1313
Q 3003 1734 2745 1975
Q 2488 2216 2034 2216
z
M 1403 2484
Q 997 2584 770 2862
Q 544 3141 544 3541
Q 544 4100 942 4425
Q 1341 4750 2034 4750
Q 2731 4750 3128 4425
Q 3525 4100 3525 3541
Q 3525 3141 3298 2862
Q 3072 2584 2669 2484
Q 3125 2378 3379 2068
Q 3634 1759 3634 1313
Q 3634 634 3220 271
Q 2806 -91 2034 -91
Q 1263 -91 848 271
Q 434 634 434 1313
Q 434 1759 690 2068
Q 947 2378 1403 2484
z
M 1172 3481
Q 1172 3119 1398 2916
Q 1625 2713 2034 2713
Q 2441 2713 2670 2916
Q 2900 3119 2900 3481
Q 2900 3844 2670 4047
Q 2441 4250 2034 4250
Q 1625 4250 1398 4047
Q 1172 3844 1172 3481
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-38" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_6">
<g id="line2d_6">
<g>
<use xlink:href="#m704ac02017" x="426.409961" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
<!-- 1.0 -->
<g transform="translate(418.458399 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_7">
<defs>
<path id="m3fb0ce5ed4" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="307.955174" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
<!-- 0.1 -->
<g transform="translate(10.826875 311.754392) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-31" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_2">
<g id="line2d_8">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="271.90043" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
<!-- 0.2 -->
<g transform="translate(10.826875 275.699649) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_3">
<g id="line2d_9">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="235.845686" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_9">
<!-- 0.3 -->
<g transform="translate(10.826875 239.644905) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-33" d="M 2597 2516
Q 3050 2419 3304 2112
Q 3559 1806 3559 1356
Q 3559 666 3084 287
Q 2609 -91 1734 -91
Q 1441 -91 1130 -33
Q 819 25 488 141
L 488 750
Q 750 597 1062 519
Q 1375 441 1716 441
Q 2309 441 2620 675
Q 2931 909 2931 1356
Q 2931 1769 2642 2001
Q 2353 2234 1838 2234
L 1294 2234
L 1294 2753
L 1863 2753
Q 2328 2753 2575 2939
Q 2822 3125 2822 3475
Q 2822 3834 2567 4026
Q 2313 4219 1838 4219
Q 1578 4219 1281 4162
Q 984 4106 628 3988
L 628 4550
Q 988 4650 1302 4700
Q 1616 4750 1894 4750
Q 2613 4750 3031 4423
Q 3450 4097 3450 3541
Q 3450 3153 3228 2886
Q 3006 2619 2597 2516
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-33" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_4">
<g id="line2d_10">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="199.790942" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
<!-- 0.4 -->
<g transform="translate(10.826875 203.590161) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-34" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_5">
<g id="line2d_11">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="163.736198" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
<!-- 0.5 -->
<g transform="translate(10.826875 167.535417) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-35" d="M 691 4666
L 3169 4666
L 3169 4134
L 1269 4134
L 1269 2991
Q 1406 3038 1543 3061
Q 1681 3084 1819 3084
Q 2600 3084 3056 2656
Q 3513 2228 3513 1497
Q 3513 744 3044 326
Q 2575 -91 1722 -91
Q 1428 -91 1123 -41
Q 819 9 494 109
L 494 744
Q 775 591 1075 516
Q 1375 441 1709 441
Q 2250 441 2565 725
Q 2881 1009 2881 1497
Q 2881 1984 2565 2268
Q 2250 2553 1709 2553
Q 1456 2553 1204 2497
Q 953 2441 691 2322
L 691 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_6">
<g id="line2d_12">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="127.681455" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
<!-- 0.6 -->
<g transform="translate(10.826875 131.480673) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-36" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_7">
<g id="line2d_13">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="91.626711" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
<!-- 0.7 -->
<g transform="translate(10.826875 95.425929) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_8">
<g id="line2d_14">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="55.571967" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
<!-- 0.8 -->
<g transform="translate(10.826875 59.371186) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-38" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_9">
<g id="line2d_15">
<g>
<use xlink:href="#m3fb0ce5ed4" x="33.73" y="19.517223" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
<!-- 0.9 -->
<g transform="translate(10.826875 23.316442) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-39" d="M 703 97
L 703 672
Q 941 559 1184 500
Q 1428 441 1663 441
Q 2288 441 2617 861
Q 2947 1281 2994 2138
Q 2813 1869 2534 1725
Q 2256 1581 1919 1581
Q 1219 1581 811 2004
Q 403 2428 403 3163
Q 403 3881 828 4315
Q 1253 4750 1959 4750
Q 2769 4750 3195 4129
Q 3622 3509 3622 2328
Q 3622 1225 3098 567
Q 2575 -91 1691 -91
Q 1453 -91 1209 -44
Q 966 3 703 97
z
M 1959 2075
Q 2384 2075 2632 2365
Q 2881 2656 2881 3163
Q 2881 3666 2632 3958
Q 2384 4250 1959 4250
Q 1534 4250 1286 3958
Q 1038 3666 1038 3163
Q 1038 2656 1286 2365
Q 1534 2075 1959 2075
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-39" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="line2d_16">
<path d="M 52.289318 303.949091
L 53.756458 298.941488
L 55.223598 295.936926
L 56.690738 292.50314
L 58.157877 289.927802
L 61.092157 287.081375
L 62.559297 283.918678
L 64.026436 281.306015
L 65.493576 280.383899
L 66.960716 279.626446
L 69.894996 277.241873
L 71.362135 276.407273
L 72.829275 275.334215
L 74.296415 271.90043
L 75.763555 268.895868
L 77.230694 268.105194
L 78.697834 267.530158
L 81.632114 266.053715
L 84.566393 265.140165
L 87.500673 262.59598
L 90.434952 261.599074
L 91.902092 260.806662
L 93.369232 259.882182
L 94.836372 259.175226
L 96.303511 258.165289
L 97.770651 253.873058
L 99.237791 249.954064
L 100.704931 249.129013
L 102.172071 248.57089
L 105.10635 247.277678
L 108.04063 246.564664
L 110.974909 244.859372
L 115.376329 243.857851
L 116.843468 243.392028
L 118.310608 243.056635
L 119.777748 242.60595
L 122.712027 239.334855
L 124.179167 238.850248
L 125.646307 238.483838
L 128.580587 237.484538
L 131.514866 236.820138
L 134.449146 234.753118
L 137.383425 233.842645
L 138.850565 233.072244
L 140.317705 232.115885
L 141.784845 231.338843
L 143.251984 230.152832
L 146.186264 217.818314
L 147.653404 216.75788
L 149.120543 216.07373
L 150.587683 215.242975
L 152.054823 214.582632
L 154.989103 213.812231
L 157.923382 212.102318
L 162.324801 211.176651
L 163.791941 210.764125
L 166.726221 210.092298
L 169.6605 207.586562
L 175.529059 206.34635
L 178.463339 205.92792
L 181.397619 204.707498
L 184.331898 204.205809
L 188.733317 202.926137
L 190.200457 202.366281
L 193.134737 197.12022
L 194.601877 196.513238
L 196.069016 196.09302
L 199.003296 195.088149
L 201.937575 194.514638
L 204.871855 193.083083
L 209.273274 192.20047
L 213.674694 191.050398
L 216.608973 187.772694
L 218.076113 187.250162
L 219.543253 186.848214
L 222.477532 185.720798
L 225.411812 184.944871
L 226.878952 183.766612
L 228.346091 182.385204
L 231.280371 181.182042
L 232.747511 180.124718
L 234.214651 178.759008
L 235.68179 177.603408
L 237.14893 175.754446
L 240.08321 151.71795
L 241.550349 149.868989
L 243.017489 148.713388
L 244.484629 147.347678
L 245.951769 146.290355
L 248.886048 145.087193
L 250.353188 143.705785
L 251.820328 142.527526
L 256.221747 141.201983
L 257.688887 140.624183
L 259.156027 140.222235
L 260.623167 139.699702
L 263.557446 136.421998
L 267.958865 135.271927
L 269.426005 134.892403
L 272.360285 134.389314
L 275.294564 132.957759
L 278.228844 132.384247
L 282.630263 130.959159
L 284.097403 130.352176
L 287.031683 125.106116
L 288.498822 124.546259
L 291.433102 123.675372
L 292.900242 123.266588
L 295.834521 122.764899
L 298.768801 121.544477
L 303.17022 120.813884
L 307.571639 119.885834
L 310.505919 117.380099
L 316.374478 115.908477
L 319.308758 115.370079
L 322.243037 113.660165
L 325.177317 112.889765
L 326.644457 112.229421
L 328.111596 111.398667
L 329.578736 110.714516
L 331.045876 109.654083
L 333.980155 97.319565
L 335.447295 96.133554
L 336.914435 95.356512
L 338.381575 94.400153
L 339.848715 93.629752
L 342.782994 92.719279
L 345.717274 90.652258
L 350.118693 89.505843
L 351.585833 88.988559
L 353.052973 88.622149
L 354.520112 88.137542
L 357.454392 84.866446
L 361.855811 83.614545
L 363.322951 83.188366
L 366.257231 82.613025
L 369.19151 80.907733
L 372.12579 80.194719
L 373.592929 79.608463
L 375.060069 78.901507
L 376.527209 78.343384
L 377.994349 77.518333
L 379.461489 73.599339
L 380.928628 69.307107
L 382.395768 68.297171
L 383.862908 67.590215
L 385.330048 66.665734
L 386.797187 65.873322
L 389.731467 64.876417
L 392.665746 62.332231
L 395.600026 61.418682
L 401.468585 58.576529
L 402.935725 55.571967
L 404.402865 52.138182
L 405.870004 51.065124
L 407.337144 50.230523
L 410.271424 47.84595
L 411.738564 47.088498
L 414.672843 43.553719
L 417.607123 38.931316
L 420.541402 34.969256
L 423.475682 28.530909
L 423.475682 28.530909
" clip-path="url(#p6dddd11e9f)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="patch_3">
<path d="M 33.73 317.72
L 33.73 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_4">
<path d="M 442.035 317.72
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_5">
<path d="M 33.73 317.72
L 442.035 317.72
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_6">
<path d="M 33.73 14.76
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
</g>
</g>
<defs>
<clipPath id="p6dddd11e9f">
<rect x="33.73" y="14.76" width="408.305" height="302.96"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -0,0 +1,751 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-07-30T17:57:30.086732</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 33.73 317.72
L 442.035 317.72
L 442.035 14.76
L 33.73 14.76
z
" style="fill: #ffffff"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<defs>
<path id="m82b750d18c" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m82b750d18c" x="46.890244" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
<!-- 0.1 -->
<g transform="translate(38.938681 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-2e" d="M 684 794
L 1344 794
L 1344 0
L 684 0
L 684 794
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-31" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_2">
<g id="line2d_2">
<g>
<use xlink:href="#m82b750d18c" x="95.481913" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
<!-- 0.2 -->
<g transform="translate(87.530351 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-32" d="M 1228 531
L 3431 531
L 3431 0
L 469 0
L 469 531
Q 828 903 1448 1529
Q 2069 2156 2228 2338
Q 2531 2678 2651 2914
Q 2772 3150 2772 3378
Q 2772 3750 2511 3984
Q 2250 4219 1831 4219
Q 1534 4219 1204 4116
Q 875 4013 500 3803
L 500 4441
Q 881 4594 1212 4672
Q 1544 4750 1819 4750
Q 2544 4750 2975 4387
Q 3406 4025 3406 3419
Q 3406 3131 3298 2873
Q 3191 2616 2906 2266
Q 2828 2175 2409 1742
Q 1991 1309 1228 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_3">
<g id="line2d_3">
<g>
<use xlink:href="#m82b750d18c" x="144.073583" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
<!-- 0.3 -->
<g transform="translate(136.12202 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-33" d="M 2597 2516
Q 3050 2419 3304 2112
Q 3559 1806 3559 1356
Q 3559 666 3084 287
Q 2609 -91 1734 -91
Q 1441 -91 1130 -33
Q 819 25 488 141
L 488 750
Q 750 597 1062 519
Q 1375 441 1716 441
Q 2309 441 2620 675
Q 2931 909 2931 1356
Q 2931 1769 2642 2001
Q 2353 2234 1838 2234
L 1294 2234
L 1294 2753
L 1863 2753
Q 2328 2753 2575 2939
Q 2822 3125 2822 3475
Q 2822 3834 2567 4026
Q 2313 4219 1838 4219
Q 1578 4219 1281 4162
Q 984 4106 628 3988
L 628 4550
Q 988 4650 1302 4700
Q 1616 4750 1894 4750
Q 2613 4750 3031 4423
Q 3450 4097 3450 3541
Q 3450 3153 3228 2886
Q 3006 2619 2597 2516
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-33" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_4">
<g id="line2d_4">
<g>
<use xlink:href="#m82b750d18c" x="192.665252" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
<!-- 0.4 -->
<g transform="translate(184.71369 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-34" d="M 2419 4116
L 825 1625
L 2419 1625
L 2419 4116
z
M 2253 4666
L 3047 4666
L 3047 1625
L 3713 1625
L 3713 1100
L 3047 1100
L 3047 0
L 2419 0
L 2419 1100
L 313 1100
L 313 1709
L 2253 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-34" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_5">
<g id="line2d_5">
<g>
<use xlink:href="#m82b750d18c" x="241.256921" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
<!-- 0.5 -->
<g transform="translate(233.305359 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-35" d="M 691 4666
L 3169 4666
L 3169 4134
L 1269 4134
L 1269 2991
Q 1406 3038 1543 3061
Q 1681 3084 1819 3084
Q 2600 3084 3056 2656
Q 3513 2228 3513 1497
Q 3513 744 3044 326
Q 2575 -91 1722 -91
Q 1428 -91 1123 -41
Q 819 9 494 109
L 494 744
Q 775 591 1075 516
Q 1375 441 1709 441
Q 2250 441 2565 725
Q 2881 1009 2881 1497
Q 2881 1984 2565 2268
Q 2250 2553 1709 2553
Q 1456 2553 1204 2497
Q 953 2441 691 2322
L 691 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_6">
<g id="line2d_6">
<g>
<use xlink:href="#m82b750d18c" x="289.848591" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
<!-- 0.6 -->
<g transform="translate(281.897028 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-36" d="M 2113 2584
Q 1688 2584 1439 2293
Q 1191 2003 1191 1497
Q 1191 994 1439 701
Q 1688 409 2113 409
Q 2538 409 2786 701
Q 3034 994 3034 1497
Q 3034 2003 2786 2293
Q 2538 2584 2113 2584
z
M 3366 4563
L 3366 3988
Q 3128 4100 2886 4159
Q 2644 4219 2406 4219
Q 1781 4219 1451 3797
Q 1122 3375 1075 2522
Q 1259 2794 1537 2939
Q 1816 3084 2150 3084
Q 2853 3084 3261 2657
Q 3669 2231 3669 1497
Q 3669 778 3244 343
Q 2819 -91 2113 -91
Q 1303 -91 875 529
Q 447 1150 447 2328
Q 447 3434 972 4092
Q 1497 4750 2381 4750
Q 2619 4750 2861 4703
Q 3103 4656 3366 4563
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-36" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_7">
<g id="line2d_7">
<g>
<use xlink:href="#m82b750d18c" x="338.44026" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
<!-- 0.7 -->
<g transform="translate(330.488698 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_8">
<g id="line2d_8">
<g>
<use xlink:href="#m82b750d18c" x="387.03193" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
<!-- 0.8 -->
<g transform="translate(379.080367 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-38" d="M 2034 2216
Q 1584 2216 1326 1975
Q 1069 1734 1069 1313
Q 1069 891 1326 650
Q 1584 409 2034 409
Q 2484 409 2743 651
Q 3003 894 3003 1313
Q 3003 1734 2745 1975
Q 2488 2216 2034 2216
z
M 1403 2484
Q 997 2584 770 2862
Q 544 3141 544 3541
Q 544 4100 942 4425
Q 1341 4750 2034 4750
Q 2731 4750 3128 4425
Q 3525 4100 3525 3541
Q 3525 3141 3298 2862
Q 3072 2584 2669 2484
Q 3125 2378 3379 2068
Q 3634 1759 3634 1313
Q 3634 634 3220 271
Q 2806 -91 2034 -91
Q 1263 -91 848 271
Q 434 634 434 1313
Q 434 1759 690 2068
Q 947 2378 1403 2484
z
M 1172 3481
Q 1172 3119 1398 2916
Q 1625 2713 2034 2713
Q 2441 2713 2670 2916
Q 2900 3119 2900 3481
Q 2900 3844 2670 4047
Q 2441 4250 2034 4250
Q 1625 4250 1398 4047
Q 1172 3844 1172 3481
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-38" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_9">
<g id="line2d_9">
<g>
<use xlink:href="#m82b750d18c" x="435.623599" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_9">
<!-- 0.9 -->
<g transform="translate(427.672037 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-39" d="M 703 97
L 703 672
Q 941 559 1184 500
Q 1428 441 1663 441
Q 2288 441 2617 861
Q 2947 1281 2994 2138
Q 2813 1869 2534 1725
Q 2256 1581 1919 1581
Q 1219 1581 811 2004
Q 403 2428 403 3163
Q 403 3881 828 4315
Q 1253 4750 1959 4750
Q 2769 4750 3195 4129
Q 3622 3509 3622 2328
Q 3622 1225 3098 567
Q 2575 -91 1691 -91
Q 1453 -91 1209 -44
Q 966 3 703 97
z
M 1959 2075
Q 2384 2075 2632 2365
Q 2881 2656 2881 3163
Q 2881 3666 2632 3958
Q 2384 4250 1959 4250
Q 1534 4250 1286 3958
Q 1038 3666 1038 3163
Q 1038 2656 1286 2365
Q 1534 2075 1959 2075
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-39" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_10">
<defs>
<path id="me91bacd9d9" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#me91bacd9d9" x="33.73" y="305.0377" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
<!-- 0.0 -->
<g transform="translate(10.826875 308.836919) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_2">
<g id="line2d_11">
<g>
<use xlink:href="#me91bacd9d9" x="33.73" y="249.300898" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
<!-- 0.2 -->
<g transform="translate(10.826875 253.100117) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_3">
<g id="line2d_12">
<g>
<use xlink:href="#me91bacd9d9" x="33.73" y="193.564096" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
<!-- 0.4 -->
<g transform="translate(10.826875 197.363315) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-34" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_4">
<g id="line2d_13">
<g>
<use xlink:href="#me91bacd9d9" x="33.73" y="137.827294" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
<!-- 0.6 -->
<g transform="translate(10.826875 141.626513) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-36" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_5">
<g id="line2d_14">
<g>
<use xlink:href="#me91bacd9d9" x="33.73" y="82.090492" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
<!-- 0.8 -->
<g transform="translate(10.826875 85.889711) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-38" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_6">
<g id="line2d_15">
<g>
<use xlink:href="#me91bacd9d9" x="33.73" y="26.35369" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
<!-- 1.0 -->
<g transform="translate(10.826875 30.152909) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="line2d_16">
<path d="M 52.289318 303.949091
L 59.038161 302.860481
L 63.087467 301.771872
L 67.715245 300.683263
L 71.186079 299.594653
L 75.022263 297.417434
L 79.28469 296.328825
L 82.805826 295.240216
L 84.048579 294.151606
L 85.069413 293.062997
L 88.283147 290.885778
L 89.407955 289.797169
L 90.854135 288.708559
L 95.481913 287.61995
L 99.531219 286.53134
L 100.596826 285.442731
L 101.371813 284.354121
L 103.361643 282.176903
L 104.592851 279.999684
L 108.021699 277.822465
L 109.365247 275.645246
L 110.433196 274.556637
L 111.679136 273.468027
L 112.631914 272.379418
L 113.993025 271.290808
L 125.059451 269.11359
L 126.171389 268.02498
L 126.923582 266.936371
L 127.87636 265.847761
L 128.666468 264.759152
L 129.627411 262.581933
L 131.925665 260.404714
L 133.275434 257.138886
L 133.903233 256.050277
L 134.355249 254.961667
L 134.962645 253.873058
L 139.371163 251.695839
L 140.024277 250.60723
L 140.518095 249.51862
L 141.86487 247.341401
L 142.760294 245.164183
L 145.546057 242.986964
L 146.77312 240.809745
L 147.811403 239.721135
L 149.100307 238.632526
L 150.147541 237.543917
L 151.745952 236.455307
L 168.369417 234.278088
L 169.798584 233.189479
L 170.720627 232.10087
L 171.840251 231.01226
L 172.730208 229.923651
L 173.768492 227.746432
L 176.072975 225.569213
L 177.320514 222.303385
L 177.876483 221.214775
L 178.26772 220.126166
L 178.781918 219.037557
L 182.158945 216.860338
L 183.409696 213.59451
L 183.830403 212.5059
L 184.39433 210.328681
L 186.039115 208.151462
L 186.715252 205.974244
L 188.43989 202.708415
L 189.194419 201.619806
L 196.264635 199.442587
L 197.082677 198.353978
L 197.649013 197.265368
L 199.003296 195.088149
L 199.776228 192.910931
L 201.705563 190.733712
L 202.895077 187.467884
L 203.463401 186.379274
L 203.878714 185.290665
L 204.445051 184.202055
L 208.862475 182.024837
L 209.566702 180.936227
L 210.108415 179.847618
L 211.627855 177.670399
L 212.673587 175.49318
L 214.26155 174.404571
L 216.123299 173.315961
L 217.744823 171.138742
L 219.169799 170.050133
L 221.010393 168.961524
L 222.567818 167.872914
L 225.059698 166.784305
L 257.454145 164.607086
L 259.946025 163.518476
L 261.50345 162.429867
L 263.344044 161.341258
L 264.76902 160.252648
L 266.390544 158.075429
L 268.252293 156.98682
L 269.840256 155.898211
L 271.626715 152.632382
L 272.405428 151.543773
L 272.947141 150.455163
L 273.651368 149.366554
L 278.068792 147.189335
L 278.635129 146.100726
L 279.050442 145.012116
L 280.130257 142.834898
L 280.80828 140.657679
L 282.737615 138.48046
L 283.510547 136.303241
L 285.431166 133.037413
L 286.249208 131.948803
L 293.319424 129.771585
L 294.073953 128.682975
L 294.589242 127.594366
L 295.798591 125.417147
L 296.474728 123.239928
L 298.119513 121.062709
L 299.104147 117.796881
L 299.566925 116.708272
L 299.90204 115.619662
L 300.354898 114.531053
L 303.731925 112.353834
L 304.246123 111.265225
L 304.63736 110.176615
L 305.715258 107.999396
L 306.440868 105.822178
L 308.745351 103.644959
L 309.783635 101.46774
L 310.673592 100.37913
L 311.793216 99.290521
L 312.715259 98.201912
L 314.144426 97.113302
L 330.767891 94.936083
L 332.366302 93.847474
L 333.413536 92.758865
L 334.70244 91.670255
L 335.740723 90.581646
L 336.967785 88.404427
L 339.753549 86.227208
L 341.298594 82.96138
L 341.995748 81.87277
L 342.489566 80.784161
L 343.14268 79.695552
L 347.551198 77.518333
L 348.158594 76.429723
L 348.61061 75.341114
L 349.812779 73.163895
L 350.588178 70.986676
L 352.886432 68.809457
L 353.847375 66.632239
L 354.637483 65.543629
L 355.590261 64.45502
L 356.342454 63.36641
L 357.454392 62.277801
L 368.520818 60.100582
L 369.881929 59.011973
L 370.834707 57.923363
L 372.080647 56.834754
L 373.148596 55.746144
L 374.492144 53.568926
L 377.920992 51.391707
L 379.1522 49.214488
L 382.982624 44.86005
L 387.03193 43.771441
L 391.659708 42.682831
L 393.105888 41.594222
L 394.230696 40.505613
L 397.44443 38.328394
L 398.465264 37.239784
L 403.229153 35.062566
L 409.458854 32.885347
L 414.798598 30.708128
L 423.475682 28.530909
L 423.475682 28.530909
" clip-path="url(#p34cae5d2d5)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="patch_3">
<path d="M 33.73 317.72
L 33.73 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_4">
<path d="M 442.035 317.72
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_5">
<path d="M 33.73 317.72
L 442.035 317.72
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_6">
<path d="M 33.73 14.76
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
</g>
</g>
<defs>
<clipPath id="p34cae5d2d5">
<rect x="33.73" y="14.76" width="408.305" height="302.96"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -0,0 +1,618 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-07-30T17:57:32.094511</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 33.73 317.72
L 442.035 317.72
L 442.035 14.76
L 33.73 14.76
z
" style="fill: #ffffff"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<defs>
<path id="m89e3a504e2" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m89e3a504e2" x="52.289318" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
<!-- 0.0 -->
<g transform="translate(44.337756 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-2e" d="M 684 794
L 1344 794
L 1344 0
L 684 0
L 684 794
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_2">
<g id="line2d_2">
<g>
<use xlink:href="#m89e3a504e2" x="101.129629" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
<!-- 2.5 -->
<g transform="translate(93.178067 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-32" d="M 1228 531
L 3431 531
L 3431 0
L 469 0
L 469 531
Q 828 903 1448 1529
Q 2069 2156 2228 2338
Q 2531 2678 2651 2914
Q 2772 3150 2772 3378
Q 2772 3750 2511 3984
Q 2250 4219 1831 4219
Q 1534 4219 1204 4116
Q 875 4013 500 3803
L 500 4441
Q 881 4594 1212 4672
Q 1544 4750 1819 4750
Q 2544 4750 2975 4387
Q 3406 4025 3406 3419
Q 3406 3131 3298 2873
Q 3191 2616 2906 2266
Q 2828 2175 2409 1742
Q 1991 1309 1228 531
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-35" d="M 691 4666
L 3169 4666
L 3169 4134
L 1269 4134
L 1269 2991
Q 1406 3038 1543 3061
Q 1681 3084 1819 3084
Q 2600 3084 3056 2656
Q 3513 2228 3513 1497
Q 3513 744 3044 326
Q 2575 -91 1722 -91
Q 1428 -91 1123 -41
Q 819 9 494 109
L 494 744
Q 775 591 1075 516
Q 1375 441 1709 441
Q 2250 441 2565 725
Q 2881 1009 2881 1497
Q 2881 1984 2565 2268
Q 2250 2553 1709 2553
Q 1456 2553 1204 2497
Q 953 2441 691 2322
L 691 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-32"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_3">
<g id="line2d_3">
<g>
<use xlink:href="#m89e3a504e2" x="149.96994" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
<!-- 5.0 -->
<g transform="translate(142.018378 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-35"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_4">
<g id="line2d_4">
<g>
<use xlink:href="#m89e3a504e2" x="198.810251" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
<!-- 7.5 -->
<g transform="translate(190.858689 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-37"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_5">
<g id="line2d_5">
<g>
<use xlink:href="#m89e3a504e2" x="247.650562" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
<!-- 10.0 -->
<g transform="translate(236.51775 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="xtick_6">
<g id="line2d_6">
<g>
<use xlink:href="#m89e3a504e2" x="296.490873" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
<!-- 12.5 -->
<g transform="translate(285.358061 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-32" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="xtick_7">
<g id="line2d_7">
<g>
<use xlink:href="#m89e3a504e2" x="345.331184" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
<!-- 15.0 -->
<g transform="translate(334.198372 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="xtick_8">
<g id="line2d_8">
<g>
<use xlink:href="#m89e3a504e2" x="394.171495" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
<!-- 17.5 -->
<g transform="translate(383.038683 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-37" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_9">
<defs>
<path id="ma9be8e3392" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="285.587879" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_9">
<!-- 0.3 -->
<g transform="translate(10.826875 289.387098) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-33" d="M 2597 2516
Q 3050 2419 3304 2112
Q 3559 1806 3559 1356
Q 3559 666 3084 287
Q 2609 -91 1734 -91
Q 1441 -91 1130 -33
Q 819 25 488 141
L 488 750
Q 750 597 1062 519
Q 1375 441 1716 441
Q 2309 441 2620 675
Q 2931 909 2931 1356
Q 2931 1769 2642 2001
Q 2353 2234 1838 2234
L 1294 2234
L 1294 2753
L 1863 2753
Q 2328 2753 2575 2939
Q 2822 3125 2822 3475
Q 2822 3834 2567 4026
Q 2313 4219 1838 4219
Q 1578 4219 1281 4162
Q 984 4106 628 3988
L 628 4550
Q 988 4650 1302 4700
Q 1616 4750 1894 4750
Q 2613 4750 3031 4423
Q 3450 4097 3450 3541
Q 3450 3153 3228 2886
Q 3006 2619 2597 2516
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-33" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_2">
<g id="line2d_10">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="248.865455" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
<!-- 0.4 -->
<g transform="translate(10.826875 252.664673) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-34" d="M 2419 4116
L 825 1625
L 2419 1625
L 2419 4116
z
M 2253 4666
L 3047 4666
L 3047 1625
L 3713 1625
L 3713 1100
L 3047 1100
L 3047 0
L 2419 0
L 2419 1100
L 313 1100
L 313 1709
L 2253 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-34" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_3">
<g id="line2d_11">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="212.14303" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
<!-- 0.5 -->
<g transform="translate(10.826875 215.942249) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_4">
<g id="line2d_12">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="175.420606" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
<!-- 0.6 -->
<g transform="translate(10.826875 179.219825) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-36" d="M 2113 2584
Q 1688 2584 1439 2293
Q 1191 2003 1191 1497
Q 1191 994 1439 701
Q 1688 409 2113 409
Q 2538 409 2786 701
Q 3034 994 3034 1497
Q 3034 2003 2786 2293
Q 2538 2584 2113 2584
z
M 3366 4563
L 3366 3988
Q 3128 4100 2886 4159
Q 2644 4219 2406 4219
Q 1781 4219 1451 3797
Q 1122 3375 1075 2522
Q 1259 2794 1537 2939
Q 1816 3084 2150 3084
Q 2853 3084 3261 2657
Q 3669 2231 3669 1497
Q 3669 778 3244 343
Q 2819 -91 2113 -91
Q 1303 -91 875 529
Q 447 1150 447 2328
Q 447 3434 972 4092
Q 1497 4750 2381 4750
Q 2619 4750 2861 4703
Q 3103 4656 3366 4563
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-36" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_5">
<g id="line2d_13">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="138.698182" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
<!-- 0.7 -->
<g transform="translate(10.826875 142.497401) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_6">
<g id="line2d_14">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="101.975758" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
<!-- 0.8 -->
<g transform="translate(10.826875 105.774976) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-38" d="M 2034 2216
Q 1584 2216 1326 1975
Q 1069 1734 1069 1313
Q 1069 891 1326 650
Q 1584 409 2034 409
Q 2484 409 2743 651
Q 3003 894 3003 1313
Q 3003 1734 2745 1975
Q 2488 2216 2034 2216
z
M 1403 2484
Q 997 2584 770 2862
Q 544 3141 544 3541
Q 544 4100 942 4425
Q 1341 4750 2034 4750
Q 2731 4750 3128 4425
Q 3525 4100 3525 3541
Q 3525 3141 3298 2862
Q 3072 2584 2669 2484
Q 3125 2378 3379 2068
Q 3634 1759 3634 1313
Q 3634 634 3220 271
Q 2806 -91 2034 -91
Q 1263 -91 848 271
Q 434 634 434 1313
Q 434 1759 690 2068
Q 947 2378 1403 2484
z
M 1172 3481
Q 1172 3119 1398 2916
Q 1625 2713 2034 2713
Q 2441 2713 2670 2916
Q 2900 3119 2900 3481
Q 2900 3844 2670 4047
Q 2441 4250 2034 4250
Q 1625 4250 1398 4047
Q 1172 3844 1172 3481
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-38" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_7">
<g id="line2d_15">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="65.253333" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
<!-- 0.9 -->
<g transform="translate(10.826875 69.052552) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-39" d="M 703 97
L 703 672
Q 941 559 1184 500
Q 1428 441 1663 441
Q 2288 441 2617 861
Q 2947 1281 2994 2138
Q 2813 1869 2534 1725
Q 2256 1581 1919 1581
Q 1219 1581 811 2004
Q 403 2428 403 3163
Q 403 3881 828 4315
Q 1253 4750 1959 4750
Q 2769 4750 3195 4129
Q 3622 3509 3622 2328
Q 3622 1225 3098 567
Q 2575 -91 1691 -91
Q 1453 -91 1209 -44
Q 966 3 703 97
z
M 1959 2075
Q 2384 2075 2632 2365
Q 2881 2656 2881 3163
Q 2881 3666 2632 3958
Q 2384 4250 1959 4250
Q 1534 4250 1286 3958
Q 1038 3666 1038 3163
Q 1038 2656 1286 2365
Q 1534 2075 1959 2075
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-39" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_8">
<g id="line2d_16">
<g>
<use xlink:href="#ma9be8e3392" x="33.73" y="28.530909" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_16">
<!-- 1.0 -->
<g transform="translate(10.826875 32.330128) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="line2d_17">
<path d="M 52.289318 28.530909
L 71.825443 212.14303
L 91.361567 303.949091
L 110.897691 258.046061
L 130.433816 280.997576
L 149.96994 269.521818
L 169.506065 275.259697
L 189.042189 272.390758
L 208.578313 273.825227
L 228.114438 273.107992
L 247.650562 273.46661
L 267.186687 273.287301
L 286.722811 273.376955
L 306.258935 273.332128
L 325.79506 273.354542
L 345.331184 273.343335
L 364.867309 273.348939
L 384.403433 273.346137
L 403.939557 273.347538
L 423.475682 273.346837
" clip-path="url(#pe6fd9f8a67)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="patch_3">
<path d="M 33.73 317.72
L 33.73 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_4">
<path d="M 442.035 317.72
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_5">
<path d="M 33.73 317.72
L 442.035 317.72
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_6">
<path d="M 33.73 14.76
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
</g>
</g>
<defs>
<clipPath id="pe6fd9f8a67">
<rect x="33.73" y="14.76" width="408.305" height="302.96"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -0,0 +1,618 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-07-30T17:57:33.434057</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 33.73 317.72
L 442.035 317.72
L 442.035 14.76
L 33.73 14.76
z
" style="fill: #ffffff"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<defs>
<path id="m833a6f6579" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m833a6f6579" x="52.289318" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
<!-- 0.0 -->
<g transform="translate(44.337756 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-2e" d="M 684 794
L 1344 794
L 1344 0
L 684 0
L 684 794
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_2">
<g id="line2d_2">
<g>
<use xlink:href="#m833a6f6579" x="101.129629" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
<!-- 2.5 -->
<g transform="translate(93.178067 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-32" d="M 1228 531
L 3431 531
L 3431 0
L 469 0
L 469 531
Q 828 903 1448 1529
Q 2069 2156 2228 2338
Q 2531 2678 2651 2914
Q 2772 3150 2772 3378
Q 2772 3750 2511 3984
Q 2250 4219 1831 4219
Q 1534 4219 1204 4116
Q 875 4013 500 3803
L 500 4441
Q 881 4594 1212 4672
Q 1544 4750 1819 4750
Q 2544 4750 2975 4387
Q 3406 4025 3406 3419
Q 3406 3131 3298 2873
Q 3191 2616 2906 2266
Q 2828 2175 2409 1742
Q 1991 1309 1228 531
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-35" d="M 691 4666
L 3169 4666
L 3169 4134
L 1269 4134
L 1269 2991
Q 1406 3038 1543 3061
Q 1681 3084 1819 3084
Q 2600 3084 3056 2656
Q 3513 2228 3513 1497
Q 3513 744 3044 326
Q 2575 -91 1722 -91
Q 1428 -91 1123 -41
Q 819 9 494 109
L 494 744
Q 775 591 1075 516
Q 1375 441 1709 441
Q 2250 441 2565 725
Q 2881 1009 2881 1497
Q 2881 1984 2565 2268
Q 2250 2553 1709 2553
Q 1456 2553 1204 2497
Q 953 2441 691 2322
L 691 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-32"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_3">
<g id="line2d_3">
<g>
<use xlink:href="#m833a6f6579" x="149.96994" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
<!-- 5.0 -->
<g transform="translate(142.018378 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-35"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_4">
<g id="line2d_4">
<g>
<use xlink:href="#m833a6f6579" x="198.810251" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
<!-- 7.5 -->
<g transform="translate(190.858689 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-37"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_5">
<g id="line2d_5">
<g>
<use xlink:href="#m833a6f6579" x="247.650562" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
<!-- 10.0 -->
<g transform="translate(236.51775 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-30" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="xtick_6">
<g id="line2d_6">
<g>
<use xlink:href="#m833a6f6579" x="296.490873" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
<!-- 12.5 -->
<g transform="translate(285.358061 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-32" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="xtick_7">
<g id="line2d_7">
<g>
<use xlink:href="#m833a6f6579" x="345.331184" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
<!-- 15.0 -->
<g transform="translate(334.198372 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-35" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="xtick_8">
<g id="line2d_8">
<g>
<use xlink:href="#m833a6f6579" x="394.171495" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
<!-- 17.5 -->
<g transform="translate(383.038683 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-37" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(127.246094 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_9">
<defs>
<path id="ma722f2b5b1" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_9">
<!-- 0.3 -->
<g transform="translate(10.826875 321.519219) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-33" d="M 2597 2516
Q 3050 2419 3304 2112
Q 3559 1806 3559 1356
Q 3559 666 3084 287
Q 2609 -91 1734 -91
Q 1441 -91 1130 -33
Q 819 25 488 141
L 488 750
Q 750 597 1062 519
Q 1375 441 1716 441
Q 2309 441 2620 675
Q 2931 909 2931 1356
Q 2931 1769 2642 2001
Q 2353 2234 1838 2234
L 1294 2234
L 1294 2753
L 1863 2753
Q 2328 2753 2575 2939
Q 2822 3125 2822 3475
Q 2822 3834 2567 4026
Q 2313 4219 1838 4219
Q 1578 4219 1281 4162
Q 984 4106 628 3988
L 628 4550
Q 988 4650 1302 4700
Q 1616 4750 1894 4750
Q 2613 4750 3031 4423
Q 3450 4097 3450 3541
Q 3450 3153 3228 2886
Q 3006 2619 2597 2516
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-33" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_2">
<g id="line2d_10">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="276.407273" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
<!-- 0.4 -->
<g transform="translate(10.826875 280.206491) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-34" d="M 2419 4116
L 825 1625
L 2419 1625
L 2419 4116
z
M 2253 4666
L 3047 4666
L 3047 1625
L 3713 1625
L 3713 1100
L 3047 1100
L 3047 0
L 2419 0
L 2419 1100
L 313 1100
L 313 1709
L 2253 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-34" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_3">
<g id="line2d_11">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="235.094545" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
<!-- 0.5 -->
<g transform="translate(10.826875 238.893764) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_4">
<g id="line2d_12">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="193.781818" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
<!-- 0.6 -->
<g transform="translate(10.826875 197.581037) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-36" d="M 2113 2584
Q 1688 2584 1439 2293
Q 1191 2003 1191 1497
Q 1191 994 1439 701
Q 1688 409 2113 409
Q 2538 409 2786 701
Q 3034 994 3034 1497
Q 3034 2003 2786 2293
Q 2538 2584 2113 2584
z
M 3366 4563
L 3366 3988
Q 3128 4100 2886 4159
Q 2644 4219 2406 4219
Q 1781 4219 1451 3797
Q 1122 3375 1075 2522
Q 1259 2794 1537 2939
Q 1816 3084 2150 3084
Q 2853 3084 3261 2657
Q 3669 2231 3669 1497
Q 3669 778 3244 343
Q 2819 -91 2113 -91
Q 1303 -91 875 529
Q 447 1150 447 2328
Q 447 3434 972 4092
Q 1497 4750 2381 4750
Q 2619 4750 2861 4703
Q 3103 4656 3366 4563
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-36" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_5">
<g id="line2d_13">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="152.469091" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
<!-- 0.7 -->
<g transform="translate(10.826875 156.26831) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_6">
<g id="line2d_14">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="111.156364" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
<!-- 0.8 -->
<g transform="translate(10.826875 114.955582) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-38" d="M 2034 2216
Q 1584 2216 1326 1975
Q 1069 1734 1069 1313
Q 1069 891 1326 650
Q 1584 409 2034 409
Q 2484 409 2743 651
Q 3003 894 3003 1313
Q 3003 1734 2745 1975
Q 2488 2216 2034 2216
z
M 1403 2484
Q 997 2584 770 2862
Q 544 3141 544 3541
Q 544 4100 942 4425
Q 1341 4750 2034 4750
Q 2731 4750 3128 4425
Q 3525 4100 3525 3541
Q 3525 3141 3298 2862
Q 3072 2584 2669 2484
Q 3125 2378 3379 2068
Q 3634 1759 3634 1313
Q 3634 634 3220 271
Q 2806 -91 2034 -91
Q 1263 -91 848 271
Q 434 634 434 1313
Q 434 1759 690 2068
Q 947 2378 1403 2484
z
M 1172 3481
Q 1172 3119 1398 2916
Q 1625 2713 2034 2713
Q 2441 2713 2670 2916
Q 2900 3119 2900 3481
Q 2900 3844 2670 4047
Q 2441 4250 2034 4250
Q 1625 4250 1398 4047
Q 1172 3844 1172 3481
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-38" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_7">
<g id="line2d_15">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="69.843636" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
<!-- 0.9 -->
<g transform="translate(10.826875 73.642855) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-39" d="M 703 97
L 703 672
Q 941 559 1184 500
Q 1428 441 1663 441
Q 2288 441 2617 861
Q 2947 1281 2994 2138
Q 2813 1869 2534 1725
Q 2256 1581 1919 1581
Q 1219 1581 811 2004
Q 403 2428 403 3163
Q 403 3881 828 4315
Q 1253 4750 1959 4750
Q 2769 4750 3195 4129
Q 3622 3509 3622 2328
Q 3622 1225 3098 567
Q 2575 -91 1691 -91
Q 1453 -91 1209 -44
Q 966 3 703 97
z
M 1959 2075
Q 2384 2075 2632 2365
Q 2881 2656 2881 3163
Q 2881 3666 2632 3958
Q 2384 4250 1959 4250
Q 1534 4250 1286 3958
Q 1038 3666 1038 3163
Q 1038 2656 1286 2365
Q 1534 2075 1959 2075
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-39" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="ytick_8">
<g id="line2d_16">
<g>
<use xlink:href="#ma722f2b5b1" x="33.73" y="28.530909" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_16">
<!-- 1.0 -->
<g transform="translate(10.826875 32.330128) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="line2d_17">
<path d="M 52.289318 28.530909
L 71.825443 235.094545
L 91.361567 303.949091
L 110.897691 276.407273
L 130.433816 286.735455
L 149.96994 282.763077
L 169.506065 284.276364
L 189.042189 283.697754
L 208.578313 283.918678
L 228.114438 283.83428
L 247.650562 283.866515
L 267.186687 283.854202
L 286.722811 283.858905
L 306.258935 283.857109
L 325.79506 283.857795
L 345.331184 283.857533
L 364.867309 283.857633
L 384.403433 283.857595
L 403.939557 283.857609
L 423.475682 283.857604
" clip-path="url(#p415d5a15a1)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="patch_3">
<path d="M 33.73 317.72
L 33.73 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_4">
<path d="M 442.035 317.72
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_5">
<path d="M 33.73 317.72
L 442.035 317.72
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_6">
<path d="M 33.73 14.76
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
</g>
</g>
<defs>
<clipPath id="p415d5a15a1">
<rect x="33.73" y="14.76" width="408.305" height="302.96"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -0,0 +1,668 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-07-30T17:57:34.918996</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 33.73 317.72
L 442.035 317.72
L 442.035 14.76
L 33.73 14.76
z
" style="fill: #ffffff"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<defs>
<path id="m6d98df33d4" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m6d98df33d4" x="45.540475" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
<!-- 0 -->
<g transform="translate(42.359225 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
</g>
</g>
</g>
<g id="xtick_2">
<g id="line2d_2">
<g>
<use xlink:href="#m6d98df33d4" x="99.531219" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
<!-- 1 -->
<g transform="translate(96.349969 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-31"/>
</g>
</g>
</g>
<g id="xtick_3">
<g id="line2d_3">
<g>
<use xlink:href="#m6d98df33d4" x="153.521963" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
<!-- 2 -->
<g transform="translate(150.340713 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-32" d="M 1228 531
L 3431 531
L 3431 0
L 469 0
L 469 531
Q 828 903 1448 1529
Q 2069 2156 2228 2338
Q 2531 2678 2651 2914
Q 2772 3150 2772 3378
Q 2772 3750 2511 3984
Q 2250 4219 1831 4219
Q 1534 4219 1204 4116
Q 875 4013 500 3803
L 500 4441
Q 881 4594 1212 4672
Q 1544 4750 1819 4750
Q 2544 4750 2975 4387
Q 3406 4025 3406 3419
Q 3406 3131 3298 2873
Q 3191 2616 2906 2266
Q 2828 2175 2409 1742
Q 1991 1309 1228 531
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-32"/>
</g>
</g>
</g>
<g id="xtick_4">
<g id="line2d_4">
<g>
<use xlink:href="#m6d98df33d4" x="207.512707" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
<!-- 3 -->
<g transform="translate(204.331457 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-33" d="M 2597 2516
Q 3050 2419 3304 2112
Q 3559 1806 3559 1356
Q 3559 666 3084 287
Q 2609 -91 1734 -91
Q 1441 -91 1130 -33
Q 819 25 488 141
L 488 750
Q 750 597 1062 519
Q 1375 441 1716 441
Q 2309 441 2620 675
Q 2931 909 2931 1356
Q 2931 1769 2642 2001
Q 2353 2234 1838 2234
L 1294 2234
L 1294 2753
L 1863 2753
Q 2328 2753 2575 2939
Q 2822 3125 2822 3475
Q 2822 3834 2567 4026
Q 2313 4219 1838 4219
Q 1578 4219 1281 4162
Q 984 4106 628 3988
L 628 4550
Q 988 4650 1302 4700
Q 1616 4750 1894 4750
Q 2613 4750 3031 4423
Q 3450 4097 3450 3541
Q 3450 3153 3228 2886
Q 3006 2619 2597 2516
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-33"/>
</g>
</g>
</g>
<g id="xtick_5">
<g id="line2d_5">
<g>
<use xlink:href="#m6d98df33d4" x="261.50345" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
<!-- 4 -->
<g transform="translate(258.3222 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-34" d="M 2419 4116
L 825 1625
L 2419 1625
L 2419 4116
z
M 2253 4666
L 3047 4666
L 3047 1625
L 3713 1625
L 3713 1100
L 3047 1100
L 3047 0
L 2419 0
L 2419 1100
L 313 1100
L 313 1709
L 2253 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-34"/>
</g>
</g>
</g>
<g id="xtick_6">
<g id="line2d_6">
<g>
<use xlink:href="#m6d98df33d4" x="315.494194" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
<!-- 5 -->
<g transform="translate(312.312944 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-35" d="M 691 4666
L 3169 4666
L 3169 4134
L 1269 4134
L 1269 2991
Q 1406 3038 1543 3061
Q 1681 3084 1819 3084
Q 2600 3084 3056 2656
Q 3513 2228 3513 1497
Q 3513 744 3044 326
Q 2575 -91 1722 -91
Q 1428 -91 1123 -41
Q 819 9 494 109
L 494 744
Q 775 591 1075 516
Q 1375 441 1709 441
Q 2250 441 2565 725
Q 2881 1009 2881 1497
Q 2881 1984 2565 2268
Q 2250 2553 1709 2553
Q 1456 2553 1204 2497
Q 953 2441 691 2322
L 691 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-35"/>
</g>
</g>
</g>
<g id="xtick_7">
<g id="line2d_7">
<g>
<use xlink:href="#m6d98df33d4" x="369.484938" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
<!-- 6 -->
<g transform="translate(366.303688 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-36" d="M 2113 2584
Q 1688 2584 1439 2293
Q 1191 2003 1191 1497
Q 1191 994 1439 701
Q 1688 409 2113 409
Q 2538 409 2786 701
Q 3034 994 3034 1497
Q 3034 2003 2786 2293
Q 2538 2584 2113 2584
z
M 3366 4563
L 3366 3988
Q 3128 4100 2886 4159
Q 2644 4219 2406 4219
Q 1781 4219 1451 3797
Q 1122 3375 1075 2522
Q 1259 2794 1537 2939
Q 1816 3084 2150 3084
Q 2853 3084 3261 2657
Q 3669 2231 3669 1497
Q 3669 778 3244 343
Q 2819 -91 2113 -91
Q 1303 -91 875 529
Q 447 1150 447 2328
Q 447 3434 972 4092
Q 1497 4750 2381 4750
Q 2619 4750 2861 4703
Q 3103 4656 3366 4563
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-36"/>
</g>
</g>
</g>
<g id="xtick_8">
<g id="line2d_8">
<g>
<use xlink:href="#m6d98df33d4" x="423.475682" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
<!-- 7 -->
<g transform="translate(420.294432 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-37"/>
</g>
</g>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_9">
<defs>
<path id="mba0142a176" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#mba0142a176" x="33.73" y="305.0377" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_9">
<!-- 0.00 -->
<g transform="translate(4.464375 308.836919) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-2e" d="M 684 794
L 1344 794
L 1344 0
L 684 0
L 684 794
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_2">
<g id="line2d_10">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="270.202199" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
<!-- 0.25 -->
<g transform="translate(4.464375 274.001418) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_3">
<g id="line2d_11">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="235.366698" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
<!-- 0.50 -->
<g transform="translate(4.464375 239.165917) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_4">
<g id="line2d_12">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="200.531197" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
<!-- 0.75 -->
<g transform="translate(4.464375 204.330415) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_5">
<g id="line2d_13">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="165.695695" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
<!-- 1.00 -->
<g transform="translate(4.464375 169.494914) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_6">
<g id="line2d_14">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="130.860194" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
<!-- 1.25 -->
<g transform="translate(4.464375 134.659413) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_7">
<g id="line2d_15">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="96.024693" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
<!-- 1.50 -->
<g transform="translate(4.464375 99.823912) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_8">
<g id="line2d_16">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="61.189192" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_16">
<!-- 1.75 -->
<g transform="translate(4.464375 64.98841) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_9">
<g id="line2d_17">
<g>
<use xlink:href="#mba0142a176" x="33.73" y="26.35369" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_17">
<!-- 2.00 -->
<g transform="translate(4.464375 30.152909) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-32"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
</g>
<g id="line2d_18">
<path d="M 52.289318 303.949091
L 53.253439 302.860481
L 55.068254 299.594653
L 55.66374 297.417434
L 56.906948 295.240216
L 57.999878 289.797169
L 58.24418 288.708559
L 59.748566 286.53134
L 60.434473 282.176903
L 60.657883 279.999684
L 61.287775 277.822465
L 61.737698 274.556637
L 62.412583 271.290808
L 64.596032 269.11359
L 65.173473 265.847761
L 65.431802 263.670543
L 65.537047 262.581933
L 66.019723 260.404714
L 66.536876 254.961667
L 66.667288 253.873058
L 67.627598 251.695839
L 68.679365 244.075573
L 69.014712 242.986964
L 69.536361 239.721135
L 70.45928 236.455307
L 74.612414 234.278088
L 74.989972 233.189479
L 75.910269 228.835041
L 76.056983 227.746432
L 76.688981 225.569213
L 77.444097 219.037557
L 78.404406 216.860338
L 78.963317 211.417291
L 79.051971 210.328681
L 79.639892 207.062853
L 79.898221 204.885634
L 80.475662 201.619806
L 82.659112 199.442587
L 83.333996 196.176759
L 83.651588 193.99954
L 83.783919 192.910931
L 84.413811 190.733712
L 84.99525 186.379274
L 85.323129 184.202055
L 86.827515 182.024837
L 87.961774 176.581789
L 88.164747 175.49318
L 89.407955 173.315961
L 90.003441 171.138742
L 90.532762 170.050133
L 91.818256 167.872914
L 92.782376 166.784305
L 99.531219 165.695695
L 107.244182 164.607086
L 108.529676 163.518476
L 109.347718 162.429867
L 110.329368 161.341258
L 111.100664 160.252648
L 111.990621 158.075429
L 113.928751 155.898211
L 114.957146 152.632382
L 115.41085 151.543773
L 116.143756 149.366554
L 118.813628 147.189335
L 119.777748 143.923507
L 120.099121 142.834898
L 120.527619 140.657679
L 121.762702 138.48046
L 122.670109 135.214632
L 124.072466 131.948803
L 128.980716 129.771585
L 129.526077 128.682975
L 130.383073 126.505756
L 130.789018 125.417147
L 131.29048 123.239928
L 132.525562 121.062709
L 133.275434 117.796881
L 134.239554 114.531053
L 136.909426 112.353834
L 138.524534 107.999396
L 139.124431 105.822178
L 141.06256 103.644959
L 141.952518 101.46774
L 142.723814 100.37913
L 143.705464 99.290521
L 144.523506 98.201912
L 145.808999 97.113302
L 153.521963 96.024693
L 162.52042 94.936083
L 164.320112 93.847474
L 165.519906 92.758865
L 167.019649 91.670255
L 168.246711 90.581646
L 169.719186 88.404427
L 173.154961 86.227208
L 175.11826 82.96138
L 176.018106 81.87277
L 176.660853 80.784161
L 177.517849 79.695552
L 183.51682 77.518333
L 184.373816 76.429723
L 185.016563 75.341114
L 186.747036 73.163895
L 187.879709 70.986676
L 191.315483 68.809457
L 192.787958 66.632239
L 194.015021 65.543629
L 195.514764 64.45502
L 196.714558 63.36641
L 198.514249 62.277801
L 207.512707 61.189192
L 218.310855 60.100582
L 221.010393 59.011973
L 222.938633 57.923363
L 225.509621 56.834754
L 227.759236 55.746144
L 229.109004 54.657535
L 230.651597 53.568926
L 238.36456 51.391707
L 239.907153 50.303097
L 241.256921 49.214488
L 243.506536 48.125879
L 246.077524 47.037269
L 248.005764 45.94866
L 250.705302 44.86005
L 261.50345 43.771441
L 275.001136 42.682831
L 279.500365 41.594222
L 283.099748 40.505613
L 293.897897 38.328394
L 297.49728 37.239784
L 315.494194 35.062566
L 369.484938 30.708128
L 423.475682 28.530909
L 423.475682 28.530909
" clip-path="url(#p3e78a3e766)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="patch_3">
<path d="M 33.73 317.72
L 33.73 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_4">
<path d="M 442.035 317.72
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_5">
<path d="M 33.73 317.72
L 442.035 317.72
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_6">
<path d="M 33.73 14.76
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
</g>
</g>
<defs>
<clipPath id="p3e78a3e766">
<rect x="33.73" y="14.76" width="408.305" height="302.96"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -0,0 +1,647 @@
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns:xlink="http://www.w3.org/1999/xlink" width="460.8pt" height="345.6pt" viewBox="0 0 460.8 345.6" xmlns="http://www.w3.org/2000/svg" version="1.1">
<metadata>
<rdf:RDF xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<cc:Work>
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
<dc:date>2025-07-30T17:57:36.284432</dc:date>
<dc:format>image/svg+xml</dc:format>
<dc:creator>
<cc:Agent>
<dc:title>Matplotlib v3.10.3, https://matplotlib.org/</dc:title>
</cc:Agent>
</dc:creator>
</cc:Work>
</rdf:RDF>
</metadata>
<defs>
<style type="text/css">*{stroke-linejoin: round; stroke-linecap: butt}</style>
</defs>
<g id="figure_1">
<g id="patch_1">
<path d="M 0 345.6
L 460.8 345.6
L 460.8 0
L 0 0
z
" style="fill: #ffffff"/>
</g>
<g id="axes_1">
<g id="patch_2">
<path d="M 33.73 317.72
L 442.035 317.72
L 442.035 14.76
L 33.73 14.76
z
" style="fill: #ffffff"/>
</g>
<g id="matplotlib.axis_1">
<g id="xtick_1">
<g id="line2d_1">
<defs>
<path id="m0e596f21b4" d="M 0 0
L 0 3.5
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m0e596f21b4" x="59.614794" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_1">
<!-- 2.0 -->
<g transform="translate(47.473388 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-2212" d="M 678 2272
L 4684 2272
L 4684 1741
L 678 1741
L 678 2272
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-32" d="M 1228 531
L 3431 531
L 3431 0
L 469 0
L 469 531
Q 828 903 1448 1529
Q 2069 2156 2228 2338
Q 2531 2678 2651 2914
Q 2772 3150 2772 3378
Q 2772 3750 2511 3984
Q 2250 4219 1831 4219
Q 1534 4219 1204 4116
Q 875 4013 500 3803
L 500 4441
Q 881 4594 1212 4672
Q 1544 4750 1819 4750
Q 2544 4750 2975 4387
Q 3406 4025 3406 3419
Q 3406 3131 3298 2873
Q 3191 2616 2906 2266
Q 2828 2175 2409 1742
Q 1991 1309 1228 531
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-2e" d="M 684 794
L 1344 794
L 1344 0
L 684 0
L 684 794
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-30" d="M 2034 4250
Q 1547 4250 1301 3770
Q 1056 3291 1056 2328
Q 1056 1369 1301 889
Q 1547 409 2034 409
Q 2525 409 2770 889
Q 3016 1369 3016 2328
Q 3016 3291 2770 3770
Q 2525 4250 2034 4250
z
M 2034 4750
Q 2819 4750 3233 4129
Q 3647 3509 3647 2328
Q 3647 1150 3233 529
Q 2819 -91 2034 -91
Q 1250 -91 836 529
Q 422 1150 422 2328
Q 422 3509 836 4129
Q 1250 4750 2034 4750
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-2212"/>
<use xlink:href="#DejaVuSans-32" transform="translate(83.789062 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(147.412109 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(179.199219 0)"/>
</g>
</g>
</g>
<g id="xtick_2">
<g id="line2d_2">
<g>
<use xlink:href="#m0e596f21b4" x="105.720873" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_2">
<!-- 1.5 -->
<g transform="translate(93.579467 332.318437) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-31" d="M 794 531
L 1825 531
L 1825 4091
L 703 3866
L 703 4441
L 1819 4666
L 2450 4666
L 2450 531
L 3481 531
L 3481 0
L 794 0
L 794 531
z
" transform="scale(0.015625)"/>
<path id="DejaVuSans-35" d="M 691 4666
L 3169 4666
L 3169 4134
L 1269 4134
L 1269 2991
Q 1406 3038 1543 3061
Q 1681 3084 1819 3084
Q 2600 3084 3056 2656
Q 3513 2228 3513 1497
Q 3513 744 3044 326
Q 2575 -91 1722 -91
Q 1428 -91 1123 -41
Q 819 9 494 109
L 494 744
Q 775 591 1075 516
Q 1375 441 1709 441
Q 2250 441 2565 725
Q 2881 1009 2881 1497
Q 2881 1984 2565 2268
Q 2250 2553 1709 2553
Q 1456 2553 1204 2497
Q 953 2441 691 2322
L 691 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-2212"/>
<use xlink:href="#DejaVuSans-31" transform="translate(83.789062 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(147.412109 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(179.199219 0)"/>
</g>
</g>
</g>
<g id="xtick_3">
<g id="line2d_3">
<g>
<use xlink:href="#m0e596f21b4" x="151.826952" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_3">
<!-- 1.0 -->
<g transform="translate(139.685545 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-2212"/>
<use xlink:href="#DejaVuSans-31" transform="translate(83.789062 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(147.412109 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(179.199219 0)"/>
</g>
</g>
</g>
<g id="xtick_4">
<g id="line2d_4">
<g>
<use xlink:href="#m0e596f21b4" x="197.93303" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_4">
<!-- 0.5 -->
<g transform="translate(185.791624 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-2212"/>
<use xlink:href="#DejaVuSans-30" transform="translate(83.789062 0)"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(147.412109 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(179.199219 0)"/>
</g>
</g>
</g>
<g id="xtick_5">
<g id="line2d_5">
<g>
<use xlink:href="#m0e596f21b4" x="244.039109" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_5">
<!-- 0.0 -->
<g transform="translate(236.087546 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_6">
<g id="line2d_6">
<g>
<use xlink:href="#m0e596f21b4" x="290.145188" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_6">
<!-- 0.5 -->
<g transform="translate(282.193625 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_7">
<g id="line2d_7">
<g>
<use xlink:href="#m0e596f21b4" x="336.251266" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_7">
<!-- 1.0 -->
<g transform="translate(328.299704 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_8">
<g id="line2d_8">
<g>
<use xlink:href="#m0e596f21b4" x="382.357345" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_8">
<!-- 1.5 -->
<g transform="translate(374.405782 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
<g id="xtick_9">
<g id="line2d_9">
<g>
<use xlink:href="#m0e596f21b4" x="428.463424" y="317.72" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_9">
<!-- 2.0 -->
<g transform="translate(420.511861 332.318437) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-32"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
</g>
</g>
</g>
</g>
<g id="matplotlib.axis_2">
<g id="ytick_1">
<g id="line2d_10">
<defs>
<path id="m82b563dc58" d="M 0 0
L -3.5 0
" style="stroke: #000000; stroke-width: 0.8"/>
</defs>
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="305.0377" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_10">
<!-- 0.00 -->
<g transform="translate(4.464375 308.836919) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_2">
<g id="line2d_11">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="270.202199" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_11">
<!-- 0.25 -->
<g transform="translate(4.464375 274.001418) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_3">
<g id="line2d_12">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="235.366698" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_12">
<!-- 0.50 -->
<g transform="translate(4.464375 239.165917) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_4">
<g id="line2d_13">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="200.531197" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_13">
<!-- 0.75 -->
<g transform="translate(4.464375 204.330415) scale(0.1 -0.1)">
<defs>
<path id="DejaVuSans-37" d="M 525 4666
L 3525 4666
L 3525 4397
L 1831 0
L 1172 0
L 2766 4134
L 525 4134
L 525 4666
z
" transform="scale(0.015625)"/>
</defs>
<use xlink:href="#DejaVuSans-30"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_5">
<g id="line2d_14">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="165.695695" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_14">
<!-- 1.00 -->
<g transform="translate(4.464375 169.494914) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_6">
<g id="line2d_15">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="130.860194" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_15">
<!-- 1.25 -->
<g transform="translate(4.464375 134.659413) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-32" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_7">
<g id="line2d_16">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="96.024693" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_16">
<!-- 1.50 -->
<g transform="translate(4.464375 99.823912) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_8">
<g id="line2d_17">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="61.189192" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_17">
<!-- 1.75 -->
<g transform="translate(4.464375 64.98841) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-31"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-37" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-35" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
<g id="ytick_9">
<g id="line2d_18">
<g>
<use xlink:href="#m82b563dc58" x="33.73" y="26.35369" style="stroke: #000000; stroke-width: 0.8"/>
</g>
</g>
<g id="text_18">
<!-- 2.00 -->
<g transform="translate(4.464375 30.152909) scale(0.1 -0.1)">
<use xlink:href="#DejaVuSans-32"/>
<use xlink:href="#DejaVuSans-2e" transform="translate(63.623047 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(95.410156 0)"/>
<use xlink:href="#DejaVuSans-30" transform="translate(159.033203 0)"/>
</g>
</g>
</g>
</g>
<g id="line2d_19">
<path d="M 52.289318 303.949091
L 64.602536 302.860481
L 78.817103 300.683263
L 84.087803 299.594653
L 89.678131 297.417434
L 95.629367 296.328825
L 100.359232 295.240216
L 101.991348 294.151606
L 103.318165 293.062997
L 107.417158 290.885778
L 108.825004 289.797169
L 110.615588 288.708559
L 116.205915 287.61995
L 120.93578 286.53134
L 122.157151 285.442731
L 123.039571 284.354121
L 125.283287 282.176903
L 126.656198 279.999684
L 130.420482 277.822465
L 131.872672 275.645246
L 133.018179 274.556637
L 134.344996 273.468027
L 135.352789 272.379418
L 136.782463 271.290808
L 142.7337 270.202199
L 148.0044 269.11359
L 149.095681 268.02498
L 149.830443 266.936371
L 150.757206 265.847761
L 151.522457 264.759152
L 152.44922 262.581933
L 154.648592 260.404714
L 155.929337 257.138886
L 156.522343 256.050277
L 156.948266 254.961667
L 157.519241 253.873058
L 161.618234 251.695839
L 162.218967 250.60723
L 162.672099 249.51862
L 163.903254 247.341401
L 164.718094 245.164183
L 167.234762 242.986964
L 168.334721 240.809745
L 169.261484 239.721135
L 170.406992 238.632526
L 171.333755 237.543917
L 172.741601 236.455307
L 186.956168 234.278088
L 188.146019 233.189479
L 188.911269 232.10087
L 189.838032 231.01226
L 190.572795 229.923651
L 191.427937 227.746432
L 193.31815 225.569213
L 194.337079 222.303385
L 194.790211 221.214775
L 195.52693 219.037557
L 198.261593 216.860338
L 199.607779 212.5059
L 200.060911 210.328681
L 201.379596 208.151462
L 201.920431 205.974244
L 203.296758 202.708415
L 203.89749 201.619806
L 209.487818 199.442587
L 210.130414 198.353978
L 210.57481 197.265368
L 211.635952 195.088149
L 212.240624 192.910931
L 213.74704 190.733712
L 214.673803 187.467884
L 215.439054 185.290665
L 215.879208 184.202055
L 219.301908 182.024837
L 219.845934 180.936227
L 220.26413 179.847618
L 221.435838 177.670399
L 222.24119 175.49318
L 223.462561 174.404571
L 224.892235 173.315961
L 226.135564 171.138742
L 227.226845 170.050133
L 228.634691 168.961524
L 229.824542 167.872914
L 231.725891 166.784305
L 256.352327 164.607086
L 258.253676 163.518476
L 259.443526 162.429867
L 260.851373 161.341258
L 261.942654 160.252648
L 263.185983 158.075429
L 264.615657 156.98682
L 265.837028 155.898211
L 267.213355 152.632382
L 267.814087 151.543773
L 268.232284 150.455163
L 268.77631 149.366554
L 272.19901 147.189335
L 273.404414 143.923507
L 273.80274 142.834898
L 274.331178 140.657679
L 275.837594 138.48046
L 276.442266 136.303241
L 277.947804 133.037413
L 278.5904 131.948803
L 284.180727 129.771585
L 284.78146 128.682975
L 285.717632 126.505756
L 286.157787 125.417147
L 286.698622 123.239928
L 288.017306 121.062709
L 288.808832 117.796881
L 289.816625 114.531053
L 292.551288 112.353834
L 294.167062 107.999396
L 294.760068 105.822178
L 296.650281 103.644959
L 297.505423 101.46774
L 298.240185 100.37913
L 299.166949 99.290521
L 299.932199 98.201912
L 301.12205 97.113302
L 315.336617 94.936083
L 316.744463 93.847474
L 317.671226 92.758865
L 318.816734 91.670255
L 319.743497 90.581646
L 320.843456 88.404427
L 323.360123 86.227208
L 324.76797 82.96138
L 325.406119 81.87277
L 325.859251 80.784161
L 326.459984 79.695552
L 330.558976 77.518333
L 331.129951 76.429723
L 331.555874 75.341114
L 332.692907 73.163895
L 333.429626 70.986676
L 335.628998 68.809457
L 336.555761 66.632239
L 337.321011 65.543629
L 338.247775 64.45502
L 338.982537 63.36641
L 340.073818 62.277801
L 345.344518 61.189192
L 351.295754 60.100582
L 352.725429 59.011973
L 353.733222 57.923363
L 355.060039 56.834754
L 356.205546 55.746144
L 357.657736 53.568926
L 361.42202 51.391707
L 362.794931 49.214488
L 367.142437 44.86005
L 371.872303 43.771441
L 377.46263 42.682831
L 379.253213 41.594222
L 380.66106 40.505613
L 384.760053 38.328394
L 386.086869 37.239784
L 392.448851 35.062566
L 401.237608 32.885347
L 409.261115 30.708128
L 423.475682 28.530909
L 423.475682 28.530909
" clip-path="url(#pde11ae1218)" style="fill: none; stroke: #1f77b4; stroke-width: 1.5; stroke-linecap: square"/>
</g>
<g id="patch_3">
<path d="M 33.73 317.72
L 33.73 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_4">
<path d="M 442.035 317.72
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_5">
<path d="M 33.73 317.72
L 442.035 317.72
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
<g id="patch_6">
<path d="M 33.73 14.76
L 442.035 14.76
" style="fill: none; stroke: #000000; stroke-width: 0.8; stroke-linejoin: miter; stroke-linecap: square"/>
</g>
</g>
</g>
<defs>
<clipPath id="pde11ae1218">
<rect x="33.73" y="14.76" width="408.305" height="302.96"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 19 KiB

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

View File

@ -2,21 +2,185 @@ project:
type: website
website:
title: "Zenzicubi.co"
favicon: "./logo-favicon.png"
title: "zenzicubi.co"
repo-url: https://git.zenzicubi.co/cube/zenzicubi.co
repo-branch: master
repo-actions: [source]
repo-link-target: "_blank"
navbar:
logo: "./logo-vector.svg"
left:
- text: "Math"
menu:
- ./posts/math/polycount/index.qmd
- ./posts/math/pentagons/index.qmd
- ./posts/math/chebyshev/index.qmd
- ./posts/math/stereo/index.qmd
- ./posts/math/permutations/index.qmd
- ./posts/math/type-algebra/index.qmd
- ./posts/math/number-number/index.qmd
- ./posts/math/finite-field/index.qmd
- ./posts/math/misc/index.qmd
right:
# - about.qmd
- ./about/index.qmd
- icon: git
href: https://git.zenzicubi.co/cube/zenzicubi.co
- icon: github
href: https://github.com/queue-miscreant
background: primary
search: true
draft-mode: unlinked
sidebar:
- id: topic-sidebar
style: "floating"
contents:
- section: "Topics"
contents:
- ./posts/math/polycount/index.qmd
- ./posts/math/pentagons/index.qmd
- ./posts/math/chebyshev/index.qmd
- ./posts/math/stereo/index.qmd
- ./posts/math/permutations/index.qmd
- ./posts/math/type-algebra/index.qmd
- ./posts/math/number-number/index.qmd
- ./posts/math/finite-field/index.qmd
- ./posts/math/misc/index.qmd
- id: misc-sidebar
style: "floating"
contents:
- section: "Miscellaneous"
contents:
- ./posts/math/misc/platonic-volume/index.qmd
- ./posts/math/misc/infinitesimals/index.qmd
- id: polycount-sidebar
style: "floating"
contents:
- section: "Polynomial Counting"
href: ./posts/math/polycount/index.qmd
contents:
- text: "Part 1: A primer"
href: ./posts/math/polycount/1/index.qmd
- text: "Part 2: Binary and beyond"
href: ./posts/math/polycount/2/index.qmd
- text: "Part 3: The third degree"
href: ./posts/math/polycount/3/index.qmd
- text: "Part 4: Two twos"
href: ./posts/math/polycount/4/index.qmd
contents:
- text: "Appendix"
href: ./posts/math/polycount/4/appendix/index.qmd
- text: "Part 5: Pentamerous multiplication"
href: ./posts/math/polycount/5/index.qmd
- section: 2D
contents:
- text: "Part 1: Lines, leaves, and sand"
href: ./posts/math/polycount/sand-1/index.qmd
- text: "Part 2: Reorienting Polynomials"
href: ./posts/math/polycount/sand-2/index.qmd
- id: pentagons-sidebar
style: "floating"
contents:
- section: "12 Pentagons"
href: ./posts/math/pentagons/index.qmd
contents:
- text: "Part 1"
href: ./posts/math/pentagons/1/index.qmd
- text: "Part 2"
href: ./posts/math/pentagons/2/index.qmd
- text: "Part 3"
href: ./posts/math/pentagons/3/index.qmd
- id: chebyshev-sidebar
style: "floating"
contents:
- section: "Generating Polynomials"
href: ./posts/math/chebyshev/index.qmd
contents:
- text: "Part 1: Regular Constructability"
href: ./posts/math/chebyshev/1/index.qmd
- text: "Part 2: Ghostly Chains"
href: ./posts/math/chebyshev/2/index.qmd
- text: "Extra: Legendary"
href: ./posts/math/chebyshev/extra/index.qmd
- id: stereography-sidebar
style: "floating"
contents:
- section: "Algebraic Stereography"
href: ./posts/math/stereo/index.qmd
contents:
- ./posts/math/stereo/1/index.qmd
- ./posts/math/stereo/2/index.qmd
- id: permutations-sidebar
style: "floating"
contents:
- section: "A Game of Permutations"
href: ./posts/math/permutations/index.qmd
contents:
- text: "Part 1"
href: ./posts/math/permutations/1/index.qmd
- text: "Part 2"
href: ./posts/math/permutations/2/index.qmd
- text: "Part 3"
href: ./posts/math/permutations/3/index.qmd
- text: "Appendix"
href: ./posts/math/permutations/appendix/index.qmd
- id: type-algebra-sidebar
style: "floating"
contents:
- section: "Type Algebra and You"
href: ./posts/math/type-algebra/index.qmd
contents:
- text: "Part 1: Basics"
href: ./posts/math/type-algebra/1/index.qmd
- text: "Part 2: A Fixer-upper"
href: ./posts/math/type-algebra/2/index.qmd
- text: "Part 3: Combinatorial Types"
href: ./posts/math/type-algebra/3/index.qmd
- id: number-number-sidebar
style: "floating"
contents:
- section: "Numbering Numbers"
href: ./posts/math/number-number/index.qmd
contents:
- text: "From 0 to ∞"
href: ./posts/math/number-number/1/index.qmd
- text: "Ordering Obliquely"
href: ./posts/math/number-number/2/index.qmd
- id: finite-field-sidebar
style: "floating"
contents:
- section: "Exploring Finite Fields"
href: ./posts/math/finite-field/index.qmd
contents:
- text: "Part 1: Preliminaries"
href: ./posts/math/finite-field/1/index.qmd
- text: "Part 2: Matrix Boogaloo"
href: ./posts/math/finite-field/2/index.qmd
contents:
- text: "Appendix"
href: ./posts/math/finite-field/2/extra/index.qmd
- text: "Part 3: Roll a d20"
href: ./posts/math/finite-field/2/index.qmd
- text: "Part 5: The Power of Forgetting"
href: ./posts/math/finite-field/2/index.qmd
format:
html:
theme:
light:
- default
- flatly
dark:
- darkly

63
about/index.qmd Normal file
View File

@ -0,0 +1,63 @@
---
title: "About"
---
This is my personal website (and the third iteration thereof).
The first version used Wordpress since it was quite easy to get into,
didn't require much research, and web hosting services made it easy to set up.
It lasted around three months near the end of 2020, after which I lost my posts because of
hosting troubles and because I wasn't using proper backups.
The second version also used Wordpress, and lasted until the start of 2025
(though the last post I had written up to that point was from the start of 2024).
This version uses [Quarto](https://quarto.org/), an open-source publishing platform that has
some nice features like text-based configuration and Jupyter integration.
As a bonus, it also produces static web pages.
Why Quarto?
-----------
I had a couple of reasons for switching platforms:
- Wordpress is either overkill or not enough.
I don't need a block editor or multiple users, and I don't want to make custom content
just for it to be specific to Wordpress.
- I write a lot of code and LaTeX, which Wordpress relies on plugins for.
Quarto uses (primarily) Pandoc-style Markdown, which allows for inlining of both out of the box.
- Also, because of Jupyter integration, code cells can generate output for the page they're in.
- Since pages are written in Markdown, everything can be edited locally and version-controlled in Git.
The last two are particularly nice in ensuring that the site is reproducibile,
technically even without Quarto.
Instead of articles that live in a Wordpress database or as scattered random files,
I have the complete documents in a structure 1:1 with how the website is organized.
Mathematics
-----------
As of writing, all posts on this site are about math.
In particular, they are dedicated to certain non-obvious insights I choose to investigate.
Typically, although information about these subjects may exist online, it does not exist in a single,
easily-accessible source.
I find writing math posts to be an excellent motivator when it comes to researching things.
It also gives me a chance to learn new tools that otherwise I would not have a reason to use,
not to mention being a good exercise in writing and diagram creation.
An example of this (and one that relates to the creation of the site) is when I was writing code
for what would become the contents of [this post](/posts/polycount/5/).
It was easy enough to learn a library for rendering images (or GIFs),
but I didn't have a gallery to host them, nor a means to share the rationale which produced them.
In a frenzy, I tried gathering my notes in a single text file before eventually putting them on a website.
Along the way, I learned LaTeX to typeset the relevant equations.
I do my best to attribute the programs I use and direct sources I consult along the way,
but extra information is frequently available on Wikipedia,
which I may link to in order to give my explanation some grounding.
Unless otherwise stated, the figures and articles in this category are available under
[CC BY-SA](https://creativecommons.org/licenses/by-sa/4.0/).

View File

@ -1,6 +1,15 @@
---
title: "Posts by topic"
title: "Posts"
listing:
contents: posts/polycount/index.*
contents:
- posts/math/polycount/*/index.*
- posts/math/pentagons/*/index.*
- posts/math/chebyshev/*/index.*
- posts/math/stereo/*/index.*
- posts/math/permutations/*/index.*
- posts/math/type-algebra/*/index.*
- posts/math/number-number/*/index.*
- posts/math/finite-field/*/index.*
- posts/math/misc/*/index.*
sort: "date desc"
---

View File

@ -27,9 +27,10 @@ Each term of the series is weighted by a geometrically decreasing coefficient *c
$$
[...d_2 d_1 d_0]_p \mapsto e^{2\pi i [d_0] / p}
+ c e^{2\pi i [d_1 d_0] / p^2}
+ c^2 e^{2\pi i [d_2 d_1 d_0] / p^2}
+ ... \\
+ c e^{2\pi i [d_1 d_0] / p^2}
+ c^2 e^{2\pi i [d_2 d_1 d_0] / p^2}
+ ...
\\
f_N(d; p) = \sum_{n = 0}^N c^n e^{2\pi i \cdot [d_{n:0}]_p / p^{n + 1}}
$$

BIN
logo-favicon.png (Stored with Git LFS) Normal file

Binary file not shown.

55
logo-vector.svg Normal file
View File

@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.0"
width="81.467003pt"
height="89.874596pt"
viewBox="0 0 81.467003 89.874596"
preserveAspectRatio="xMidYMid"
id="svg3"
sodipodi:docname="logo-vector.svg"
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
inkscape:export-filename="logo-vector.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<defs
id="defs3" />
<sodipodi:namedview
id="namedview3"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="pt"
inkscape:zoom="4.4744239"
inkscape:cx="65.483291"
inkscape:cy="69.95314"
inkscape:window-width="1850"
inkscape:window-height="1052"
inkscape:window-x="1920"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="g3" />
<metadata
id="metadata1">
Created by potrace 1.16, written by Peter Selinger 2001-2019
</metadata>
<g
transform="matrix(0.1,0,0,-0.1,-255.3147,709.4459)"
fill="#ffffff"
stroke="none"
id="g3">
<path
d="m 3108,7004 c -54,-29 -64,-93 -23,-142 l 25,-30 -35,-35 c -39,-39 -44,-70 -20,-116 13,-26 36,-40 92,-56 36,-10 99,13 127,46 39,47 36,93 -11,138 l -38,36 28,27 c 83,81 -37,191 -145,132 z m 102,-19 c 17,-9 30,-20 30,-24 0,-5 2,-16 6,-24 3,-8 -7,-28 -21,-45 -26,-31 -27,-31 -57,-16 -17,9 -42,27 -55,40 -20,20 -22,27 -13,44 20,38 65,48 110,25 z m -8,-204 c 25,-16 49,-39 53,-50 13,-42 -31,-81 -91,-81 -31,0 -84,50 -84,78 0,24 46,82 64,82 7,0 33,-13 58,-29 z"
id="path1" />
<path
d="m 2736,6628 c -38,-36 -56,-78 -34,-78 7,0 19,9 25,19 18,29 61,34 116,13 l 49,-19 -102,-94 c -89,-82 -170,-174 -170,-193 0,-15 24,-3 50,24 15,17 37,30 47,30 11,0 32,-13 48,-30 33,-34 72,-39 114,-14 47,28 99,124 67,124 -8,0 -18,-9 -21,-21 -8,-23 -61,-59 -88,-59 -10,0 -41,7 -68,16 l -51,17 125,121 c 129,125 156,159 136,172 -7,4 -22,-7 -36,-25 -31,-39 -57,-39 -93,-1 -37,40 -71,39 -114,-2 z"
id="path2" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.3 KiB

2
posts/.gitignore vendored Normal file
View File

@ -0,0 +1,2 @@
*.o
*.hi

3
posts/math/_metadata.yml Normal file
View File

@ -0,0 +1,3 @@
toc: true
toc-location: right
toc-title: " "

BIN
posts/math/chebyshev/1/central_angle_figures.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
posts/math/chebyshev/1/decagon_divisible.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,754 @@
---
title: "Generating Polynomials, Part 1: Regular Constructibility"
description: |
What kinds of regular polygons are constructible with compass and straightedge?
format:
html:
html-math-method: katex
date: "2021-08-18"
date-modified: "2025-06-17"
categories:
- geometry
- generating functions
- algebra
- python
---
<style>
.figure-img {
max-width: 512px;
object-fit: contain;
height: 100%;
}
.figure-img.wide {
max-width: 768px;
}
</style>
```{python}
#| echo: false
from math import comb
from IPython.display import Markdown
from tabulate import tabulate
import sympy
from sympy.abc import z
```
[Recently](/posts/math/misc/platonic-volume), I used coordinate-free geometry to derive
the volumes of the Platonic solids, a problem which was very accessible to the ancient Greeks.
On the other hand, they found certain problems regarding which figures can be constructed via
compass and straightedge to be very difficult. For example, they struggled with problems
like [doubling the cube](https://en.wikipedia.org/wiki/Doubling_the_cube)
or [squaring the circle](https://en.wikipedia.org/wiki/Squaring_the_circle),
which are known (through circa 19th century mathematics) to be impossible.
However, before even extending planar geometry by a third dimension or
calculating the areas of circles, a simpler problem becomes apparent.
Namely, what kinds of regular polygons are constructible?
Regular Geometry and a Complex Series
-------------------------------------
When constructing a regular polygon, one wants a ratio between the length of a edge
and the distance from a vertex to the center of the figure.
![
Regular triangle, square, and pentagons inscribed in a unit circle.
Note the right triangle formed by the apothem, half of an edge, and circumradius.
](./central_angle_figures.png){.wide}
In a convex polygon, the total central angle is always one full turn, or 2π radians.
The central angle of a regular *n*-gon is ${2\pi \over n}$ radians,
and the green angle above (which we'll call *θ*) is half of that.
This means that the ratio we're looking for is $\sin(\theta) = \sin(\pi / n)$.
We can multiply by *n* inside the function on both sides to give
$\sin(n\theta) = \sin(\pi) = 0$.
Therefore, constructing a polygon is actually equivalent to solving this equation,
and we can rephrase the question as how to express $\sin(n\theta)$ (and $\cos(n\theta)$).
### Complex Recursion
Thanks to [Euler's formula](https://en.wikipedia.org/wiki/Euler%27s_formula)
and [de Moivre's formula](https://en.wikipedia.org/wiki/De_Moivre%27s_formula),
the expressions we're looking for can be phrased in terms of the complex exponential.
$$
\begin{align*}
e^{i\theta}
&= \text{cis}(\theta) = \cos(\theta) + i\sin(\theta)
& \text{ Euler's formula}
\\
\text{cis}(n \theta) = e^{i(n\theta)}
&= e^{(i\theta)n} = {(e^{i\theta})}^n = \text{cis}(\theta)^n
\\
\cos(n \theta) + i\sin(n \theta)
&= (\cos(\theta) + i\sin(\theta))^n
& \text{ de Moivre's formula}
\end{align*}
$$
De Moivre's formula for $n = 2$ gives
$$
\begin{align*}
\text{cis}(\theta)^2
&= (\text{c} + i\text{s})^2
\\
&= \text{c}^2 + 2i\text{cs} - \text{s}^2 + (0 = \text{c}^2 + \text{s}^2 - 1)
\\
&= 2\text{c}^2 + 2i\text{cs} - 1
\\
&= 2\text{c}(\text{c} + i\text{s}) - 1
\\
&= 2\cos(\theta)\text{cis}(\theta) - 1
\end{align*}
$$
This can easily be massaged into a recurrence relation.
$$
\begin{align*}
\text{cis}(\theta)^2
&= 2\cos(\theta)\text{cis}(\theta) - 1
\\
\text{cis}(\theta)^{n+2}
&= 2\cos(\theta)\text{cis}(\theta)^{n+1} - \text{cis}(\theta)^n
\\
\text{cis}((n+2)\theta)
&= 2\cos(\theta)\text{cis}((n+1)\theta) - \text{cis}(n\theta)
\end{align*}
$$
Recurrence relations like this one are powerful.
Through some fairly straightforward summatory manipulations,
the sequence can be interpreted as the coefficients in a Taylor series,
giving a [generating function](https://en.wikipedia.org/wiki/Generating_function).
Call this function *F*. Then,
$$
\begin{align*}
\sum_{n=0}^\infty \text{cis}((n+2)\theta)x^n
&= 2\cos(\theta) \sum_{n=0}^\infty \text{cis}((n+1)\theta) x^n
- \sum_{n=0}^\infty \text{cis}(n\theta) x^n
\\
{F(x; \text{cis}(\theta)) - 1 - x\text{cis}(\theta) \over x^2}
&= 2\cos(\theta) {F(x; \text{cis}(\theta)) - 1 \over x}
- F(x; \text{cis}(\theta))
\\[10pt]
F - 1 - x\text{cis}(\theta)
&= 2\cos(\theta) x (F - 1)
- x^2 F
\\
F - 2\cos(\theta) x F + x^2 F
&= 1 + x(\text{cis}(\theta) - 2\cos(\theta))
\\[10pt]
F(x; \text{cis}(\theta))
&= {1 + x(\text{cis}(\theta) - 2\cos(\theta)) \over
1 - 2\cos(\theta)x + x^2}
\end{align*}
$$
Since $\text{cis}$ is a complex function, we can separate *F* into real and imaginary parts.
Conveniently, these correspond to $\cos(n\theta)$ and $\sin(n\theta)$, respectively.
$$
\begin{align*}
\Re[ F(x; \text{cis}(\theta)) ]
&= {1 + x(\cos(\theta) - 2\cos(\theta)) \over 1 - 2\cos(\theta)x + x^2}
\\
&= {1 - x\cos(\theta) \over 1 - 2\cos(\theta)x + x^2} = A(x; \cos(\theta))
\\
\Im[ F(x; \text{cis}(\theta)) ]
&= {x \sin(\theta) \over 1 - 2\cos(\theta)x + x^2} = B(x; \cos(\theta))\sin(\theta)
\end{align*}
$$
In this form, it becomes obvious that the even though the generating function *F* was originally
parametrized by $\text{cis}(\theta)$, *A* and *B* are parametrized only by $\cos(\theta)$.
Extracting the coefficients of *x* yields an expression for $\cos(n\theta)$ and $\sin(n\theta)$
in terms of $\cos(\theta)$ (and in the latter case, a common factor of $\sin(\theta)$).
If $\cos(\theta)$ in *A* and *B* is replaced with the parameter *z*, then all trigonometric functions
are removed from the equation, and we are left with only polynomials[^1].
These polynomials are [*Chebyshev polynomials*](https://en.wikipedia.org/wiki/Chebyshev_polynomial)
*of the first (A) and second (B) kind*.
In actuality, the polynomials of the second kind are typically offset by 1
(the x in the numerator of *B* is omitted).
However, retaining this term makes indexing consistent between *A* and *B*
(and will make things clearer later).
[^1]:
This can actually be observed as early as the recurrence relation.
$$
\begin{align*}
\text{cis}(\theta)^{n+2}
&= 2\cos(\theta)\text{cis}(\theta)^{n+1} - \text{cis}(\theta)^n
\\
a_{n+2}
&= 2 z a_{n+1} - a_n
\\
\Re[ a_0 ]
&= 1,~~ \Im[ a_0 ] = 0
\\
\Re[ a_1 ]
&= z,~~ \Im[ a_1 ] = 1 \cdot \sin(\theta)
\end{align*}
$$
We were primarily interested in $\sin(n\theta)$, so let's tabulate
the first few polynomials of the second kind (at $z / 2$).
```{python}
#| echo: false
#| label: tbl-chebyshevu
#| tbl-cap: "[OEIS A049310](http://oeis.org/A049310)"
#| classes: plain
Markdown(tabulate(
[
[
n,
"$" + sympy.latex(poly) + "$",
"$" + sympy.latex(sympy.factor(poly)) + "$",
]
for n in range(0, 11)
for poly in [sympy.chebyshevu_poly(n - 1, z / 2) if n > 0 else sympy.sympify(0)]
],
headers=[
"*n*",
"$[x^n]B(x; z / 2) = U_{n - 1}(z / 2)$",
"Factored",
],
numalign="left",
stralign="left",
))
```
Evaluating the polynomials at $z / 2$ cancels the 2 in the denominator (and recurrence),
making these expressions much simpler.
This evaluation has an interpretation in terms of the previous diagram --
recall we used *half* the length of a side as a leg of the right triangle.
For a unit circumradius, the side length itself is then $2\sin( {\pi / n} )$.
To compensate for this doubling, the Chebyshev polynomial must be evaluated at half its normal argument.
### Back on the Plane
The constructibility criterion is deeply connected to the Chebyshev polynomials.
In compass and straightedge constructions, one only has access to linear forms (lines)
and quadratic forms (circles).
This means that a figure is constructible if and only if the root can be expressed using
normal arithmetic (which is linear) and square roots (which are quadratic).
#### Pentagons
Let's look at a regular pentagon.
The relevant polynomial is
$$
[x^5]B ( x; z / 2 )
= z^4 - 3z^2 + 1
= (z^2 - z - 1) (z^2 + z - 1)
$$
According to how we derived this series, when $z = 2\cos(\theta)$, the roots of this polynomial
correspond to when $\sin(5\theta) / \sin(\theta) = 0$.
This relation itself is true when $\theta = \pi / 5$, since $\sin(5 \pi / 5) = 0$.
One of the factors must therefore be the minimal polynomial of $2\cos(\pi / 5 )$.
The former happens to be correct correct, since $2\cos( \pi / 5 ) = \varphi$, the golden ratio.
Note that the second factor is the first evaluated at -*z*.
#### Heptagons
An example of where constructability fails is for $2\cos( \pi / 7 )$.
$$
\begin{align*}
[x^7]B ( x; z / 2 )
&= z^6 - 5 z^4 + 6 z^2 - 1
\\
&= ( z^3 - z^2 - 2 z + 1 ) ( z^3 + z^2 - 2 z - 1 )
\end{align*}
$$
Whichever is the minimal polynomial (the former), it is a cubic, and constructing
a regular heptagon is equivalent to solving it for *z*.
But there are no (nondegenerate) cubics that one can produce via compass and straightedge,
and all constructions necessarily fail.
#### Decagons
One might think the same of $2\cos(\pi /10 )$
$$
\begin{align*}
[x^{10}]B ( x; z / 2 )
&= z^9 - 8 z^7 + 21 z^5 - 20 z^3 + 5 z
\\
&= z ( z^2 - z - 1 )( z^2 + z - 1 )( z^4 - 5 z^2 + 5 )
\end{align*}
$$
This expression also contains the polynomials for $2\cos( \pi / 5 )$.
This is because a regular decagon would contain two disjoint regular pentagons,
produced by connecting every other vertex.
![
&nbsp;
](./decagon_divisible.png)
The polynomial which actually corresponds to $2\cos( \pi / 10 )$ is the quartic,
which seems to suggest that it will require a fourth root and somehow decagons are not constructible.
However, it can be solved by completing the square...
$$
\begin{align*}
z^4 - 5z^2 &= -5
\\
z^4 - 5z^2 + (5/2)^2 &= -5 + (5/2)^2
\\
( z^2 - 5/2)^2 &= {25 - 20 \over 4}
\\
( z^2 - 5/2) &= {\sqrt 5 \over 2}
\\
z^2 &= {5 \over 2} + {\sqrt 5 \over 2}
\\
z &= \sqrt{ {5 + \sqrt 5 \over 2} }
\end{align*}
$$
...and we can breathe a sigh of relief.
The Triangle behind Regular Polygons
------------------------------------
Preferring *z* to be halved in $B(x; z/2)$ makes something else more evident.
Observe these four rows of the Chebyshev polynomials
```{python}
#| echo: false
#| classes: plain
Markdown(tabulate(
[
[
n,
"$" + sympy.latex(poly) + "$",
k,
int(poly.coeff(z, k)), # type: ignore
]
for n, k in zip(range(4, 8), range(3, -1, -1))
for poly in [sympy.chebyshevu_poly(n - 1, z / 2) if n > 0 else sympy.sympify(0)]
],
headers=[
"*n*",
"$[x^n]B(x; z / 2)$",
"*k*",
"$[z^{k}][x^n]B(x; z / 2)$",
],
numalign="left",
stralign="left",
))
```
The last column looks like an alternating row of Pascal's triangle
(namely, ${n - \lfloor {k / 2} \rfloor - 1 \choose k}(-1)^k$).
This resemblance can be made more apparent by listing the coefficients of the polynomials in a table.
```{python}
#| echo: false
#| classes: plain
rainbow_classes = [
"",
"red",
"orange",
"yellow",
"green",
"cyan",
"aqua",
"blue",
"purple"
"",
"",
]
rainbow_class = lambda x, color: f"<span style=\"color: {rainbow_classes[color]}\">{x}</span>"
Markdown(tabulate(
[
[
n,
*[" " for _ in range(1, 11 - n)], # offset for terms of the polynomial
*[
0 if k % 2 == 1
else rainbow_class(
comb(n - (k // 2) - 1, k // 2) * (-1)**(k // 2),
n - (k // 2) - 1,
)
for k in range(n)
]
]
for n in range(1, 11)
],
headers=[
"n",
*[f"$z^{nm}$" for nm in reversed(range(2, 10))],
"$z$",
"$1$",
],
numalign="right",
stralign="right",
))
```
Though they alternate in sign, the rows of Pascal's triangle appear along diagonals,
which I have marked in rainbow.
Meanwhile, alternating versions of the naturals (1, 2, 3, 4...),
the triangular numbers (1, 3, 6, 10...),
the tetrahedral numbers (1, 4, 10, 20...), etc.
are present along the columns, albeit spaced out by 0's.
The relationship of the Chebyshev polynomials to the triangle is easier to see if
the coefficient extraction of $B(x; z / 2)$ is reversed.
In other words, we extract *z* before extracting *x*.
$$
\begin{align*}
B(x; z / 2) &= {x \over 1 - zx + x^2}
= {x \over 1 + x^2 - zx}
= {x \over 1 + x^2}
\cdot {1 \over {1 + x^2 \over 1 + x^2} - z{x \over 1 + x^2}}
\\[10pt]
[z^n]B(x; z / 2) &= {x \over 1 + x^2} [z^n] {1 \over 1 - z{x \over 1 + x^2}}
= {x \over 1 + x^2} \left( {x \over 1 + x^2} \right)^n
\\
&= \left( {x \over 1 + x^2} \right)^{n+1}
= x^{n+1} (1 + x^2)^{-n - 1}
\\
&= x^{n+1} \sum_{k=0}^\infty {-n - 1 \choose k}(x^2)^k
\quad \text{Binomial theorem}
\end{align*}
$$
While the use of the binomial theorem is more than enough to justify
the appearance of Pascal's triangle (along with explaining the 0's),
I'll simplify further to explicitly show the alternating signs.
$$
\begin{align*}
{(-n - 1)_k} &= (-n - 1)(-n - 2) \cdots (-n - k)
\\
&= (-1)^k (n + k)(n + k - 1) \cdots (n + 1)
\\
&= (-1)^k (n + k)_k
\\
\implies {-n - 1 \choose k}
&= {n + k \choose k}(-1)^k
\\[10pt]
[z^n]B(x; z / 2)
&= x^{n+1} \sum_{k=0}^\infty {n + k \choose k} (-1)^k x^{2k}
\end{align*}
$$
Squinting hard enough, the binomial coefficient is similar to the earlier
which gave the third row of Pascal's triangle.
If k is fixed, then this expression actually generates the antidiagonal entries
of the coefficient table, which are the columns with uniform sign.
The alternation instead occurs between antidiagonals (one is all positive,
the next is 0's, the next is all negative, etc.).
The initial $x^{n+1}$ lags these sequences so that they reproduce the triangle.
### Imagined Transmutation
The generating function of the Chebyshev polynomials resembles other two term recurrences.
For example, the Fibonacci numbers have generating function
$$
\sum_{n = 0}^\infty \text{Fib}_n x^n = {1 \over 1 - x - x^2}
$$
This resemblance can be made explicit with a simple algebraic manipulation.
$$
\begin{align*}
B(ix; -iz / 2)
&= {1 \over 1 -\ (-i z)(ix) + (ix)^2}
= {1 \over 1 -\ (-i^2) z x + (i^2)(x^2)}
\\
&= {1 \over 1 -\ z x -\ x^2}
\end{align*}
$$
If $z = 1$, these two generating functions are equal.
The same can be said for $z = 2$ with the generating function of the Pell numbers,
and so on for higher recurrences (corresponding to metallic means) for higher integral *z*.
In terms of the Chebyshev polynomials, this series manipulation removes the alternation in
the coefficients of $U_n$, restoring Pascal's triangle to its nonalternating form.
Related to the previous point, it is possible to find the Fibonacci numbers (Pell numbers, etc.)
in Pascal's triangle, which you can read more about
[here](http://users.dimi.uniud.it/~giacomo.dellariccia/Glossary/Pascal/Koshy2011.pdf).
Manipulating the Series
-----------------------
Look back to the table of $U_{n - 1}(z / 2)$ (@tbl-chebyshevu).
When I brought up $U_{10 - 1}(z / 2)$ and decagons, I pointed out their relationship to pentagons
as an explanation for why $U_{5 -\ 1}(z / 2)$ appears as a factor.
Conveniently, $U_{2 -\ 1}(z / 2) = z$ is also a factor, and 2 is likewise a factor of 10.
This pattern is present throughout the table; $n = 6$ contains factors for
$n = 2 \text{ and } 3$ and the prime numbers have no smaller factors.
If this observation is legitimate, call the newest term $f_n(z)$
and denote $p_n(z) = U_{n -\ 1}( z / 2 )$.
### Factorization Attempts
The relationship between $p_n$ and the intermediate $f_d$, where *d* is a divisor of *n*,
can be made explicit by a [Möbius inversion](https://en.wikipedia.org/wiki/M%C3%B6bius_inversion_formula).
$$
\begin{align*}
p_n(z) &= \prod_{d|n} f_n(z)
\\
\log( p_n(z) )
&= \log \left( \prod_{d|n} f_d(z) \right)
= \sum_{d|n} \log( f_d(z) )
\\
\log( f_n(z) ) &= \sum_{d|n} { \mu \left({n \over d} \right)}
\log( p_d(z) )
\\
f_n(z) &= \prod_{d|n} p_d(z)^{ \mu (n / d) }
\\[10pt]
f_6(z) = g_6(z)
&= p_6(z)^{\mu(1)}
p_3(z)^{\mu(2)}
p_2(z)^{\mu(3)}
\\
&= {p_6(z) \over p_3(z) p_2(z)}
\end{align*}
$$
Unfortunately, it's difficult to apply this technique across our whole series.
Möbius inversion over series typically uses more advanced generating functions such as
[Dirichlet series](https://en.wikipedia.org/wiki/Dirichlet_series#Formal_Dirichlet_series)
or [Lambert series](https://en.wikipedia.org/wiki/Lambert_series).
However, naively reaching for these fails for two reasons:
- We built our series of polynomials on a recurrence relation, and these series
are opaque to such manipulations.
- To do a proper Möbius inversion, we need these kinds of series over the *logarithm*
of each polynomial (*B* is a series over the polynomials themselves).
Ignoring these (and if you're in the mood for awful-looking math) you may note
the Lambert equivalence[^2]:
[^2]:
This equivalence applies to other polynomial series obeying the same factorization rule
such as the [cyclotomic polynomials](https://en.wikipedia.org/wiki/Cyclotomic_polynomial).
$$
\begin{align*}
\log( p_n(z) )
&= \sum_{d|n} \log( f_d(z) )
\\
\sum_{n = 1}^\infty \log( p_n ) x^n
&= \sum_{n = 1}^\infty \sum_{d|n} \log( f_d ) x^n
\\
&= \sum_{k = 1}^\infty \sum_{m = 1}^\infty \log( f_m ) x^{m k}
\\
&= \sum_{m = 1}^\infty \log( f_m ) \sum_{k = 1}^\infty (x^m)^k
\\
&= \sum_{m = 1}^\infty \log( f_m ) {x^m \over 1 - x^m}
\end{align*}
$$
Either way, the number-theoretic properties of this sequence are difficult to ascertain
without advanced techniques.
If research has been done, it is not easily available in the OEIS.
### Total Degrees
It can be also be observed that the new term is symmetric ($f(z) = f(-z)$), and is therefore
either irreducible or the product of polynomial and its reflection (potentially negated).
For example,
$$
p_9(z) = \left\{
\begin{matrix}
(z - 1)(z + 1)
& \cdot
& (z^3 - 3z - 1)(z^3 - 3z + 1)
\\
\shortparallel && \shortparallel
\\
f_3(z)
& \cdot
& f_9(z)
\\
\shortparallel && \shortparallel
\\
g_3(z) \cdot g_3(-z)
& \cdot
& g_9(z) \cdot -g_9(-z)
\end{matrix}
\right.
$$
These factor polynomials $g_n$ are the minimal polynomials of $2\cos( \pi / n )$.
Multiplying these minimal polynomials by their reflection can be observed in the Chebyshev polynomials
for $n = 3, 5, 7, 9$, strongly implying that it occurs on the odd terms.
Assuming this is true, we have
$$
f_n(z) = \begin{cases}
g_n(z) & \text{$n$ is even}
\\
g_n(z)g_n(-z)
& \text{$n$ is odd and ${\deg(f_n) \over 2}$ is even}
\\
-g_n(z)g_n(-z)
& \text{$n$ is odd and ${\deg(f_n) \over 2}$ is odd}
\end{cases}
$$
Without resorting to any advanced techniques, the degrees of $f_n$ are
not too difficult to work out.
The degree of $p_n(z)$ is $n -\ 1$, which is also the degree of $f_n(z)$ if *n* is prime.
If *n* is composite, then the degree of $f_n(z)$ is $n -\ 1$ minus the degrees
of the divisors of $n -\ 1$.
This leaves behind how many numbers less than *n* are coprime to *n*.
Therefore $\deg(f_n) = \phi(n)$, the
[Euler totient function](https://en.wikipedia.org/wiki/Euler_totient_function) of the index.
The totient function can be used to examine the parity of *n*.
If *n* is odd, it is coprime to 2 and all even numbers.
The introduced factor of 2 to 2*n* removes the evens from the totient, but this is compensated by
the addition of the odd multiples of old numbers coprime to *n* and new primes.
This means that $\phi(2n) = \phi(n)$ for odd *n* (other than 1).
The same argument can be used for even *n*: there are as many odd numbers from 0 to *n* as there are
from *n* to 2*n*, and there are an equal number of numbers coprime to 2*n* in either interval.
Therefore, $\phi(2n) = 2\phi(n)$ for even *n*.
This collapses all cases of the conditional factorization of $f_n$ into one,
and the degrees of $g_n$ are
$$
\begin{align*}
\deg( g_n(z) )
&= \begin{cases}
\deg( f_n(z) )
= \phi(n)
& n \text{ is even} & \implies \phi(n) = \phi(2n) / 2
\\
\deg( f_n(z) ) / 2
= \phi(n) / 2
& n \text{ is odd} & \implies \phi(n) / 2 = \phi(2n) / 2
\end{cases}
\\
&= \varphi(2n) / 2
\end{align*}
$$
Though they were present in the earlier Chebyshev table,
the $g_n$ themselves are presented again, along with the expression for their degree
```{python}
#| echo: false
#| classes: plain
def poly_to_rising_power_list(poly, var):
"""
Convert a polynomial to a list in rising powers.
E.g., x^2 + x - 1 will be converted to [-1, 1, 1].
"""
ret = []
for term in reversed(poly.as_ordered_terms()):
deg = sympy.degree(term, var)
if deg > len(ret):
ret.extend(0 for _ in range(int(deg) - len(ret)))
if deg == 0:
ret.append(term)
else:
ret.append(term.coeff(z**deg))
return ret
Markdown(tabulate(
[
[
n,
sympy.totient(2*n) / 2,
"$" + sympy.latex(g) + "$",
str(poly_to_rising_power_list(g, z)),
]
for n in range(2, 11)
for g in [
factor # the first factor polynomial with matching degree and negative second term
for factor in sympy.chebyshevu_poly(n - 1, z / 2).factor(z).as_ordered_factors() # type: ignore
for second_term in [
0 if len(factor.as_ordered_terms()) == 1 # if there's only one term, pass it through
else factor.as_ordered_terms()[1].as_ordered_factors()[0] # type: ignore
] if n == 2
or (
sympy.degree(factor) == sympy.totient(2*n) / 2
and isinstance(second_term, sympy.Integer)
and second_term < 0
)
]
] + [[
"-",
"[OEIS A055034](http://oeis.org/A055034)",
"-",
"[OEIS A187360](http://oeis.org/A187360)",
]],
headers=[
"n",
"$\\varphi(2n)/2$",
"$g_n(z)$",
"Coefficient list, rising powers",
],
numalign="right",
stralign="left",
))
```
Closing
-------
My initial jumping off point for writing this article was completely different.
However, in the process of writing, its share of the article shrank and shrank until its
introduction was only vaguely related to what preceded it.
But alas, the introduction via geometric constructions flows better coming off my
[post about the Platonic solids](/posts/math/misc/platonic-volume).
Also, it reads better if I rely less on "if you search for this sequence of numbers"
and more on how to interpret the definition.
Consider reading [the follow-up](../2) to this post if you're interested in another way
one can obtain the Chebyshev polynomials.
I have since rederived the Chebyshev polynomials without the complex exponential,
which you can read about in [this post](/posts/math/stereo/2).
Diagrams created with GeoGebra.

View File

@ -0,0 +1,793 @@
---
title: "Generating Polynomials, Part 2: Ghostly Chains"
description: |
What do polygons without distance still know about planar geometry?
format:
html:
html-math-method: katex
date: "2021-08-19"
date-modified: "2025-06-24"
categories:
- algebra
- linear algebra
- generating functions
- graph theory
- python
---
<style>
.figure-img {
max-width: 512px;
object-fit: contain;
height: 100%;
}
.figure-img.wide {
max-width: 768px;
}
</style>
In the [previous post](../1), I tied the geometry regular polygons to a sequence of polynomials
though some clever algebraic manipulation.
But let's deign to ask a very basic question: what is a polygon?
Loops without Distance
----------------------
Fundamentally, a polygon is just a collection of vertices and edges.
For polygons in a Euclidean setting, the position of points matters,
as well as the lines connecting them -- a rectangle is different from a trapezoid or a kite.
But at its simplest, this is just a tabulation of points and adjacencies.
![
Topologically, all of these are indistinguishable since they all correspond to
the description "4 points in a loop".
](./quadrilaterals.png)
Only examining these figures by their connectedness is precisely the kind of thing
*graph theory* deals with.
"Graph" is a potentially confusing term, since it has nothing to do with "graphs of functions",
but the name is supposed to evoke the fact that they are "drawings".
For the graphs we're interested in, there's some additional terminology:
- Vertices themselves are sometimes instead called *nodes*
- Edge in the graph have no direction in how they connect nodes, so the graph is called *undirected*.
- If the nodes in a graph can be arranged so that no edges appear to intersect,
the graph is *planar*.
- For example, lower-right figure in the above diagram appears to have intersecting edges,
but the nodes can be rearranged to look like the other graphs, so it is planar.
It's easiest to study families of graphs, rather than isolated examples.
If the graph is a simple loop of nodes, it is called a
[*cycle graph*](https://en.wikipedia.org/wiki/Cycle_graph).
They are denoted by $C_n$, where *n* is the number of nodes.
In a cycle graph, since all nodes are identical to each other (they all connect to two edges)
and all edges are identical to each other (they connect identical vertices),
the best geometric interpretation is a shape which is
- Regular, so that each edge and each angle (vertex) are of equal measure
- Convex, so that no edge meets another without creating a vertex (or node)
In other words, $C_3$ is analogous to an equilateral triangle, $C_4$ is analogous to a square, and so on.
### Encoding Graphs
There are two primary ways to store information about a graph.
The first is by labelling each node (for example, with integers), then recording the edges as
a list of pairs of connected nodes.
In the case of an undirected graph, these are unordered pairs.
While such a list is convenient, it doesn't convey a lot of information about the graph
besides the number of edges.
Alternatively, these pairs can also be interpreted as addresses in a square matrix,
called an *adjacency matrix*.
Each column and row correspond to a specific node, and an entry is 1
when the nodes of a row and column of are joined by an edge (and 0 otherwise).
For undirected graphs, these matrices are symmetric, since it is possible
to traverse an edge in either direction.
$$
\begin{align*}
C_3 := \begin{matrix}[
(0, 1), \\
(1, 2), \\
(2, 0)
]\end{matrix} & \cong
\begin{pmatrix}
0 & 1 & 1 \\
1 & 0 & 1 \\
1 & 1 & 0
\end{pmatrix}
\\ \\
C_4 := \begin{matrix} [
(0, 1), \\
(1, 2), \\
(2, 3), \\
(3, 0)
]\end{matrix} & \cong
\begin{pmatrix}
0 & 1 & 0 & 1 \\
1 & 0 & 1 & 0 \\
0 & 1 & 0 & 1 \\
1 & 0 & 1 & 0
\end{pmatrix}
\\ \\
C_5 := \begin{matrix}[
(0, 1), \\
(1, 2), \\
(2, 3), \\
(3, 4), \\
(4, 0)
]\end{matrix} &\cong
\begin{pmatrix}
0 & 1 & 0 & 0 & 1 \\
1 & 0 & 1 & 0 & 0 \\
0 & 1 & 0 & 1 & 0 \\
0 & 0 & 1 & 0 & 1 \\
1 & 0 & 0 & 1 & 0
\end{pmatrix}
\end{align*}
$$
Swapping the labels on two nodes is will exchange two rows and two columns
of the adjacency matrix.
Just one of these swaps would flip the sign of its determinant, but since they occur in pairs,
the determinant is invariant of the labelling (equally, a graph invariant).
Prismatic Recurrence
--------------------
The determinant of a matrix is also the product of its eigenvalues, which are another matrix invariant.
The set of eigenvalues is also called its *spectrum*, and the study of the spectra of graphs is called
[*spectral graph theory*](https://en.wikipedia.org/wiki/Spectral_graph_theory)[^1],
[^1]: It is also among the most mystifying names in math to read without any context
Eigenvalues are the roots of the characteristic polynomial of a matrix.
The matrix $C_5$ is sufficiently large enough to generalize to $C_n$, and its characteristic polynomial by
[Laplace expansion](https://en.wikipedia.org/wiki/Laplace_expansion) is:
$$
\begin{gather*}
Ax = \lambda x \implies (\lambda I - A)x = 0
\\ \\
c_5(\lambda) = |\lambda I - C_5|
= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 & -1 \\
-1 & \lambda & -1 & 0 & 0 \\
0 & -1 & \lambda & -1 & 0 \\
0 & 0 & -1 & \lambda & -1 \\
-1 & 0 & 0 & -1 & \lambda
\end{matrix}
\right |
\\
= \lambda m_{1,1}
+ \overbrace{(-1)}^\text{entry}\overbrace{(-1)^{1 + 2 \ }}^\text{sign} m_{1, 2}
+ \overbrace{(-1)}^\text{entry}\overbrace{(-1)^{1 + 5 \ }}^\text{sign} m_{1, 5}
\end{gather*}
$$
Note that every occurrence of "5" generalizes to higher *n*.
The first [minor](https://en.wikipedia.org/wiki/Matrix_minor)
is easily expressed in terms of *another* matrix's characteristic polynomial.
$$
m_{1, 1}[C_5]
= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 \\
-1 & \lambda & -1 & 0 \\
0 & -1 & \lambda & -1 \\
0 & 0 & -1 & \lambda
\end{matrix}
\right |
= |\lambda I - P_4| = p_{5 - 1}(\lambda)
$$
We will come to the meaning of the $P_n$ in a moment.
The other minors require extra expansions, but ones that (thankfully) quickly terminate.
$$
\begin{matrix}
m_{1, 2}[C_5]
&= \left |
\begin{matrix}
-1 & -1 & 0 & 0 \\
0 & \lambda & -1 & 0 \\
0 & -1 & \lambda & -1 \\
-1 & 0 & -1 & \lambda
\end{matrix}
\right |
&=& (-1)
\left |
\begin{matrix}
\lambda & -1 & 0 \\
-1 & \lambda & -1 \\
0 & -1 & \lambda
\end{matrix}
\right |
&+& (-1)(-1)^{1 + 4}
\left |
\begin{matrix}
-1 & 0 & 0 \\
\lambda & -1 & 0 \\
-1 & \lambda & -1
\end{matrix}
\right |
\\
&&=& (-1)|\lambda I - P_3|
&+& (-1)\overbrace{(-1)^{5}(-1)^{5 - 2}}^{\text{even power, even when $\scriptsize n \neq 5$}}
\\
&&=& (-1)p_{5 - 2}(\lambda) &+& (-1)
\\
&&=& -(p_{5 - 2}(\lambda) &+& 1)
\end{matrix}
$$
The "1 + 4" exponent when evaluating this minor comes from the address of the lower-left -1, (i.e., (1, 4)).
This entry exists for all $C_n$.
The determinant of the rightmost matrix is just the product of the -1's on the diagonal, so it will always
have a power of the same parity as *n*, which cancels out with the sign of the minor.
Meanwhile, another $P$-type matrix appears in the other term, this time of two lower orders.
$$
\begin{matrix}
\\ \\
m_{1, 5}[C_5] &=
\left |
\begin{matrix}
-1 & \lambda & -1 & 0 \\
0 & -1 & \lambda & -1 \\
0 & 0 & -1 & \lambda \\
-1 & 0 & 0 & -1
\end{matrix}
\right |
&=& (-1)
\left |
\begin{matrix}
-1 & \lambda & -1 \\
0 & -1 & \lambda \\
0 & 0 & -1
\end{matrix}
\right |
&+& (-1)(-1)^{5 - 2}
\left |
\begin{matrix}
\lambda & -1 & 0 \\
-1 & \lambda & -1 \\
0 & -1 & \lambda
\end{matrix}
\right |
\\
&&=& (-1)(-1)^{5-2} &+& (-1)(-1)^{5 - 2}|\lambda I - P_3|
\\
&&=& (-1)^{5-1}((-1)(-1) &+& (-1)(-1)p_{5 - 2}(\lambda))
\\
&&=& (-1)^{5-1}(1 &+& p_{5 - 2}(\lambda))
\end{matrix}
$$
A third $P$-type matrix appears, just like the other minor.
Unfortunately, this minor *does* depend on the parity of *n*.
All together, this produces a characteristic polynomial in terms of the polynomials $p_n(\lambda)$:
$$
\begin{align*}
&& c_5(\lambda) &= \lambda p_{5 - 1}
+ (-1)(p_{5 - 2} + 1)
+ (-1)\overbrace{(-1)^{5 - 1} (-1)^{5 - 1}}^{\text{even, even when $\scriptsize n \neq 5$}}(p_{5 - 2} + 1)
\\
&&&= \lambda p_{5 - 1}
- (p_{5 - 2} + 1)
- (p_{5 - 2} + 1)
\\
&&&= \lambda p_{5 - 1}
- 2(p_{5 - 2} + 1)
\\
&& \implies c_n(\lambda) &= \lambda p_{n - 1}(\lambda)
- 2(p_{n - 2}(\lambda) + 1)
\end{align*}
$$
Fortunately, the minor whose determinant depended on the parity of *n* cancels with $(-1)^{1 + 5}$,
and the resulting expression seems to generically apply across all *n*.
Further, this resembles a recurrence relation, which is great for building a rule.
But it is meaningless without knowing $p_n(\lambda)$.
Powerful Chains
---------------
The various $P_n$ are in fact the adjacency matrices of a path on *n* nodes.
![
Example path graphs of orders 2, 3, and 4
](./path_graphs.png){.wide}
$$
\begin{align*}
P_2 &:=
\begin{matrix}[
(0, 1)
]\end{matrix}
\cong \begin{pmatrix}
0 & 1 \\
1 & 0
\end{pmatrix}
\\
P_3 &:=
\begin{matrix}[
(0, 1), \\
(1, 2)
]\end{matrix}
\cong \begin{pmatrix}
0 & 1 & 0 \\
1 & 0 & 1 \\
0 & 1 & 0
\end{pmatrix}
\\
P_4 &:=
\begin{matrix}[
(0, 1), \\
(1, 2), \\
(2, 3)
]\end{matrix}
\cong \begin{pmatrix}
0 & 1 & 0 & 0 \\
1 & 0 & 1 & 0 \\
0 & 1 & 0 & 1 \\
0 & 0 & 1 & 0
\end{pmatrix}
\end{align*}
$$
These matrices are similar to the ones for cycle graphs, but lack the entries in bottom-left
and upper-right corners.
Consequently, the characteristic polynomials of $P_n$ are much easier to solve for.
$$
\begin{gather*}
p_4(\lambda) = |\lambda I - P_4|
= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 \\
-1 & \lambda & -1 & 0 \\
0 & -1 & \lambda & -1 \\
0 & 0 & -1 & \lambda
\end{matrix}
\right |
\\ \\
= \lambda \left |
\begin{matrix}
\lambda & -1 & 0 \\
-1 & \lambda & -1 \\
0 & -1 & \lambda
\end{matrix}
\right | + (-1)(-1)^{1+2} \left |
\begin{matrix}
-1 & -1 & 0 \\
0 & \lambda & -1 \\
0 & -1 & \lambda
\end{matrix}
\right |
\\ \\
= \lambda |\lambda I - P_3| + \left (
(-1) \left |
\begin{matrix}
\lambda & -1 \\
-1 & \lambda
\end{matrix}
\right |
+ (-1)(-1) \left |
\begin{matrix}
0 & -1 \\
0 & \lambda
\end{matrix}
\right |
\right)
\\ \\
= \lambda |\lambda I - P_3| - |\lambda I - P_2|
\\
= \lambda p_{4 - 1}(\lambda) - p_{4 - 2}(\lambda)
\\
\implies p_{n}(\lambda) = \lambda p_{n - 1}(\lambda) - p_{n - 2}(\lambda)
\end{gather*}
$$
While the earlier equation for $c_n$ in terms of $p_n$ reminded of a recurrence relation,
*this* actually is one (and it should look familiar).
Since the recurrence has order 2, it requires two initial terms: $p_0$ and $p_1$.
The graph corresponding to $p_1$ is a single node, not connected to anything.
Therefore, its adjacency matrix is a 1x1 matrix with 0 as its only entry,
and its characteristic polynomial is $\lambda$.
By the recurrence, $p_2 = \lambda p_1 -\ p_0 = \lambda^2 -\ p_0$.
Equating terms with the characteristic polynomial of $P_2$, it is obvious that
$$
|\lambda I - P_2|
= \begin{pmatrix}
\lambda & -1 \\
-1 & \lambda
\end{pmatrix}
= \lambda^2 - 1 = \lambda p_1 - p_0 \\
\implies p_0 = 1
$$
which makes sense, since $p_0$ should have degree zero.
Therefore, the sequence of polynomials $p_n(\lambda)$ is:
$$
\begin{gather*}
p_0(\lambda) &=&& && 1
\\
p_1(\lambda) &=&& && \lambda
\\
p_2(\lambda) &=&& \lambda \lambda - 1
&=& \lambda^2 - 1
\\
p_3(\lambda) &=&& \lambda (\lambda^2 - 1) - \lambda
&=& \lambda(\lambda^2 - 2)
\\
p_4(\lambda) &=&& \lambda (\lambda(\lambda^2 - 2)) - (\lambda^2 - 1)
&=& \lambda^4 - 3\lambda^2 + 1
\\
\vdots & && \vdots && \vdots
\end{gather*}
$$
But wait, we've seen these before (if you read the previous post, that is).
These are just the Chebyshev polynomials of the second kind, evaluated at $\lambda / 2$.
Indeed, their recurrence relations are identical, so the characteristic polynomial of $P_n$ is $U_n(\lambda / 2)$.
Effectively, this connects an *n*-path to a regular *n+1*-gon.
### Back to Cycles
Since the generating function of $U_n$ is known, the generating function for the $c_n$
(which prompted this) is also easily determined.
For ease of use, let
$$
P(x; \lambda) = {B(x; \lambda / 2) \over x} = {1 \over 1 - \lambda x +\ x^2}
$$
Discarding the initial $c_0$ and $c_1$ by setting them to zero[^2], the generating function is
[^2]: It's a good idea to ask why we can do this.
Try examining $c_2$ and $c_3$.
$$
\begin{align*}
c_{n+2}(\lambda) &= \lambda p_{n+1}(\lambda) - 2(p_n(\lambda) + 1)
\\[14pt]
{C(x; \lambda) - c_0(\lambda) - x c_1(\lambda) \over x^2}
&= \lambda \left( {P(x; \lambda) - 1 \over x} \right)
- 2\left( P(x; \lambda) + {1 \over 1 - x} \right)
\\
C &= x \lambda (P - 1) -\
2x^2\left( P + {1 \over 1 - x} \right)
\\
C{(1 - x) \over P} &= x \lambda \left(1 - {1 \over P} \right)(1 - x) -\
2x^2\left( (1 - x) + {1 \over P} \right)
\\
&= x^4 \lambda - 2 x^4 - x^3 \lambda^2 + x^3 \lambda
+ 2 x^3 + x^2 \lambda^2 - 4 x^2
\\
&= x^2 (\lambda - 2) (x^2 - \lambda x - x + \lambda + 2)
\\[14pt]
C(x; \lambda) &= x^2 (\lambda - 2)
{(x^2 - (\lambda + 1) x + \lambda + 2)
\over (1 - x)(1 - \lambda x + x^2)}
\end{align*}
$$
While the numerator is considerably more complicated than the one for P,
the factor $\lambda - 2$ drops out of the entire series.
This pleasantly informs that 2 is an eigenvalue of all $C_n$.
Off the Beaten Path
-------------------
When we use Laplace expansion on the adjacency matrices, we were very fortunate that the minors
*also* looked like adjacency matrices undergoing expansion.
This let us terminate early and recurse.
From the perspective of the graph, Laplace expansion almost looks like removing a node,
but requires special treatment for the nodes connected to the one being removed.
For example, in cycle graphs, the first stage of expansion had three minors:
- The node itself, on the main diagonal
- Being on the main diagonal, this immediately produced another adjacency matrix.
- Either neighbor connected to it, which are on opposite sides of
a path after the node is removed
- Both of these nodes required second expansion to get the *λ*s back on the main diagonal.
For "good enough" graphs that are nearly paths (including paths themselves),
this gives a second-order recurrence relation.
### Trees
Another simple family of graphs are [*trees*](https://en.wikipedia.org/wiki/Tree_%28graph_theory%29).
In some sense, they are the opposite of cycle graphs, since by definition they contain no cycles.
Paths are degenerate trees, but we can make them slightly more interesting by instead adding
exactly one node and edge to (the middle of) a path.
![
Nondegenerate tree graphs based on 3-, 4-, 5-, and 6-paths
](./tree_graphs.png){.wide}
In this notation, the subscripts denote the consituent paths if the "added" node and the
one it is connected to are both removed.
It's easy to see that $T_{a,b} \cong T_{a,b}$, since this just swaps the arms.
Also, $T_{a, 0} \cong T_{0, a} \cong P_{a + 2}$.
Let's try dissecting some of the larger trees.
The adjacency matrices for $T_{1,3}$ and $T_{2,2}$ are:
$$
\begin{align*}
T_{1,3} := \begin{matrix}[
(0, 1), \\
(1, 2), \\
(2, 3), \\
(3, 4), \\
(1, 5)
]\end{matrix} &\cong
\begin{pmatrix}
0 & 1 & 0 & 0 & 0 & 0 \\
1 & 0 & 1 & 0 & 0 & 1 \\
0 & 1 & 0 & 1 & 0 & 0 \\
0 & 0 & 1 & 0 & 1 & 0 \\
0 & 0 & 0 & 1 & 0 & 0 \\
0 & 1 & 0 & 0 & 0 & 0
\end{pmatrix}
\\ \\
T_{2,2} := \begin{matrix}[
(0, 1), \\
(1, 2), \\
(2, 3), \\
(3, 4), \\
(2, 5)
]\end{matrix} &\cong
\begin{pmatrix}
0 & 1 & 0 & 0 & 0 & 0 \\
1 & 0 & 1 & 0 & 0 & 0 \\
0 & 1 & 0 & 1 & 0 & 1 \\
0 & 0 & 1 & 0 & 1 & 0 \\
0 & 0 & 0 & 1 & 0 & 0 \\
0 & 0 & 1 & 0 & 0 & 0
\end{pmatrix}
\end{align*}
$$
Starting with $T_{1,3}$, its characteristic polynomial is:
$$
\begin{align*}
|I \lambda - T_{1,3}|
&= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 & 0 & 0 \\
-1 & \lambda & -1 & 0 & 0 & -1 \\
0 & -1 & \lambda & -1 & 0 & 0 \\
0 & 0 & -1 & \lambda & -1 & 0 \\
0 & 0 & 0 & -1 & \lambda & 0 \\
0 & -1 & 0 & 0 & 0 & \lambda
\end{matrix}
\right |
\\
&= \lambda (-1)^{6 + 6} m_{6,6} + (-1) (-1)^{2 + 6} m_{2,6}
\end{align*}
$$
It's easy to see that $m_{6,6}$ is just $p_5(\lambda)$, since the rest of the graph
other than the additional node is a 5-path.
But the other minor is trickier.
$$
\begin{align*}
m_{2,6}
&= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 & 0 \\
0 & -1 & \lambda & -1 & 0 \\
0 & 0 & -1 & \lambda & -1 \\
0 & 0 & 0 & -1 & \lambda \\
0 & -1 & 0 & 0 & 0
\end{matrix}
\right |
\\
&= (-1) (-1)^{5 + 2}
\left |
\begin{matrix}
\lambda & 0 & 0 & 0 \\
0 & \lambda & -1 & 0 \\
0 & -1 & \lambda & -1 \\
0 & 0 & -1 & \lambda \\
\end{matrix}
\right |
\end{align*}
$$
Through one extra expansion, the determinant of this final matrix can be written as
a product of $\lambda$ and $p_3(\lambda)$.
Before making any conjectures, let's do the same thing to $T_{2,2}$.
$$
\begin{align*}
|I \lambda - T_{2,2}|
&= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 & 0 & 0 \\
-1 & \lambda & -1 & 0 & 0 & 0 \\
0 & -1 & \lambda & -1 & 0 & -1 \\
0 & 0 & -1 & \lambda & -1 & 0 \\
0 & 0 & 0 & -1 & \lambda & 0 \\
0 & 0 & -1 & 0 & 0 & \lambda
\end{matrix}
\right |
\\
&= (-1)^{6 + 6} \lambda m_{6,6} + (-1) (-1)^{3 + 6} m_{3,6}
\\ \\
m_{3,6}
&= \left |
\begin{matrix}
\lambda & -1 & 0 & 0 & 0 \\
-1 & \lambda & -1 & 0 & 0 \\
0 & 0 & -1 & \lambda & -1 \\
0 & 0 & 0 & -1 & \lambda \\
0 & 0 & -1 & 0 & 0
\end{matrix}
\right |
\\
&= (-1) (-1)^{5 + 3}
\left |
\begin{matrix}
\lambda & -1 & 0 & 0 \\
-1 & \lambda & 0 & 0 \\
0 & 0 & \lambda & -1 \\
0 & 0 & -1 & \lambda \\
\end{matrix}
\right |
\end{align*}
$$
Here we get something similar: a combination of $p_5(\lambda)$ and an extra term.
In this case, the final determinant can be written as $p_2(\lambda)^2$.
Now it can be observed that the extra terms are the polynomials corresponding
to $P_a$ and $P_b$ (recall that $p_1(\lambda) = \lambda$, after all).
In both cases, the second expansion was necessary to get rid of the symmetric -1
entries added to the matrix.
The sign of this extra term is always negative, since the -1 entries cancel
and one of the signs of the minors along the two expansions must be negative.
Therefore, the expression for these characteristic polynomials should be:
$$
t_{a,b}(\lambda) = \lambda p_{a + b + 1}(\lambda) - p_a(z) p_b(\lambda)
$$
Note that if *b* is 0, this agrees with the recurrence for $p_n(\lambda)$.
### Examining Small Trees
Due to the subscript of the first term of the RHS, this recurrence is harder to turn into
a generating function.
Instead, let's look at a few smaller trees to see what kind of polynomials they build.
We'll also change the variable of the polynomial to *z* for simplicity.
The first tree of note is $T_{1,1}$.
This has characteristic polynomial
$$
\begin{align*}
t_{1,1}(z) &= z p_{3}(z) - p_1(z) p_1(z)
\\
&= z (z^3 - z^2) - z^2
\\
&= z^2 (z^2 - 3)
\end{align*}
$$
Next, we have both $T_{2,1}$ and $T_{1,2}$.
By symmetry, these are the same graph, so we have characteristic polynomial
$$
\begin{align*}
t_{1,2}(z) &= z p_{4}(z) - p_1(z) p_2(z)
\\
&= z (z^4 - 3z^2 + 2) - z \cdot (z^2 - 1)
\\
&= z (z^4 - 4z^2 + 2)
\end{align*}
$$
Finally, let's look at $T_{1,3}$ and $T_{2,2}$, the trees we used to derive the rule.
$$
\begin{align*}
t_{1,3}(z) &= z p_{5}(z) - p_1(z) p_3(z)
\\
&= z (z^5 - 4z^3 + 3z) - z \cdot (z^3 - 2z)
\\
&= z^2 (z^4 - 5z^2 + 5)
\\[10pt]
t_{2,2}(z) &= z p_{5}(z) - p_2(z) p_2(z)
\\
&= z (z^5 - 4z^3 + 3z) - ( z^2 - 1 )^2
\\
&= (z^2 - 1)(z^4 - 4z^2 + 1)
\end{align*}
$$
Many of these expressions factor surprisingly nicely.
Further, some of these might seem familiar.
From the last post, we saw that $z^4 - 5z^2 + 5$ is a factor of $p_9(z)$, from which we know
it is the minimal polynomial of $2 \cos(\pi / 10)$.
This is also true for:
- In $t_{1,2}$, the factor $z^4 - 4z^2 + 2$, $p_7(z)$, and $2 \cos(\pi / 8)$, respectively
- In $t_{2,2}$, the factor $z^4 - 4z^2 + 1$, $p_11(z)$, and $2 \cos(\pi / 12)$, respectively
We established that the subscripts of the tree (*a* and *b*) indicate constituent *n*-paths,
which we know to correspond to *n+1*-gons.
But these trees also seem to "know" about higher polygons.
### Some Extra Trees
$T_{2,3}$ is the first tree not to partition two equal paths or a path and a single node.
In this regard, the next such tree is $T_{2,4}$.
These graphs turn out to have characteristic polynomials whose factors we haven't seen before.
$$
\begin{align*}
t_{2,3}(z)
&= z (z^{6} - 6 z^{4} + 9 z^{2} - 3)
\\
t_{2,4}(z)
&= z^{8} - 7 z^{6} + 14 z^{4} - 8 z^{2} + 1
\end{align*}
$$
Searching the OEIS for the coefficients of $t_{2,4}$ returns sequence
[A228786](http://oeis.org/A228786), which informs that it is the minimal polynomial
of $2\sin( \pi/15 )$.
This sequence also informs that the unknown factor in the other polynomial is
the minimal polynomial of $2\sin( \pi / 9 )$:
In fact, both of these polynomials show up in factorizations of Chebyshev polynomials
of the *first* kind (specifically, $2T_15(z / 2)$ and $2T_9(z / 2)$).
Perhaps this is not surprising since we were already working with those of the second kind.
However, it is interesting to see them appear from the addition of a single node.
Closing
-------
Regardless of whether chains or polygons are more fundamental, it is certainly interesting
that they are just an algebraic stone's (a *calculus*'s?) toss away from one another.
Perhaps Euler skipped such stones from the bridges of Koenigsberg which inspired him
to initiate graph theory.
Trees are certainly more complicated than either, and we only investigated those removed
from a path by a single node.
Regardless, they still related to Chebyshev polynomials, albeit through their factors.
In fact, I was initially prompted to look into them due to a remarkable correspondence between
certain trees and Platonic solids.
I have since reorganized these thoughts, as from the perspective of this article, the relationship
is tangential at best.

BIN
posts/math/chebyshev/2/path_graphs.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
posts/math/chebyshev/2/quadrilaterals.png (Stored with Git LFS) Normal file

Binary file not shown.

BIN
posts/math/chebyshev/2/tree_graphs.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,4 @@
# freeze computational output
freeze: auto
sidebar: chebyshev-sidebar

Some files were not shown because too many files have changed in this diff Show More