E-023-finite-height-assembly.py
Experiments: E-023 · script updated 08-19-2026
E-023-assembly.csv
— 710.1 KB, updated 08-19-2026
| # | n | margin_traced | margin_measured |
|---|---|---|---|
| 17002 | 340020 | 1500654.583304 | 1525607.006113 |
| 17003 | 340040 | 1500761.423576 | 1525714.496153 |
| 17004 | 340060 | 1500868.264511 | 1525821.986839 |
| 17005 | 340080 | 1500975.106111 | 1525929.478171 |
| 17006 | 340100 | 1501081.948374 | 1526036.970149 |
| 17007 | 340120 | 1501188.791301 | 1526144.462773 |
| 17008 | 340140 | 1501295.634892 | 1526251.956044 |
| 17009 | 340160 | 1501402.479146 | 1526359.449960 |
| 17010 | 340180 | 1501509.324064 | 1526466.944522 |
| 17011 | 340200 | 1501616.169646 | 1526574.439730 |
| 17012 | 340220 | 1501723.015891 | 1526681.935584 |
| 17013 | 340240 | 1501829.862799 | 1526789.432084 |
| 17014 | 340260 | 1501936.710371 | 1526896.929230 |
| 17015 | 340280 | 1502043.558606 | 1527004.427022 |
| 17016 | 340300 | 1502150.407505 | 1527111.925459 |
| 17017 | 340320 | 1502257.257067 | 1527219.424542 |
| 17018 | 340340 | 1502364.107292 | 1527326.924270 |
| 17019 | 340360 | 1502470.958180 | 1527434.424644 |
| 17020 | 340380 | 1502577.809732 | 1527541.925664 |
| 17021 | 340400 | 1502684.661946 | 1527649.427329 |
| 17022 | 340420 | 1502791.514824 | 1527756.929640 |
| 17023 | 340440 | 1502898.368365 | 1527864.432596 |
| 17024 | 340460 | 1503005.222568 | 1527971.936198 |
| 17025 | 340480 | 1503112.077435 | 1528079.440445 |
| 17026 | 340500 | 1503218.932965 | 1528186.945337 |
| 17027 | 340520 | 1503325.789157 | 1528294.450874 |
| 17028 | 340540 | 1503432.646012 | 1528401.957057 |
| 17029 | 340560 | 1503539.503530 | 1528509.463885 |
| 17030 | 340580 | 1503646.361711 | 1528616.971358 |
| 17031 | 340600 | 1503753.220555 | 1528724.479476 |
| 17032 | 340620 | 1503860.080061 | 1528831.988240 |
| 17033 | 340640 | 1503966.940230 | 1528939.497648 |
| 17034 | 340660 | 1504073.801061 | 1529047.007701 |
| 17035 | 340680 | 1504180.662555 | 1529154.518399 |
| 17036 | 340700 | 1504287.524711 | 1529262.029743 |
| 17037 | 340720 | 1504394.387530 | 1529369.541731 |
| 17038 | 340740 | 1504501.251011 | 1529477.054364 |
| 17039 | 340760 | 1504608.115155 | 1529584.567641 |
| 17040 | 340780 | 1504714.979961 | 1529692.081564 |
| 17041 | 340800 | 1504821.845429 | 1529799.596131 |
| 17042 | 340820 | 1504928.711560 | 1529907.111343 |
| 17043 | 340840 | 1505035.578352 | 1530014.627199 |
| 17044 | 340860 | 1505142.445807 | 1530122.143700 |
| 17045 | 340880 | 1505249.313924 | 1530229.660846 |
| 17046 | 340900 | 1505356.182703 | 1530337.178636 |
| 17047 | 340920 | 1505463.052144 | 1530444.697070 |
| 17048 | 340940 | 1505569.922247 | 1530552.216149 |
| 17049 | 340960 | 1505676.793012 | 1530659.735873 |
| 17050 | 340980 | 1505783.664439 | 1530767.256241 |
| 17051 | 341000 | 1505890.536527 | 1530874.777253 |
| 17052 | 341020 | 1505997.409278 | 1530982.298909 |
| 17053 | 341040 | 1506104.282690 | 1531089.821209 |
| 17054 | 341060 | 1506211.156764 | 1531197.344154 |
| 17055 | 341080 | 1506318.031500 | 1531304.867743 |
| 17056 | 341100 | 1506424.906897 | 1531412.391976 |
| 17057 | 341120 | 1506531.782956 | 1531519.916853 |
| 17058 | 341140 | 1506638.659677 | 1531627.442374 |
| 17059 | 341160 | 1506745.537059 | 1531734.968539 |
| 17060 | 341180 | 1506852.415103 | 1531842.495348 |
| 17061 | 341200 | 1506959.293808 | 1531950.022801 |
| 17062 | 341220 | 1507066.173174 | 1532057.550898 |
| 17063 | 341240 | 1507173.053202 | 1532165.079638 |
| 17064 | 341260 | 1507279.933891 | 1532272.609023 |
| 17065 | 341280 | 1507386.815241 | 1532380.139051 |
| 17066 | 341300 | 1507493.697253 | 1532487.669723 |
| 17067 | 341320 | 1507600.579926 | 1532595.201038 |
| 17068 | 341340 | 1507707.463260 | 1532702.732997 |
| 17069 | 341360 | 1507814.347255 | 1532810.265600 |
| 17070 | 341380 | 1507921.231911 | 1532917.798846 |
| 17071 | 341400 | 1508028.117228 | 1533025.332736 |
| 17072 | 341420 | 1508135.003206 | 1533132.867269 |
| 17073 | 341440 | 1508241.889845 | 1533240.402446 |
| 17074 | 341460 | 1508348.777145 | 1533347.938266 |
| 17075 | 341480 | 1508455.665106 | 1533455.474729 |
| 17076 | 341500 | 1508562.553728 | 1533563.011836 |
| 17077 | 341520 | 1508669.443010 | 1533670.549586 |
| 17078 | 341540 | 1508776.332954 | 1533778.087979 |
| 17079 | 341560 | 1508883.223557 | 1533885.627015 |
| 17080 | 341580 | 1508990.114822 | 1533993.166695 |
| 17081 | 341600 | 1509097.006747 | 1534100.707017 |
| 17082 | 341620 | 1509203.899333 | 1534208.247983 |
| 17083 | 341640 | 1509310.792579 | 1534315.789591 |
| 17084 | 341660 | 1509417.686486 | 1534423.331843 |
| 17085 | 341680 | 1509524.581053 | 1534530.874738 |
| 17086 | 341700 | 1509631.476280 | 1534638.418275 |
| 17087 | 341720 | 1509738.372168 | 1534745.962455 |
| 17088 | 341740 | 1509845.268716 | 1534853.507278 |
| 17089 | 341760 | 1509952.165925 | 1534961.052744 |
| 17090 | 341780 | 1510059.063794 | 1535068.598853 |
| 17091 | 341800 | 1510165.962323 | 1535176.145604 |
| 17092 | 341820 | 1510272.861512 | 1535283.692998 |
| 17093 | 341840 | 1510379.761361 | 1535391.241035 |
| 17094 | 341860 | 1510486.661870 | 1535498.789714 |
| 17095 | 341880 | 1510593.563039 | 1535606.339036 |
| 17096 | 341900 | 1510700.464869 | 1535713.889000 |
| 17097 | 341920 | 1510807.367358 | 1535821.439607 |
| 17098 | 341940 | 1510914.270507 | 1535928.990856 |
| 17099 | 341960 | 1511021.174316 | 1536036.542747 |
| 17100 | 341980 | 1511128.078785 | 1536144.095281 |
| 17101 | 342000 | 1511234.983913 | 1536251.648457 |
| 17102 | 342020 | 1511341.889701 | 1536359.202276 |
| 17103 | 342040 | 1511448.796149 | 1536466.756736 |
| 17104 | 342060 | 1511555.703257 | 1536574.311839 |
| 17105 | 342080 | 1511662.611024 | 1536681.867584 |
| 17106 | 342100 | 1511769.519451 | 1536789.423971 |
| 17107 | 342120 | 1511876.428537 | 1536896.981000 |
| 17108 | 342140 | 1511983.338283 | 1537004.538671 |
| 17109 | 342160 | 1512090.248688 | 1537112.096984 |
| 17110 | 342180 | 1512197.159753 | 1537219.655939 |
| 17111 | 342200 | 1512304.071477 | 1537327.215536 |
| 17112 | 342220 | 1512410.983860 | 1537434.775774 |
| 17113 | 342240 | 1512517.896903 | 1537542.336655 |
| 17114 | 342260 | 1512624.810605 | 1537649.898177 |
| 17115 | 342280 | 1512731.724966 | 1537757.460341 |
| 17116 | 342300 | 1512838.639986 | 1537865.023147 |
| 17117 | 342320 | 1512945.555665 | 1537972.586594 |
| 17118 | 342340 | 1513052.472004 | 1538080.150683 |
| 17119 | 342360 | 1513159.389001 | 1538187.715414 |
| 17120 | 342380 | 1513266.306657 | 1538295.280786 |
| 17121 | 342400 | 1513373.224973 | 1538402.846800 |
| 17122 | 342420 | 1513480.143947 | 1538510.413455 |
| 17123 | 342440 | 1513587.063580 | 1538617.980751 |
| 17124 | 342460 | 1513693.983872 | 1538725.548689 |
| 17125 | 342480 | 1513800.904823 | 1538833.117268 |
| 17126 | 342500 | 1513907.826432 | 1538940.686489 |
| 17127 | 342520 | 1514014.748700 | 1539048.256351 |
| 17128 | 342540 | 1514121.671627 | 1539155.826854 |
| 17129 | 342560 | 1514228.595212 | 1539263.397998 |
| 17130 | 342580 | 1514335.519456 | 1539370.969783 |
| 17131 | 342600 | 1514442.444359 | 1539478.542209 |
| 17132 | 342620 | 1514549.369919 | 1539586.115277 |
| 17133 | 342640 | 1514656.296139 | 1539693.688985 |
| 17134 | 342660 | 1514763.223017 | 1539801.263335 |
| 17135 | 342680 | 1514870.150553 | 1539908.838325 |
| 17136 | 342700 | 1514977.078747 | 1540016.413956 |
| 17137 | 342720 | 1515084.007600 | 1540123.990228 |
| 17138 | 342740 | 1515190.937111 | 1540231.567141 |
| 17139 | 342760 | 1515297.867280 | 1540339.144695 |
| 17140 | 342780 | 1515404.798108 | 1540446.722889 |
| 17141 | 342800 | 1515511.729593 | 1540554.301724 |
| 17142 | 342820 | 1515618.661737 | 1540661.881200 |
| 17143 | 342840 | 1515725.594538 | 1540769.461317 |
| 17144 | 342860 | 1515832.527998 | 1540877.042074 |
| 17145 | 342880 | 1515939.462115 | 1540984.623471 |
| 17146 | 342900 | 1516046.396891 | 1541092.205509 |
| 17147 | 342920 | 1516153.332324 | 1541199.788188 |
| 17148 | 342940 | 1516260.268415 | 1541307.371506 |
| 17149 | 342960 | 1516367.205164 | 1541414.955466 |
| 17150 | 342980 | 1516474.142571 | 1541522.540065 |
| 17151 | 343000 | 1516581.080635 | 1541630.125305 |
| 17152 | 343020 | 1516688.019357 | 1541737.711185 |
| 17153 | 343040 | 1516794.958737 | 1541845.297706 |
| 17154 | 343060 | 1516901.898774 | 1541952.884866 |
| 17155 | 343080 | 1517008.839468 | 1542060.472667 |
| 17156 | 343100 | 1517115.780821 | 1542168.061108 |
| 17157 | 343120 | 1517222.722830 | 1542275.650189 |
| 17158 | 343140 | 1517329.665497 | 1542383.239909 |
| 17159 | 343160 | 1517436.608822 | 1542490.830270 |
| 17160 | 343180 | 1517543.552804 | 1542598.421271 |
| 17161 | 343200 | 1517650.497443 | 1542706.012912 |
| 17162 | 343220 | 1517757.442739 | 1542813.605192 |
| 17163 | 343240 | 1517864.388693 | 1542921.198113 |
| 17164 | 343260 | 1517971.335303 | 1543028.791673 |
| 17165 | 343280 | 1518078.282571 | 1543136.385873 |
| 17166 | 343300 | 1518185.230496 | 1543243.980712 |
| 17167 | 343320 | 1518292.179078 | 1543351.576191 |
| 17168 | 343340 | 1518399.128317 | 1543459.172310 |
| 17169 | 343360 | 1518506.078213 | 1543566.769069 |
| 17170 | 343380 | 1518613.028765 | 1543674.366467 |
| 17171 | 343400 | 1518719.979975 | 1543781.964504 |
| 17172 | 343420 | 1518826.931842 | 1543889.563181 |
| 17173 | 343440 | 1518933.884365 | 1543997.162497 |
| 17174 | 343460 | 1519040.837545 | 1544104.762453 |
| 17175 | 343480 | 1519147.791382 | 1544212.363048 |
| 17176 | 343500 | 1519254.745875 | 1544319.964283 |
| 17177 | 343520 | 1519361.701025 | 1544427.566156 |
| 17178 | 343540 | 1519468.656832 | 1544535.168669 |
| 17179 | 343560 | 1519575.613295 | 1544642.771821 |
| 17180 | 343580 | 1519682.570415 | 1544750.375612 |
| 17181 | 343600 | 1519789.528191 | 1544857.980043 |
| 17182 | 343620 | 1519896.486623 | 1544965.585112 |
| 17183 | 343640 | 1520003.445712 | 1545073.190821 |
| 17184 | 343660 | 1520110.405457 | 1545180.797168 |
| 17185 | 343680 | 1520217.365859 | 1545288.404154 |
| 17186 | 343700 | 1520324.326917 | 1545396.011779 |
| 17187 | 343720 | 1520431.288631 | 1545503.620044 |
| 17188 | 343740 | 1520538.251001 | 1545611.228946 |
| 17189 | 343760 | 1520645.214027 | 1545718.838488 |
| 17190 | 343780 | 1520752.177710 | 1545826.448669 |
| 17191 | 343800 | 1520859.142048 | 1545934.059488 |
| 17192 | 343820 | 1520966.107043 | 1546041.670946 |
| 17193 | 343840 | 1521073.072693 | 1546149.283042 |
| 17194 | 343860 | 1521180.039000 | 1546256.895777 |
| 17195 | 343880 | 1521287.005962 | 1546364.509151 |
| 17196 | 343900 | 1521393.973580 | 1546472.123163 |
| 17197 | 343920 | 1521500.941854 | 1546579.737813 |
| 17198 | 343940 | 1521607.910784 | 1546687.353102 |
| 17199 | 343960 | 1521714.880369 | 1546794.969030 |
| 17200 | 343980 | 1521821.850610 | 1546902.585595 |
| 17201 | 344000 | 1521928.821507 | 1547010.202799 |
| 17202 | 344020 | 1522035.793059 | 1547117.820642 |
| 17203 | 344040 | 1522142.765267 | 1547225.439122 |
| 17204 | 344060 | 1522249.738131 | 1547333.058241 |
| 17205 | 344080 | 1522356.711649 | 1547440.677998 |
| 17206 | 344100 | 1522463.685824 | 1547548.298393 |
| 17207 | 344120 | 1522570.660653 | 1547655.919426 |
| 17208 | 344140 | 1522677.636138 | 1547763.541097 |
| 17209 | 344160 | 1522784.612279 | 1547871.163406 |
| 17210 | 344180 | 1522891.589074 | 1547978.786353 |
| 17211 | 344200 | 1522998.566525 | 1548086.409938 |
| 17212 | 344220 | 1523105.544631 | 1548194.034161 |
| 17213 | 344240 | 1523212.523393 | 1548301.659022 |
| 17214 | 344260 | 1523319.502809 | 1548409.284520 |
| 17215 | 344280 | 1523426.482880 | 1548516.910656 |
| 17216 | 344300 | 1523533.463607 | 1548624.537430 |
| 17217 | 344320 | 1523640.444988 | 1548732.164842 |
| 17218 | 344340 | 1523747.427024 | 1548839.792891 |
| 17219 | 344360 | 1523854.409715 | 1548947.421578 |
| 17220 | 344380 | 1523961.393061 | 1549055.050902 |
| 17221 | 344400 | 1524068.377062 | 1549162.680864 |
| 17222 | 344420 | 1524175.361718 | 1549270.311464 |
| 17223 | 344440 | 1524282.347028 | 1549377.942701 |
| 17224 | 344460 | 1524389.332993 | 1549485.574575 |
| 17225 | 344480 | 1524496.319613 | 1549593.207087 |
| 17226 | 344500 | 1524603.306888 | 1549700.840235 |
| 17227 | 344520 | 1524710.294816 | 1549808.474022 |
| 17228 | 344540 | 1524817.283400 | 1549916.108445 |
| 17229 | 344560 | 1524924.272638 | 1550023.743506 |
| 17230 | 344580 | 1525031.262530 | 1550131.379204 |
| 17231 | 344600 | 1525138.253077 | 1550239.015539 |
| 17232 | 344620 | 1525245.244278 | 1550346.652511 |
| 17233 | 344640 | 1525352.236134 | 1550454.290120 |
| 17234 | 344660 | 1525459.228643 | 1550561.928366 |
| 17235 | 344680 | 1525566.221808 | 1550669.567249 |
| 17236 | 344700 | 1525673.215626 | 1550777.206769 |
| 17237 | 344720 | 1525780.210098 | 1550884.846926 |
| 17238 | 344740 | 1525887.205225 | 1550992.487719 |
| 17239 | 344760 | 1525994.201005 | 1551100.129150 |
| 17240 | 344780 | 1526101.197440 | 1551207.771217 |
| 17241 | 344800 | 1526208.194528 | 1551315.413921 |
| 17242 | 344820 | 1526315.192271 | 1551423.057262 |
| 17243 | 344840 | 1526422.190668 | 1551530.701239 |
| 17244 | 344860 | 1526529.189718 | 1551638.345853 |
| 17245 | 344880 | 1526636.189422 | 1551745.991104 |
| 17246 | 344900 | 1526743.189780 | 1551853.636991 |
| 17247 | 344920 | 1526850.190792 | 1551961.283514 |
| 17248 | 344940 | 1526957.192457 | 1552068.930674 |
| 17249 | 344960 | 1527064.194777 | 1552176.578471 |
| 17250 | 344980 | 1527171.197749 | 1552284.226904 |
| 17251 | 345000 | 1527278.201376 | 1552391.875973 |
| 17252 | 345020 | 1527385.205656 | 1552499.525678 |
| 17253 | 345040 | 1527492.210589 | 1552607.176020 |
| 17254 | 345060 | 1527599.216176 | 1552714.826998 |
| 17255 | 345080 | 1527706.222416 | 1552822.478612 |
| 17256 | 345100 | 1527813.229310 | 1552930.130862 |
| 17257 | 345120 | 1527920.236857 | 1553037.783749 |
| 17258 | 345140 | 1528027.245057 | 1553145.437271 |
| 17259 | 345160 | 1528134.253911 | 1553253.091429 |
| 17260 | 345180 | 1528241.263418 | 1553360.746224 |
| 17261 | 345200 | 1528348.273578 | 1553468.401654 |
| 17262 | 345220 | 1528455.284391 | 1553576.057720 |
| 17263 | 345240 | 1528562.295857 | 1553683.714423 |
| 17264 | 345260 | 1528669.307976 | 1553791.371760 |
| 17265 | 345280 | 1528776.320749 | 1553899.029734 |
| 17266 | 345300 | 1528883.334174 | 1554006.688344 |
| 17267 | 345320 | 1528990.348252 | 1554114.347589 |
| 17268 | 345340 | 1529097.362983 | 1554222.007470 |
| 17269 | 345360 | 1529204.378367 | 1554329.667986 |
| 17270 | 345380 | 1529311.394404 | 1554437.329138 |
| 17271 | 345400 | 1529418.411094 | 1554544.990926 |
| 17272 | 345420 | 1529525.428436 | 1554652.653349 |
| 17273 | 345440 | 1529632.446431 | 1554760.316407 |
| 17274 | 345460 | 1529739.465079 | 1554867.980101 |
| 17275 | 345480 | 1529846.484379 | 1554975.644431 |
| 17276 | 345500 | 1529953.504332 | 1555083.309396 |
| 17277 | 345520 | 1530060.524937 | 1555190.974996 |
| 17278 | 345540 | 1530167.546195 | 1555298.641231 |
| 17279 | 345560 | 1530274.568106 | 1555406.308102 |
| 17280 | 345580 | 1530381.590668 | 1555513.975607 |
| 17281 | 345600 | 1530488.613883 | 1555621.643748 |
| 17282 | 345620 | 1530595.637751 | 1555729.312524 |
| 17283 | 345640 | 1530702.662270 | 1555836.981936 |
| 17284 | 345660 | 1530809.687442 | 1555944.651982 |
| 17285 | 345680 | 1530916.713266 | 1556052.322663 |
| 17286 | 345700 | 1531023.739743 | 1556159.993979 |
| 17287 | 345720 | 1531130.766871 | 1556267.665930 |
| 17288 | 345740 | 1531237.794652 | 1556375.338516 |
| 17289 | 345760 | 1531344.823084 | 1556483.011737 |
| 17290 | 345780 | 1531451.852169 | 1556590.685592 |
| 17291 | 345800 | 1531558.881905 | 1556698.360083 |
| 17292 | 345820 | 1531665.912294 | 1556806.035208 |
| 17293 | 345840 | 1531772.943334 | 1556913.710967 |
| 17294 | 345860 | 1531879.975026 | 1557021.387362 |
| 17295 | 345880 | 1531987.007370 | 1557129.064391 |
| 17296 | 345900 | 1532094.040366 | 1557236.742054 |
| 17297 | 345920 | 1532201.074013 | 1557344.420353 |
| 17298 | 345940 | 1532308.108312 | 1557452.099285 |
| 17299 | 345960 | 1532415.143263 | 1557559.778852 |
| 17300 | 345980 | 1532522.178865 | 1557667.459054 |
| 17301 | 346000 | 1532629.215119 | 1557775.139890 |
| 17302 | 346020 | 1532736.252025 | 1557882.821360 |
| 17303 | 346040 | 1532843.289582 | 1557990.503464 |
| 17304 | 346060 | 1532950.327790 | 1558098.186203 |
| 17305 | 346080 | 1533057.366650 | 1558205.869576 |
| 17306 | 346100 | 1533164.406161 | 1558313.553583 |
| 17307 | 346120 | 1533271.446323 | 1558421.238224 |
| 17308 | 346140 | 1533378.487136 | 1558528.923499 |
| 17309 | 346160 | 1533485.528601 | 1558636.609409 |
| 17310 | 346180 | 1533592.570717 | 1558744.295952 |
| 17311 | 346200 | 1533699.613485 | 1558851.983130 |
| 17312 | 346220 | 1533806.656903 | 1558959.670941 |
| 17313 | 346240 | 1533913.700972 | 1559067.359386 |
| 17314 | 346260 | 1534020.745693 | 1559175.048465 |
| 17315 | 346280 | 1534127.791064 | 1559282.738178 |
| 17316 | 346300 | 1534234.837086 | 1559390.428525 |
| 17317 | 346320 | 1534341.883759 | 1559498.119506 |
| 17318 | 346340 | 1534448.931083 | 1559605.811120 |
| 17319 | 346360 | 1534555.979058 | 1559713.503368 |
| 17320 | 346380 | 1534663.027684 | 1559821.196249 |
| 17321 | 346400 | 1534770.076960 | 1559928.889764 |
| 17322 | 346420 | 1534877.126888 | 1560036.583913 |
| 17323 | 346440 | 1534984.177465 | 1560144.278695 |
| 17324 | 346460 | 1535091.228694 | 1560251.974111 |
| 17325 | 346480 | 1535198.280573 | 1560359.670160 |
| 17326 | 346500 | 1535305.333102 | 1560467.366842 |
| 17327 | 346520 | 1535412.386282 | 1560575.064158 |
| 17328 | 346540 | 1535519.440113 | 1560682.762107 |
| 17329 | 346560 | 1535626.494594 | 1560790.460689 |
| 17330 | 346580 | 1535733.549725 | 1560898.159905 |
| 17331 | 346600 | 1535840.605507 | 1561005.859754 |
| 17332 | 346620 | 1535947.661939 | 1561113.560236 |
| 17333 | 346640 | 1536054.719021 | 1561221.261351 |
| 17334 | 346660 | 1536161.776753 | 1561328.963099 |
| 17335 | 346680 | 1536268.835136 | 1561436.665481 |
| 17336 | 346700 | 1536375.894168 | 1561544.368495 |
| 17337 | 346720 | 1536482.953851 | 1561652.072142 |
| 17338 | 346740 | 1536590.014184 | 1561759.776422 |
| 17339 | 346760 | 1536697.075167 | 1561867.481335 |
| 17340 | 346780 | 1536804.136800 | 1561975.186881 |
| 17341 | 346800 | 1536911.199083 | 1562082.893060 |
| 17342 | 346820 | 1537018.262015 | 1562190.599871 |
| 17343 | 346840 | 1537125.325598 | 1562298.307316 |
| 17344 | 346860 | 1537232.389830 | 1562406.015393 |
| 17345 | 346880 | 1537339.454712 | 1562513.724102 |
| 17346 | 346900 | 1537446.520244 | 1562621.433444 |
| 17347 | 346920 | 1537553.586425 | 1562729.143419 |
| 17348 | 346940 | 1537660.653257 | 1562836.854026 |
| 17349 | 346960 | 1537767.720737 | 1562944.565266 |
| 17350 | 346980 | 1537874.788868 | 1563052.277138 |
| 17351 | 347000 | 1537981.857648 | 1563159.989643 |
| 17352 | 347020 | 1538088.927077 | 1563267.702780 |
| 17353 | 347040 | 1538195.997156 | 1563375.416550 |
| 17354 | 347060 | 1538303.067884 | 1563483.130951 |
| 17355 | 347080 | 1538410.139262 | 1563590.845985 |
| 17356 | 347100 | 1538517.211289 | 1563698.561652 |
| 17357 | 347120 | 1538624.283965 | 1563806.277950 |
| 17358 | 347140 | 1538731.357290 | 1563913.994881 |
| 17359 | 347160 | 1538838.431265 | 1564021.712443 |
| 17360 | 347180 | 1538945.505889 | 1564129.430638 |
| 17361 | 347200 | 1539052.581162 | 1564237.149465 |
| 17362 | 347220 | 1539159.657084 | 1564344.868923 |
| 17363 | 347240 | 1539266.733655 | 1564452.589014 |
| 17364 | 347260 | 1539373.810875 | 1564560.309737 |
| 17365 | 347280 | 1539480.888744 | 1564668.031091 |
| 17366 | 347300 | 1539587.967262 | 1564775.753078 |
| 17367 | 347320 | 1539695.046429 | 1564883.475696 |
| 17368 | 347340 | 1539802.126245 | 1564991.198946 |
| 17369 | 347360 | 1539909.206709 | 1565098.922827 |
| 17370 | 347380 | 1540016.287822 | 1565206.647341 |
| 17371 | 347400 | 1540123.369585 | 1565314.372486 |
| 17372 | 347420 | 1540230.451995 | 1565422.098262 |
| 17373 | 347440 | 1540337.535055 | 1565529.824670 |
| 17374 | 347460 | 1540444.618762 | 1565637.551710 |
| 17375 | 347480 | 1540551.703119 | 1565745.279381 |
| 17376 | 347500 | 1540658.788124 | 1565853.007684 |
| 17377 | 347520 | 1540765.873778 | 1565960.736618 |
| 17378 | 347540 | 1540872.960079 | 1566068.466183 |
| 17379 | 347560 | 1540980.047030 | 1566176.196380 |
| 17380 | 347580 | 1541087.134629 | 1566283.927208 |
| 17381 | 347600 | 1541194.222876 | 1566391.658667 |
| 17382 | 347620 | 1541301.311771 | 1566499.390758 |
| 17383 | 347640 | 1541408.401314 | 1566607.123480 |
| 17384 | 347660 | 1541515.491506 | 1566714.856832 |
| 17385 | 347680 | 1541622.582346 | 1566822.590816 |
| 17386 | 347700 | 1541729.673834 | 1566930.325431 |
| 17387 | 347720 | 1541836.765970 | 1567038.060677 |
| 17388 | 347740 | 1541943.858754 | 1567145.796554 |
| 17389 | 347760 | 1542050.952187 | 1567253.533062 |
| 17390 | 347780 | 1542158.046267 | 1567361.270201 |
| 17391 | 347800 | 1542265.140995 | 1567469.007971 |
| 17392 | 347820 | 1542372.236371 | 1567576.746372 |
| 17393 | 347840 | 1542479.332394 | 1567684.485403 |
| 17394 | 347860 | 1542586.429066 | 1567792.225065 |
| 17395 | 347880 | 1542693.526385 | 1567899.965358 |
| 17396 | 347900 | 1542800.624352 | 1568007.706281 |
| 17397 | 347920 | 1542907.722967 | 1568115.447836 |
| 17398 | 347940 | 1543014.822229 | 1568223.190020 |
| 17399 | 347960 | 1543121.922139 | 1568330.932836 |
| 17400 | 347980 | 1543229.022697 | 1568438.676281 |
| 17401 | 348000 | 1543336.123902 | 1568546.420358 |
| 17402 | 348020 | 1543443.225754 | 1568654.165065 |
| 17403 | 348040 | 1543550.328254 | 1568761.910402 |
| 17404 | 348060 | 1543657.431402 | 1568869.656369 |
| 17405 | 348080 | 1543764.535196 | 1568977.402967 |
| 17406 | 348100 | 1543871.639638 | 1569085.150195 |
| 17407 | 348120 | 1543978.744728 | 1569192.898054 |
| 17408 | 348140 | 1544085.850464 | 1569300.646542 |
| 17409 | 348160 | 1544192.956848 | 1569408.395661 |
| 17410 | 348180 | 1544300.063879 | 1569516.145410 |
| 17411 | 348200 | 1544407.171557 | 1569623.895789 |
| 17412 | 348220 | 1544514.279882 | 1569731.646798 |
| 17413 | 348240 | 1544621.388854 | 1569839.398437 |
| 17414 | 348260 | 1544728.498473 | 1569947.150706 |
| 17415 | 348280 | 1544835.608739 | 1570054.903605 |
| 17416 | 348300 | 1544942.719652 | 1570162.657134 |
| 17417 | 348320 | 1545049.831212 | 1570270.411293 |
| 17418 | 348340 | 1545156.943419 | 1570378.166082 |
| 17419 | 348360 | 1545264.056272 | 1570485.921500 |
| 17420 | 348380 | 1545371.169772 | 1570593.677548 |
| 17421 | 348400 | 1545478.283919 | 1570701.434226 |
| 17422 | 348420 | 1545585.398713 | 1570809.191534 |
| 17423 | 348440 | 1545692.514153 | 1570916.949471 |
| 17424 | 348460 | 1545799.630240 | 1571024.708038 |
| 17425 | 348480 | 1545906.746974 | 1571132.467234 |
| 17426 | 348500 | 1546013.864354 | 1571240.227060 |
| 17427 | 348520 | 1546120.982380 | 1571347.987515 |
| 17428 | 348540 | 1546228.101053 | 1571455.748600 |
| 17429 | 348560 | 1546335.220372 | 1571563.510314 |
| 17430 | 348580 | 1546442.340338 | 1571671.272658 |
| 17431 | 348600 | 1546549.460950 | 1571779.035630 |
| 17432 | 348620 | 1546656.582208 | 1571886.799233 |
| 17433 | 348640 | 1546763.704112 | 1571994.563464 |
| 17434 | 348660 | 1546870.826663 | 1572102.328325 |
| 17435 | 348680 | 1546977.949860 | 1572210.093814 |
| 17436 | 348700 | 1547085.073703 | 1572317.859933 |
| 17437 | 348720 | 1547192.198192 | 1572425.626681 |
| 17438 | 348740 | 1547299.323327 | 1572533.394058 |
| 17439 | 348760 | 1547406.449108 | 1572641.162064 |
| 17440 | 348780 | 1547513.575535 | 1572748.930699 |
| 17441 | 348800 | 1547620.702608 | 1572856.699963 |
| 17442 | 348820 | 1547727.830327 | 1572964.469856 |
| 17443 | 348840 | 1547834.958691 | 1573072.240378 |
| 17444 | 348860 | 1547942.087702 | 1573180.011529 |
| 17445 | 348880 | 1548049.217358 | 1573287.783308 |
| 17446 | 348900 | 1548156.347660 | 1573395.555716 |
| 17447 | 348920 | 1548263.478607 | 1573503.328753 |
| 17448 | 348940 | 1548370.610201 | 1573611.102419 |
| 17449 | 348960 | 1548477.742439 | 1573718.876713 |
| 17450 | 348980 | 1548584.875324 | 1573826.651635 |
| 17451 | 349000 | 1548692.008854 | 1573934.427187 |
| 17452 | 349020 | 1548799.143029 | 1574042.203367 |
| 17453 | 349040 | 1548906.277850 | 1574149.980175 |
| 17454 | 349060 | 1549013.413316 | 1574257.757612 |
| 17455 | 349080 | 1549120.549428 | 1574365.535677 |
| 17456 | 349100 | 1549227.686185 | 1574473.314370 |
| 17457 | 349120 | 1549334.823587 | 1574581.093692 |
| 17458 | 349140 | 1549441.961634 | 1574688.873642 |
| 17459 | 349160 | 1549549.100327 | 1574796.654221 |
| 17460 | 349180 | 1549656.239665 | 1574904.435427 |
| 17461 | 349200 | 1549763.379648 | 1575012.217262 |
| 17462 | 349220 | 1549870.520276 | 1575119.999725 |
| 17463 | 349240 | 1549977.661549 | 1575227.782816 |
| 17464 | 349260 | 1550084.803467 | 1575335.566535 |
| 17465 | 349280 | 1550191.946030 | 1575443.350882 |
| 17466 | 349300 | 1550299.089237 | 1575551.135857 |
| 17467 | 349320 | 1550406.233090 | 1575658.921460 |
| 17468 | 349340 | 1550513.377588 | 1575766.707691 |
| 17469 | 349360 | 1550620.522730 | 1575874.494549 |
| 17470 | 349380 | 1550727.668518 | 1575982.282036 |
| 17471 | 349400 | 1550834.814949 | 1576090.070150 |
| 17472 | 349420 | 1550941.962026 | 1576197.858892 |
| 17473 | 349440 | 1551049.109747 | 1576305.648262 |
| 17474 | 349460 | 1551156.258113 | 1576413.438260 |
| 17475 | 349480 | 1551263.407124 | 1576521.228885 |
| 17476 | 349500 | 1551370.556778 | 1576629.020138 |
| 17477 | 349520 | 1551477.707078 | 1576736.812018 |
| 17478 | 349540 | 1551584.858022 | 1576844.604526 |
| 17479 | 349560 | 1551692.009610 | 1576952.397661 |
| 17480 | 349580 | 1551799.161843 | 1577060.191424 |
| 17481 | 349600 | 1551906.314720 | 1577167.985814 |
| 17482 | 349620 | 1552013.468241 | 1577275.780831 |
| 17483 | 349640 | 1552120.622406 | 1577383.576476 |
| 17484 | 349660 | 1552227.777216 | 1577491.372748 |
| 17485 | 349680 | 1552334.932670 | 1577599.169648 |
| 17486 | 349700 | 1552442.088768 | 1577706.967174 |
| 17487 | 349720 | 1552549.245510 | 1577814.765328 |
| 17488 | 349740 | 1552656.402896 | 1577922.564109 |
| 17489 | 349760 | 1552763.560926 | 1578030.363517 |
| 17490 | 349780 | 1552870.719600 | 1578138.163552 |
| 17491 | 349800 | 1552977.878918 | 1578245.964214 |
| 17492 | 349820 | 1553085.038880 | 1578353.765503 |
| 17493 | 349840 | 1553192.199486 | 1578461.567419 |
| 17494 | 349860 | 1553299.360736 | 1578569.369962 |
| 17495 | 349880 | 1553406.522629 | 1578677.173132 |
| 17496 | 349900 | 1553513.685166 | 1578784.976929 |
| 17497 | 349920 | 1553620.848347 | 1578892.781352 |
| 17498 | 349940 | 1553728.012171 | 1579000.586402 |
| 17499 | 349960 | 1553835.176639 | 1579108.392079 |
| 17500 | 349980 | 1553942.341751 | 1579216.198383 |
| 17501 | 350000 | 1554049.507506 | 1579324.005313 |
E-023-assembly.json
— 1.2 KB, updated 08-19-2026
JSON sidecar (click to expand)
{
"experiment": "E-023",
"task": "3.8 support: D-037 assembly (short-segment max, S_inf lower bound validation, margin/N0/N1)",
"script": "research/numerics/scripts/E-023-finite-height-assembly.py",
"checks": {
"V1_sinf_lower_holds": true,
"V2_margin_positive_convex": true,
"V3_lambda_positive_3000": true
},
"key_values": {
"M0_grid_max": 1.3323650421270834,
"M0_lipschitz": 1.4075796709577815,
"M0_use": 1.335180201468999,
"C1": -1.1303307007539063,
"C1_lower_form": -1.4189385332046727,
"sinf_lower_min_slack": 9.520071987843544,
"N0_measured_constants": 30217,
"N0_traced_constants": 32871,
"margin_N0_traced": 0.0795673057436943,
"margin_at": {
"32871": 0.0795673057436943,
"100000": 287298.63095573196,
"1000000": 5256686.503113639,
"1000000000": 8938721534.500193,
"1000000000000": 12396419838890.791,
"1000000000000000000": 1.9304327085473796e+19,
"8999999999994000000000001": 2.457962538414764e+26
},
"N1": 8999999999994000000000001,
"N1_conservative_lagarias_window": 2.725978018024122e+21,
"T0_platt_trudgian": 3000000000000.0
},
"elapsed_seconds": 56.2
}
Source code
Python script (click to expand)
"""E-023 — task 3.8 support: D-037 assembly computation.
Three components:
S1. Short-segment max M0 = max |zeta'/zeta(-5/2+it)| for |t| <= 10.
CLOSES THE D-036 GAP: the |R(s)| <= A log(t+2)+B0 bound was
E-021-verified only for |t| >= 10; segment (III) passes within
0.5 of the trivial pole at w = -2 (digamma pole), so the uniform
bound fails near t = 0. Method: mpmath dps 30 grid (step 0.002)
via the E-021 xi-route + sampled-Lipschitz correction x2 safety.
(Only feeds an additive O(1) constant; slack is enormous.)
S2. Validate the explicit S_inf lower bound used in D-037:
S_inf(n) >= (1/2) n log n + (C1 - gamma/2) n - 4 (n >= 20)
against E-021's EXACT S_inf (n <= 5000, validated 4.8e-25).
S3. Assemble the full |S_f(n)| bound B(n) (D-036 constants, A = 0.9,
B0 = 1.0, M0 from S1) and the margin
margin(n) = Sinf_lower(n) - B(n) + 1;
find N0 (margin > 0 and increasing); print margin at reference
points and at N1 = (T0-1)^2, T0 = 3e12 (Platt-Trudgian 2021);
conservative fallback N1* = T0^2/(4 log^2 T0) (Lagarias (1.16)).
Checks:
V1. S_inf lower bound holds for all 20 <= n <= 5000 (exact values).
V2. margin(n) > 0 for all n in [N0, 1e7] (grid, step 1) and margin
convex (2nd differences > 0) on a log grid to N1 — with
convexity + margin(N0) > 0 + margin'(N0) > 0 this gives
margin(n) > 0 for ALL n in [N0, N1] (analytic in D-037).
V3. lambda_n > 0 reconfirmed for n <= 3000 from E-021 exact CSV.
Outputs: research/numerics/data/E-023-assembly.csv (+ .json)
"""
import json
import sys
import time
from pathlib import Path
import mpmath as mp
import numpy as np
REPO = Path(__file__).resolve().parents[3]
DATA = REPO / "research" / "numerics" / "data"
E021 = DATA / "E-021-sinf-sf-curve.csv"
CSV = DATA / "E-023-assembly.csv"
JSON = DATA / "E-023-assembly.json"
GAMMA = 0.577215664901532860606512090082402431
C1 = (GAMMA - 1 - np.log(2 * np.pi)) / 2 # -1.1303...
C1L = C1 - GAMMA / 2 # -1.4189... (lower-bound form)
A_USE, B0_USE = 0.9, 1.0
T0_PLATT = 3.0e12
# ---------------------------------------------------------------- S1
def zeta_logder(s):
"""zeta'/zeta via xi'/xi minus explicit terms (E-021 route, dps 30)."""
sm = mp.mpc(s.real, s.imag)
def xi_mp(u):
return 0.5 * u * (u - 1) * mp.pi ** (-u / 2) * mp.gamma(u / 2) \
* mp.zeta(u)
xi_log = mp.diff(xi_mp, sm) / xi_mp(sm)
return complex(xi_log - 1 / sm - 1 / (sm - 1)
+ mp.mpf(0.5) * mp.log(mp.pi)
- mp.mpf(0.5) * mp.digamma(sm / 2))
def short_segment_max():
mp.mp.dps = 30
ts = np.arange(-10.0, 10.0 + 1e-12, 0.002)
vals = np.array([abs(zeta_logder(complex(-2.5, t))) for t in ts])
gmax = float(vals.max())
# sampled Lipschitz constant (max adjacent slope), x2 safety
lips = float(np.max(np.abs(np.diff(vals))) / 0.002)
m0 = gmax + 0.002 * lips # (h/2)*L would be 0.001*L; x2
return gmax, lips, m0
# ------------------------------------------------------- D-036 pieces
def F_count(T):
return (T / (2 * np.pi)) * np.log(T / (2 * np.pi)) - T / (2 * np.pi) \
+ 7 / 8
def S_bound(T):
return 0.137 * np.log(T) + 0.443 * np.log(np.log(T)) + 1.588
def C0(t):
return (F_count(t + 1) - F_count(t)) + S_bound(t + 1) + S_bound(t)
def H_bound(T, a, b0):
return 3 * C0(T) ** 2 + a * np.log(T + 2) + b0
def B_bound(n, m0, a=A_USE, b0=B0_USE):
"""Full |S_f(n)| upper bound (D-036, variant-B contour, T = sqrt(n)+1)."""
n = float(n)
T = np.sqrt(n) + 1.0
twoN = 2 * (F_count(T) + S_bound(T))
I3_long = 4 * T * ((2 / 3) * C0(T) + a * np.log(T + 2) + b0)
I3_short = 40.0 * m0 # |k|<=2, length 20, max m0
I24 = 2 * (np.e ** 4 + 1) * (7 * H_bound(T, a, b0) + 3.3)
# I1 in log space: log I1 = log(2 sqrt(n) (e^{sqrt(n)/2}+1) 0.5699)
# - (2 sqrt(n) - 2) log 2 -> hugely negative for sqrt(n) > 60
r = np.sqrt(n)
logI1 = np.log(2 * r * 0.5699) + r / 2 - (2 * r - 2) * np.log(2)
I1 = np.exp(logI1) if logI1 > -700 else 0.0
triv = 1.0
return twoN + I3_long + I3_short + I24 + I1 + triv
def sinf_lower(n):
n = np.asarray(n, dtype=np.float64)
return 0.5 * n * np.log(n) + C1L * n - 4.0
def margin(n, m0, a=A_USE, b0=B0_USE):
return sinf_lower(n) - B_bound(n, m0, a, b0) + 1.0
def find_N0(m0, a, b0):
ngrid = np.arange(20, 400001)
marg = np.array([margin(n, m0, a, b0) for n in ngrid])
pos = ngrid[(marg > 0) & (np.gradient(marg, ngrid) > 0)]
N0 = int(pos[0]) if len(pos) else -1
cont = bool(np.all(marg[ngrid >= N0] > 0)) if N0 > 0 else False
return N0, cont, float(marg[ngrid == N0][0]) if N0 > 0 else float("nan")
def main() -> int:
if JSON.exists() and "--force" not in sys.argv:
print(f"cached: {JSON} (use --force to recompute)")
return 0
t0 = time.time()
print("S1: short-segment max ...", flush=True)
gmax, lips, m0 = short_segment_max()
print(f" grid max = {gmax:.4f}, Lipschitz {lips:.1f}, "
f"M0 = {m0:.4f}", flush=True)
print("S2: S_inf lower-bound validation vs E-021 exact ...", flush=True)
import csv as csvmod
with open(E021) as f:
rows = list(csvmod.DictReader(f))
ns = np.array([int(r["n"]) for r in rows])
sinf = np.array([float(r["S_inf"]) for r in rows])
lam = np.array([float(r["lambda_n"]) for r in rows])
mask = ns >= 20
slack = sinf[mask] - sinf_lower(ns[mask])
v1 = bool(np.all(slack > 0))
print(f" V1: min slack = {slack.min():.4f} at n = "
f"{ns[mask][slack.argmin()]} (bound holds: {v1})", flush=True)
v3 = bool(np.all(lam[ns <= 3000] > 0))
print(f" V3: lambda_n > 0 for n <= 3000 reconfirmed: {v3}", flush=True)
print("S3: margin assembly ...", flush=True)
# Two constant sets: measured (0.9, 1.0) and traced (2.0, 2.0, the
# D-036 first-estimate analytic assembly).
N0_meas, cont_meas, margN0_meas = find_N0(m0, 0.9, 1.0)
N0_tr, cont_tr, margN0_tr = find_N0(m0, 2.0, 2.0)
N0, cont = N0_tr, cont_tr
print(f" N0 (measured 0.9/1.0) = {N0_meas} (contiguous {cont_meas})")
print(f" N0 (traced 2.0/2.0) = {N0_tr} (contiguous {cont_tr})")
logn = np.unique(np.logspace(np.log10(max(N0, 20)), np.log10(9e24),
4000).astype(np.float64))
bmarg = np.array([margin(n, m0, 2.0, 2.0) for n in logn])
conv = bool(np.all(np.diff(bmarg, 2) > -1e-6 * bmarg[:-2].max()))
N1 = int(3_000_000_000_000 - 1) ** 2
N1_cons = T0_PLATT ** 2 / (4 * np.log(T0_PLATT) ** 2)
refs = {int(n): float(margin(n, m0, 2.0, 2.0)) for n in
[N0, 100000, 10 ** 6, 10 ** 9, 10 ** 12, 10 ** 18, N1]}
print(f" N0 = {N0} (traced; contiguous to 4e5: {cont}, "
f"convex: {conv})")
print(f" margin(N0) = {refs[N0]:.1f}")
print(f" N1 = (T0-1)^2 = {N1:.6e}; N1* (Lagarias window) = "
f"{N1_cons:.6e}")
print(f" margin(N1) = {refs[N1]:.3e}")
v2 = bool(N0 > 0 and cont and conv and cont_meas)
with open(CSV, "w", newline="") as f:
w = csvmod.writer(f)
w.writerow(["n", "margin_traced", "margin_measured"])
for n in range(20, 400001, 20):
w.writerow([n, f"{margin(n, m0, 2.0, 2.0):.6f}",
f"{margin(n, m0, 0.9, 1.0):.6f}"])
meta = {
"experiment": "E-023",
"task": "3.8 support: D-037 assembly (short-segment max, S_inf "
"lower bound validation, margin/N0/N1)",
"script": "research/numerics/scripts/E-023-finite-height-assembly.py",
"checks": {"V1_sinf_lower_holds": v1,
"V2_margin_positive_convex": v2,
"V3_lambda_positive_3000": v3},
"key_values": {
"M0_grid_max": gmax, "M0_lipschitz": lips, "M0_use": m0,
"C1": C1, "C1_lower_form": C1L,
"sinf_lower_min_slack": float(slack.min()),
"N0_measured_constants": N0_meas,
"N0_traced_constants": N0_tr,
"margin_N0_traced": margN0_tr,
"margin_at": {str(k): float(v) for k, v in refs.items()},
"N1": N1, "N1_conservative_lagarias_window": N1_cons,
"T0_platt_trudgian": T0_PLATT,
},
"elapsed_seconds": round(time.time() - t0, 1),
}
JSON.write_text(json.dumps(meta, indent=2))
print(f" wrote {CSV.name}, {JSON.name}; "
f"elapsed {meta['elapsed_seconds']}s")
return 0 if (v1 and v2 and v3) else 1
if __name__ == "__main__":
sys.exit(main())