E-009-suzuki-screw-function.py
Experiments: E-009a · script updated 08-18-2026
E-009-suzuki-screw-function.csv
— 449.3 KB, updated 08-18-2026
| # | t | g_t | prime_sum_t |
|---|---|---|---|
| 5502 | 5.5000 | -5.161892212631e-02 | 4.404473632955e+01 |
| 5503 | 5.5010 | -5.147481145913e-02 | 4.407348743532e+01 |
| 5504 | 5.5020 | -5.134635124638e-02 | 4.410223854109e+01 |
| 5505 | 5.5030 | -5.123354931522e-02 | 4.413098964687e+01 |
| 5506 | 5.5040 | -5.113641349678e-02 | 4.415974075264e+01 |
| 5507 | 5.5050 | -5.105495162608e-02 | 4.418849185841e+01 |
| 5508 | 5.5060 | -5.098917154201e-02 | 4.421724296418e+01 |
| 5509 | 5.5070 | -5.093908108746e-02 | 4.424599406995e+01 |
| 5510 | 5.5080 | -5.090468810921e-02 | 4.427474517573e+01 |
| 5511 | 5.5090 | -5.088600045798e-02 | 4.430349628150e+01 |
| 5512 | 5.5100 | -5.088302598837e-02 | 4.433224738727e+01 |
| 5513 | 5.5110 | -5.089577255893e-02 | 4.436099849304e+01 |
| 5514 | 5.5120 | -5.092424803218e-02 | 4.438974959881e+01 |
| 5515 | 5.5130 | -5.096846027452e-02 | 4.441850070459e+01 |
| 5516 | 5.5140 | -5.102841715635e-02 | 4.444725181036e+01 |
| 5517 | 5.5150 | -5.110412655190e-02 | 4.447600291613e+01 |
| 5518 | 5.5160 | -5.119559633942e-02 | 4.450475402190e+01 |
| 5519 | 5.5170 | -5.130283440108e-02 | 4.453350512768e+01 |
| 5520 | 5.5180 | -5.142584862300e-02 | 4.456225623345e+01 |
| 5521 | 5.5190 | -5.156464689525e-02 | 4.459100733922e+01 |
| 5522 | 5.5200 | -5.171923711179e-02 | 4.461975844499e+01 |
| 5523 | 5.5210 | -5.188962717059e-02 | 4.464850955076e+01 |
| 5524 | 5.5220 | -5.207582497355e-02 | 4.467726065654e+01 |
| 5525 | 5.5230 | -5.227783842653e-02 | 4.470601176231e+01 |
| 5526 | 5.5240 | -5.249567543935e-02 | 4.473476286808e+01 |
| 5527 | 5.5250 | -5.272934392572e-02 | 4.476351397385e+01 |
| 5528 | 5.5260 | -5.278805694191e-02 | 4.479245587449e+01 |
| 5529 | 5.5270 | -5.270464863560e-02 | 4.482155574376e+01 |
| 5530 | 5.5280 | -5.263709556791e-02 | 4.485065561302e+01 |
| 5531 | 5.5290 | -5.258540566841e-02 | 4.487975548229e+01 |
| 5532 | 5.5300 | -5.254958687073e-02 | 4.490885535156e+01 |
| 5533 | 5.5310 | -5.252964711235e-02 | 4.493795522083e+01 |
| 5534 | 5.5320 | -5.252559433484e-02 | 4.496705509010e+01 |
| 5535 | 5.5330 | -5.253743648365e-02 | 4.499615495937e+01 |
| 5536 | 5.5340 | -5.256518150821e-02 | 4.502525482864e+01 |
| 5537 | 5.5350 | -5.260883736199e-02 | 4.505435469791e+01 |
| 5538 | 5.5360 | -5.266841200235e-02 | 4.508345456718e+01 |
| 5539 | 5.5370 | -5.274391339073e-02 | 4.511255443645e+01 |
| 5540 | 5.5380 | -5.283534949248e-02 | 4.514165430572e+01 |
| 5541 | 5.5390 | -5.294272827692e-02 | 4.517075417498e+01 |
| 5542 | 5.5400 | -5.306605771742e-02 | 4.519985404425e+01 |
| 5543 | 5.5410 | -5.320534579127e-02 | 4.522895391352e+01 |
| 5544 | 5.5420 | -5.336060047985e-02 | 4.525805378279e+01 |
| 5545 | 5.5430 | -5.353182976842e-02 | 4.528715365206e+01 |
| 5546 | 5.5440 | -5.371904164627e-02 | 4.531625352133e+01 |
| 5547 | 5.5450 | -5.392224410673e-02 | 4.534535339060e+01 |
| 5548 | 5.5460 | -5.410581064457e-02 | 4.537448889437e+01 |
| 5549 | 5.5470 | -5.429769656730e-02 | 4.540363208534e+01 |
| 5550 | 5.5480 | -5.450559707651e-02 | 4.543277527631e+01 |
| 5551 | 5.5490 | -5.472952018148e-02 | 4.546191846727e+01 |
| 5552 | 5.5500 | -5.464966820646e-02 | 4.549138146393e+01 |
| 5553 | 5.5510 | -5.455951869098e-02 | 4.552087079676e+01 |
| 5554 | 5.5520 | -5.448541582322e-02 | 4.555036012958e+01 |
| 5555 | 5.5530 | -5.442736762850e-02 | 4.557984946240e+01 |
| 5556 | 5.5540 | -5.438538213614e-02 | 4.560933879523e+01 |
| 5557 | 5.5550 | -5.435946737956e-02 | 4.563882812805e+01 |
| 5558 | 5.5560 | -5.434963139611e-02 | 4.566831746087e+01 |
| 5559 | 5.5570 | -5.435588222718e-02 | 4.569780679370e+01 |
| 5560 | 5.5580 | -5.437822791821e-02 | 4.572729612652e+01 |
| 5561 | 5.5590 | -5.441667651862e-02 | 4.575678545935e+01 |
| 5562 | 5.5600 | -5.447123608190e-02 | 4.578627479217e+01 |
| 5563 | 5.5610 | -5.454191466553e-02 | 4.581576412499e+01 |
| 5564 | 5.5620 | -5.462872033109e-02 | 4.584525345782e+01 |
| 5565 | 5.5630 | -5.473166114408e-02 | 4.587474279064e+01 |
| 5566 | 5.5640 | -5.485074517414e-02 | 4.590423212347e+01 |
| 5567 | 5.5650 | -5.498598049483e-02 | 4.593372145629e+01 |
| 5568 | 5.5660 | -5.513737518389e-02 | 4.596321078911e+01 |
| 5569 | 5.5670 | -5.530493732302e-02 | 4.599270012194e+01 |
| 5570 | 5.5680 | -5.548867499793e-02 | 4.602218945476e+01 |
| 5571 | 5.5690 | -5.568859629844e-02 | 4.605167878758e+01 |
| 5572 | 5.5700 | -5.590470931835e-02 | 4.608116812041e+01 |
| 5573 | 5.5710 | -5.613702215562e-02 | 4.611065745323e+01 |
| 5574 | 5.5720 | -5.638554291213e-02 | 4.614014678606e+01 |
| 5575 | 5.5730 | -5.635961044843e-02 | 4.616992678813e+01 |
| 5576 | 5.5740 | -5.629697762848e-02 | 4.619975971469e+01 |
| 5577 | 5.5750 | -5.625057705788e-02 | 4.622959264125e+01 |
| 5578 | 5.5760 | -5.622041685481e-02 | 4.625942556781e+01 |
| 5579 | 5.5770 | -5.620650514154e-02 | 4.628925849437e+01 |
| 5580 | 5.5780 | -5.620885004428e-02 | 4.631909142093e+01 |
| 5581 | 5.5790 | -5.622745969339e-02 | 4.634892434749e+01 |
| 5582 | 5.5800 | -5.626234222332e-02 | 4.637875727405e+01 |
| 5583 | 5.5810 | -5.631350577248e-02 | 4.640859020061e+01 |
| 5584 | 5.5820 | -5.638095848348e-02 | 4.643842312717e+01 |
| 5585 | 5.5830 | -5.646470850289e-02 | 4.646825605373e+01 |
| 5586 | 5.5840 | -5.656476398147e-02 | 4.649808898029e+01 |
| 5587 | 5.5850 | -5.668113307392e-02 | 4.652792190686e+01 |
| 5588 | 5.5860 | -5.681382393911e-02 | 4.655775483342e+01 |
| 5589 | 5.5870 | -5.696284474001e-02 | 4.658758775998e+01 |
| 5590 | 5.5880 | -5.712820364358e-02 | 4.661742068654e+01 |
| 5591 | 5.5890 | -5.730990882094e-02 | 4.664725361310e+01 |
| 5592 | 5.5900 | -5.750796844729e-02 | 4.667708653966e+01 |
| 5593 | 5.5910 | -5.772239070184e-02 | 4.670691946622e+01 |
| 5594 | 5.5920 | -5.795318376802e-02 | 4.673675239278e+01 |
| 5595 | 5.5930 | -5.820035583326e-02 | 4.676658531934e+01 |
| 5596 | 5.5940 | -5.846391508911e-02 | 4.679641824590e+01 |
| 5597 | 5.5950 | -5.864541681863e-02 | 4.682634962538e+01 |
| 5598 | 5.5960 | -5.860065947355e-02 | 4.685652366751e+01 |
| 5599 | 5.5970 | -5.857231391830e-02 | 4.688669770964e+01 |
| 5600 | 5.5980 | -5.856038836083e-02 | 4.691687175178e+01 |
| 5601 | 5.5990 | -5.856489101323e-02 | 4.694704579391e+01 |
| 5602 | 5.6000 | -5.858583009162e-02 | 4.697721983605e+01 |
| 5603 | 5.6010 | -5.862321381631e-02 | 4.700739387818e+01 |
| 5604 | 5.6020 | -5.867705041165e-02 | 4.703756792031e+01 |
| 5605 | 5.6030 | -5.844747890105e-02 | 4.706804183165e+01 |
| 5606 | 5.6040 | -5.819394144417e-02 | 4.709855617827e+01 |
| 5607 | 5.6050 | -5.795688155576e-02 | 4.712907052489e+01 |
| 5608 | 5.6060 | -5.773630747670e-02 | 4.715958487151e+01 |
| 5609 | 5.6070 | -5.753222745198e-02 | 4.719009921812e+01 |
| 5610 | 5.6080 | -5.734464973063e-02 | 4.722061356474e+01 |
| 5611 | 5.6090 | -5.717358256590e-02 | 4.725112791136e+01 |
| 5612 | 5.6100 | -5.701903421515e-02 | 4.728164225797e+01 |
| 5613 | 5.6110 | -5.688101293983e-02 | 4.731215660459e+01 |
| 5614 | 5.6120 | -5.675952700555e-02 | 4.734267095121e+01 |
| 5615 | 5.6130 | -5.665458468207e-02 | 4.737318529783e+01 |
| 5616 | 5.6140 | -5.656619424325e-02 | 4.740369964444e+01 |
| 5617 | 5.6150 | -5.649436396710e-02 | 4.743421399106e+01 |
| 5618 | 5.6160 | -5.643910213577e-02 | 4.746472833768e+01 |
| 5619 | 5.6170 | -5.640041703558e-02 | 4.749524268429e+01 |
| 5620 | 5.6180 | -5.637831695696e-02 | 4.752575703091e+01 |
| 5621 | 5.6190 | -5.637281019451e-02 | 4.755627137753e+01 |
| 5622 | 5.6200 | -5.638390504692e-02 | 4.758678572415e+01 |
| 5623 | 5.6210 | -5.641160981710e-02 | 4.761730007076e+01 |
| 5624 | 5.6220 | -5.645593281210e-02 | 4.764781441738e+01 |
| 5625 | 5.6230 | -5.651688234310e-02 | 4.767832876400e+01 |
| 5626 | 5.6240 | -5.659446672547e-02 | 4.770884311061e+01 |
| 5627 | 5.6250 | -5.635669541035e-02 | 4.773968945610e+01 |
| 5628 | 5.6260 | -5.612965999584e-02 | 4.777054171718e+01 |
| 5629 | 5.6270 | -5.591928440372e-02 | 4.780139397826e+01 |
| 5630 | 5.6280 | -5.572557696593e-02 | 4.783224623934e+01 |
| 5631 | 5.6290 | -5.554854601870e-02 | 4.786309850042e+01 |
| 5632 | 5.6300 | -5.538819990228e-02 | 4.789395076150e+01 |
| 5633 | 5.6310 | -5.524454696126e-02 | 4.792480302258e+01 |
| 5634 | 5.6320 | -5.511759554424e-02 | 4.795565528366e+01 |
| 5635 | 5.6330 | -5.500735400412e-02 | 4.798650754474e+01 |
| 5636 | 5.6340 | -5.491383069795e-02 | 4.801735980582e+01 |
| 5637 | 5.6350 | -5.483703398685e-02 | 4.804821206689e+01 |
| 5638 | 5.6360 | -5.477697223629e-02 | 4.807906432797e+01 |
| 5639 | 5.6370 | -5.473365381580e-02 | 4.810991658905e+01 |
| 5640 | 5.6380 | -5.470708709919e-02 | 4.814076885013e+01 |
| 5641 | 5.6390 | -5.448021959694e-02 | 4.817183817208e+01 |
| 5642 | 5.6400 | -5.415082538599e-02 | 4.820302678920e+01 |
| 5643 | 5.6410 | -5.383820802533e-02 | 4.823421540632e+01 |
| 5644 | 5.6420 | -5.354237590546e-02 | 4.826540402344e+01 |
| 5645 | 5.6430 | -5.326333742106e-02 | 4.829659264056e+01 |
| 5646 | 5.6440 | -5.300110097114e-02 | 4.832778125768e+01 |
| 5647 | 5.6450 | -5.275567495878e-02 | 4.835896987480e+01 |
| 5648 | 5.6460 | -5.234145383914e-02 | 4.839034410587e+01 |
| 5649 | 5.6470 | -5.179408694335e-02 | 4.842186830997e+01 |
| 5650 | 5.6480 | -5.126355571974e-02 | 4.845339251408e+01 |
| 5651 | 5.6490 | -5.074986858817e-02 | 4.848491671818e+01 |
| 5652 | 5.6500 | -5.025303397287e-02 | 4.851644092229e+01 |
| 5653 | 5.6510 | -4.977306030213e-02 | 4.854796512639e+01 |
| 5654 | 5.6520 | -4.930995600863e-02 | 4.857948933049e+01 |
| 5655 | 5.6530 | -4.886372952908e-02 | 4.861101353460e+01 |
| 5656 | 5.6540 | -4.843438930451e-02 | 4.864253773870e+01 |
| 5657 | 5.6550 | -4.802194378024e-02 | 4.867406194281e+01 |
| 5658 | 5.6560 | -4.762640140564e-02 | 4.870558614691e+01 |
| 5659 | 5.6570 | -4.724777063447e-02 | 4.873711035101e+01 |
| 5660 | 5.6580 | -4.688605992459e-02 | 4.876863455512e+01 |
| 5661 | 5.6590 | -4.654127773822e-02 | 4.880015875922e+01 |
| 5662 | 5.6600 | -4.621343254166e-02 | 4.883168296333e+01 |
| 5663 | 5.6610 | -4.590253280558e-02 | 4.886320716743e+01 |
| 5664 | 5.6620 | -4.560858700480e-02 | 4.889473137154e+01 |
| 5665 | 5.6630 | -4.533160361845e-02 | 4.892625557564e+01 |
| 5666 | 5.6640 | -4.507159112978e-02 | 4.895777977974e+01 |
| 5667 | 5.6650 | -4.482855802648e-02 | 4.898930398385e+01 |
| 5668 | 5.6660 | -4.460251280025e-02 | 4.902082818795e+01 |
| 5669 | 5.6670 | -4.429791601251e-02 | 4.905244793999e+01 |
| 5670 | 5.6680 | -4.393921242451e-02 | 4.908413880370e+01 |
| 5671 | 5.6690 | -4.359752221460e-02 | 4.911582966742e+01 |
| 5672 | 5.6700 | -4.327285389152e-02 | 4.914752053113e+01 |
| 5673 | 5.6710 | -4.296521596844e-02 | 4.917921139484e+01 |
| 5674 | 5.6720 | -4.267461696265e-02 | 4.921090225855e+01 |
| 5675 | 5.6730 | -4.240106539573e-02 | 4.924259312227e+01 |
| 5676 | 5.6740 | -4.214456979351e-02 | 4.927428398598e+01 |
| 5677 | 5.6750 | -4.190513868618e-02 | 4.930597484969e+01 |
| 5678 | 5.6760 | -4.168278060808e-02 | 4.933766571341e+01 |
| 5679 | 5.6770 | -4.147750409785e-02 | 4.936935657712e+01 |
| 5680 | 5.6780 | -4.128931769841e-02 | 4.940104744083e+01 |
| 5681 | 5.6790 | -4.111822995698e-02 | 4.943273830454e+01 |
| 5682 | 5.6800 | -4.096424942503e-02 | 4.946442916826e+01 |
| 5683 | 5.6810 | -4.055282387405e-02 | 4.949639459275e+01 |
| 5684 | 5.6820 | -4.010124420554e-02 | 4.952841729569e+01 |
| 5685 | 5.6830 | -3.966679742656e-02 | 4.956043999863e+01 |
| 5686 | 5.6840 | -3.924949210570e-02 | 4.959246270157e+01 |
| 5687 | 5.6850 | -3.884933681585e-02 | 4.962448540451e+01 |
| 5688 | 5.6860 | -3.846634013419e-02 | 4.965650810745e+01 |
| 5689 | 5.6870 | -3.810051064211e-02 | 4.968853081039e+01 |
| 5690 | 5.6880 | -3.775185692543e-02 | 4.972055351333e+01 |
| 5691 | 5.6890 | -3.742038757413e-02 | 4.975257621627e+01 |
| 5692 | 5.6900 | -3.710611118258e-02 | 4.978459891921e+01 |
| 5693 | 5.6910 | -3.680903634935e-02 | 4.981662162215e+01 |
| 5694 | 5.6920 | -3.652917167746e-02 | 4.984864432509e+01 |
| 5695 | 5.6930 | -3.626652577408e-02 | 4.988066702803e+01 |
| 5696 | 5.6940 | -3.602110725076e-02 | 4.991268973097e+01 |
| 5697 | 5.6950 | -3.579292472337e-02 | 4.994471243391e+01 |
| 5698 | 5.6960 | -3.558198681206e-02 | 4.997673513685e+01 |
| 5699 | 5.6970 | -3.538830214123e-02 | 5.000875783979e+01 |
| 5700 | 5.6980 | -3.521187933977e-02 | 5.004078054273e+01 |
| 5701 | 5.6990 | -3.505272704071e-02 | 5.007280324567e+01 |
| 5702 | 5.7000 | -3.491085388144e-02 | 5.010482594861e+01 |
| 5703 | 5.7010 | -3.478626850376e-02 | 5.013684865155e+01 |
| 5704 | 5.7020 | -3.467897955368e-02 | 5.016887135449e+01 |
| 5705 | 5.7030 | -3.458899568155e-02 | 5.020089405743e+01 |
| 5706 | 5.7040 | -3.451632554215e-02 | 5.023291676037e+01 |
| 5707 | 5.7050 | -3.446097779447e-02 | 5.026493946331e+01 |
| 5708 | 5.7060 | -3.442296110185e-02 | 5.029696216625e+01 |
| 5709 | 5.7070 | -3.440228413204e-02 | 5.032898486918e+01 |
| 5710 | 5.7080 | -3.439895555703e-02 | 5.036100757212e+01 |
| 5711 | 5.7090 | -3.441298405319e-02 | 5.039303027506e+01 |
| 5712 | 5.7100 | -3.444437830126e-02 | 5.042505297800e+01 |
| 5713 | 5.7110 | -3.449314698625e-02 | 5.045707568094e+01 |
| 5714 | 5.7120 | -3.455929879757e-02 | 5.048909838388e+01 |
| 5715 | 5.7130 | -3.464284242897e-02 | 5.052112108682e+01 |
| 5716 | 5.7140 | -3.474378657854e-02 | 5.055314378976e+01 |
| 5717 | 5.7150 | -3.486213994866e-02 | 5.058516649270e+01 |
| 5718 | 5.7160 | -3.499791124620e-02 | 5.061718919564e+01 |
| 5719 | 5.7170 | -3.515110918227e-02 | 5.064921189858e+01 |
| 5720 | 5.7180 | -3.532174247235e-02 | 5.068123460152e+01 |
| 5721 | 5.7190 | -3.550981983628e-02 | 5.071325730446e+01 |
| 5722 | 5.7200 | -3.571534999836e-02 | 5.074528000740e+01 |
| 5723 | 5.7210 | -3.593834168710e-02 | 5.077730271034e+01 |
| 5724 | 5.7220 | -3.617880363544e-02 | 5.080932541328e+01 |
| 5725 | 5.7230 | -3.643674458078e-02 | 5.084134811622e+01 |
| 5726 | 5.7240 | -3.671217326473e-02 | 5.087337081916e+01 |
| 5727 | 5.7250 | -3.700509843337e-02 | 5.090539352210e+01 |
| 5728 | 5.7260 | -3.731552883715e-02 | 5.093741622504e+01 |
| 5729 | 5.7270 | -3.759370976348e-02 | 5.096948869145e+01 |
| 5730 | 5.7280 | -3.761232844144e-02 | 5.100183824285e+01 |
| 5731 | 5.7290 | -3.764847863210e-02 | 5.103418779426e+01 |
| 5732 | 5.7300 | -3.770216910341e-02 | 5.106653734566e+01 |
| 5733 | 5.7310 | -3.777340862766e-02 | 5.109888689706e+01 |
| 5734 | 5.7320 | -3.786220598161e-02 | 5.113123644847e+01 |
| 5735 | 5.7330 | -3.796856994638e-02 | 5.116358599987e+01 |
| 5736 | 5.7340 | -3.809250930745e-02 | 5.119593555128e+01 |
| 5737 | 5.7350 | -3.823403285471e-02 | 5.122828510268e+01 |
| 5738 | 5.7360 | -3.839314938248e-02 | 5.126063465409e+01 |
| 5739 | 5.7370 | -3.856986768943e-02 | 5.129298420549e+01 |
| 5740 | 5.7380 | -3.876419657866e-02 | 5.132533375690e+01 |
| 5741 | 5.7390 | -3.897614485768e-02 | 5.135768330830e+01 |
| 5742 | 5.7400 | -3.913831967921e-02 | 5.139010026136e+01 |
| 5743 | 5.7410 | -3.906005938187e-02 | 5.142277528656e+01 |
| 5744 | 5.7420 | -3.899944492324e-02 | 5.145545031176e+01 |
| 5745 | 5.7430 | -3.895648512842e-02 | 5.148812533697e+01 |
| 5746 | 5.7440 | -3.893118882700e-02 | 5.152080036217e+01 |
| 5747 | 5.7450 | -3.892356485287e-02 | 5.155347538737e+01 |
| 5748 | 5.7460 | -3.893362204445e-02 | 5.158615041257e+01 |
| 5749 | 5.7470 | -3.870256982874e-02 | 5.161908423718e+01 |
| 5750 | 5.7480 | -3.842322127699e-02 | 5.165208405699e+01 |
| 5751 | 5.7490 | -3.816158043257e-02 | 5.168508387680e+01 |
| 5752 | 5.7500 | -3.791765615160e-02 | 5.171808369661e+01 |
| 5753 | 5.7510 | -3.769145729452e-02 | 5.175108351642e+01 |
| 5754 | 5.7520 | -3.748299272632e-02 | 5.178408333622e+01 |
| 5755 | 5.7530 | -3.729227131628e-02 | 5.181708315603e+01 |
| 5756 | 5.7540 | -3.711930193832e-02 | 5.185008297584e+01 |
| 5757 | 5.7550 | -3.696409347055e-02 | 5.188308279565e+01 |
| 5758 | 5.7560 | -3.682665479575e-02 | 5.191608261546e+01 |
| 5759 | 5.7570 | -3.670699480099e-02 | 5.194908243526e+01 |
| 5760 | 5.7580 | -3.660512237780e-02 | 5.198208225507e+01 |
| 5761 | 5.7590 | -3.648927497183e-02 | 5.201511384633e+01 |
| 5762 | 5.7600 | -3.609955223608e-02 | 5.204843711829e+01 |
| 5763 | 5.7610 | -3.572764377332e-02 | 5.208176039024e+01 |
| 5764 | 5.7620 | -3.537355849287e-02 | 5.211508366220e+01 |
| 5765 | 5.7630 | -3.503730530866e-02 | 5.214840693416e+01 |
| 5766 | 5.7640 | -3.471889313888e-02 | 5.218173020611e+01 |
| 5767 | 5.7650 | -3.441833090630e-02 | 5.221505347807e+01 |
| 5768 | 5.7660 | -3.413562753812e-02 | 5.224837675003e+01 |
| 5769 | 5.7670 | -3.387079196601e-02 | 5.228170002198e+01 |
| 5770 | 5.7680 | -3.362383312609e-02 | 5.231502329394e+01 |
| 5771 | 5.7690 | -3.339475995901e-02 | 5.234834656589e+01 |
| 5772 | 5.7700 | -3.318358140975e-02 | 5.238166983785e+01 |
| 5773 | 5.7710 | -3.299030642796e-02 | 5.241499310981e+01 |
| 5774 | 5.7720 | -3.281494396760e-02 | 5.244831638176e+01 |
| 5775 | 5.7730 | -3.265750298719e-02 | 5.248163965372e+01 |
| 5776 | 5.7740 | -3.251799244972e-02 | 5.251496292568e+01 |
| 5777 | 5.7750 | -3.239642132266e-02 | 5.254828619763e+01 |
| 5778 | 5.7760 | -3.229279857790e-02 | 5.258160946959e+01 |
| 5779 | 5.7770 | -3.220713319197e-02 | 5.261493274155e+01 |
| 5780 | 5.7780 | -3.213943414572e-02 | 5.264825601350e+01 |
| 5781 | 5.7790 | -3.208971042461e-02 | 5.268157928546e+01 |
| 5782 | 5.7800 | -3.205797101855e-02 | 5.271490255741e+01 |
| 5783 | 5.7810 | -3.204422492191e-02 | 5.274822582937e+01 |
| 5784 | 5.7820 | -3.204848113365e-02 | 5.278154910133e+01 |
| 5785 | 5.7830 | -3.207074865713e-02 | 5.281487237328e+01 |
| 5786 | 5.7840 | -3.211103650028e-02 | 5.284819564524e+01 |
| 5787 | 5.7850 | -3.216935367552e-02 | 5.288151891720e+01 |
| 5788 | 5.7860 | -3.224570919977e-02 | 5.291484218915e+01 |
| 5789 | 5.7870 | -3.234011209443e-02 | 5.294816546111e+01 |
| 5790 | 5.7880 | -3.245257138550e-02 | 5.298148873306e+01 |
| 5791 | 5.7890 | -3.258309610335e-02 | 5.301481200502e+01 |
| 5792 | 5.7900 | -3.273169528306e-02 | 5.304813527698e+01 |
| 5793 | 5.7910 | -3.289837796408e-02 | 5.308145854893e+01 |
| 5794 | 5.7920 | -3.308315319036e-02 | 5.311478182089e+01 |
| 5795 | 5.7930 | -3.328603001053e-02 | 5.314810509285e+01 |
| 5796 | 5.7940 | -3.350701747761e-02 | 5.318142836480e+01 |
| 5797 | 5.7950 | -3.374612464917e-02 | 5.321475163676e+01 |
| 5798 | 5.7960 | -3.400336058738e-02 | 5.324807490872e+01 |
| 5799 | 5.7970 | -3.427873435885e-02 | 5.328139818067e+01 |
| 5800 | 5.7980 | -3.457225503475e-02 | 5.331472145263e+01 |
| 5801 | 5.7990 | -3.488393169087e-02 | 5.334804472458e+01 |
| 5802 | 5.8000 | -3.521377340740e-02 | 5.338136799654e+01 |
| 5803 | 5.8010 | -3.556178926917e-02 | 5.341469126850e+01 |
| 5804 | 5.8020 | -3.592798836557e-02 | 5.344801454045e+01 |
| 5805 | 5.8030 | -3.603121800057e-02 | 5.348161897420e+01 |
| 5806 | 5.8040 | -3.611489758417e-02 | 5.351526115942e+01 |
| 5807 | 5.8050 | -3.621678769766e-02 | 5.354890334465e+01 |
| 5808 | 5.8060 | -3.633689744861e-02 | 5.358254552987e+01 |
| 5809 | 5.8070 | -3.647523594908e-02 | 5.361618771510e+01 |
| 5810 | 5.8080 | -3.663181231583e-02 | 5.364982990032e+01 |
| 5811 | 5.8090 | -3.680663566996e-02 | 5.368347208555e+01 |
| 5812 | 5.8100 | -3.699971513728e-02 | 5.371711427077e+01 |
| 5813 | 5.8110 | -3.721105984815e-02 | 5.375075645600e+01 |
| 5814 | 5.8120 | -3.744067893748e-02 | 5.378439864122e+01 |
| 5815 | 5.8130 | -3.768858154475e-02 | 5.381804082645e+01 |
| 5816 | 5.8140 | -3.795477681394e-02 | 5.385168301167e+01 |
| 5817 | 5.8150 | -3.823927389376e-02 | 5.388532519690e+01 |
| 5818 | 5.8160 | -3.854208193733e-02 | 5.391896738212e+01 |
| 5819 | 5.8170 | -3.886321010247e-02 | 5.395260956734e+01 |
| 5820 | 5.8180 | -3.920266755155e-02 | 5.398625175257e+01 |
| 5821 | 5.8190 | -3.956046345144e-02 | 5.401989393779e+01 |
| 5822 | 5.8200 | -3.993660697369e-02 | 5.405353612302e+01 |
| 5823 | 5.8210 | -4.004035942410e-02 | 5.408746905611e+01 |
| 5824 | 5.8220 | -4.013618560485e-02 | 5.412142828146e+01 |
| 5825 | 5.8230 | -4.025038695008e-02 | 5.415538750680e+01 |
| 5826 | 5.8240 | -4.038297264961e-02 | 5.418934673214e+01 |
| 5827 | 5.8250 | -4.053395189799e-02 | 5.422330595749e+01 |
| 5828 | 5.8260 | -4.070333389422e-02 | 5.425726518283e+01 |
| 5829 | 5.8270 | -4.089112784203e-02 | 5.429122440817e+01 |
| 5830 | 5.8280 | -4.109734294969e-02 | 5.432518363352e+01 |
| 5831 | 5.8290 | -4.132198843006e-02 | 5.435914285886e+01 |
| 5832 | 5.8300 | -4.156507350066e-02 | 5.439310208421e+01 |
| 5833 | 5.8310 | -4.182660738356e-02 | 5.442706130955e+01 |
| 5834 | 5.8320 | -4.210659930550e-02 | 5.446102053489e+01 |
| 5835 | 5.8330 | -4.240505849779e-02 | 5.449497976024e+01 |
| 5836 | 5.8340 | -4.272199419642e-02 | 5.452893898558e+01 |
| 5837 | 5.8350 | -4.305741564188e-02 | 5.456289821092e+01 |
| 5838 | 5.8360 | -4.341133207944e-02 | 5.459685743627e+01 |
| 5839 | 5.8370 | -4.378375275886e-02 | 5.463081666161e+01 |
| 5840 | 5.8380 | -4.414636521449e-02 | 5.466480420868e+01 |
| 5841 | 5.8390 | -4.445075287359e-02 | 5.469886850329e+01 |
| 5842 | 5.8400 | -4.477367255172e-02 | 5.473293279791e+01 |
| 5843 | 5.8410 | -4.511513351724e-02 | 5.476699709252e+01 |
| 5844 | 5.8420 | -4.547514504313e-02 | 5.480106138714e+01 |
| 5845 | 5.8430 | -4.585371640696e-02 | 5.483512568175e+01 |
| 5846 | 5.8440 | -4.625085689097e-02 | 5.486918997637e+01 |
| 5847 | 5.8450 | -4.666657578209e-02 | 5.490325427099e+01 |
| 5848 | 5.8460 | -4.710088237180e-02 | 5.493731856560e+01 |
| 5849 | 5.8470 | -4.755378595628e-02 | 5.497138286022e+01 |
| 5850 | 5.8480 | -4.802529583639e-02 | 5.500544715483e+01 |
| 5851 | 5.8490 | -4.851542131756e-02 | 5.503951144945e+01 |
| 5852 | 5.8500 | -4.881214707195e-02 | 5.507378776870e+01 |
| 5853 | 5.8510 | -4.902552348370e-02 | 5.510816607152e+01 |
| 5854 | 5.8520 | -4.925754344087e-02 | 5.514254437435e+01 |
| 5855 | 5.8530 | -4.950821626758e-02 | 5.517692267717e+01 |
| 5856 | 5.8540 | -4.977755129260e-02 | 5.521130097999e+01 |
| 5857 | 5.8550 | -5.006555784937e-02 | 5.524567928281e+01 |
| 5858 | 5.8560 | -5.008137194531e-02 | 5.528034845897e+01 |
| 5859 | 5.8570 | -5.009333477014e-02 | 5.531504017660e+01 |
| 5860 | 5.8580 | -5.012399715501e-02 | 5.534973189424e+01 |
| 5861 | 5.8590 | -5.017336845209e-02 | 5.538442361188e+01 |
| 5862 | 5.8600 | -5.024145801813e-02 | 5.541911532951e+01 |
| 5863 | 5.8610 | -5.032827521462e-02 | 5.545380704715e+01 |
| 5864 | 5.8620 | -5.043382940775e-02 | 5.548849876479e+01 |
| 5865 | 5.8630 | -5.055812996831e-02 | 5.552319048242e+01 |
| 5866 | 5.8640 | -5.070118627185e-02 | 5.555788220006e+01 |
| 5867 | 5.8650 | -5.086300769856e-02 | 5.559257391770e+01 |
| 5868 | 5.8660 | -5.104360363342e-02 | 5.562726563533e+01 |
| 5869 | 5.8670 | -5.107688924950e-02 | 5.566212344719e+01 |
| 5870 | 5.8680 | -5.098282178500e-02 | 5.569712740541e+01 |
| 5871 | 5.8690 | -5.090755701153e-02 | 5.573213136364e+01 |
| 5872 | 5.8700 | -5.085110433278e-02 | 5.576713532186e+01 |
| 5873 | 5.8710 | -5.081347315710e-02 | 5.580213928009e+01 |
| 5874 | 5.8720 | -5.079467289766e-02 | 5.583714323832e+01 |
| 5875 | 5.8730 | -5.079471297223e-02 | 5.587214719654e+01 |
| 5876 | 5.8740 | -5.081360280334e-02 | 5.590715115477e+01 |
| 5877 | 5.8750 | -5.085135181827e-02 | 5.594215511299e+01 |
| 5878 | 5.8760 | -5.090796944888e-02 | 5.597715907122e+01 |
| 5879 | 5.8770 | -5.098346513192e-02 | 5.601216302945e+01 |
| 5880 | 5.8780 | -5.107784830875e-02 | 5.604716698767e+01 |
| 5881 | 5.8790 | -5.119112842548e-02 | 5.608217094590e+01 |
| 5882 | 5.8800 | -5.132331493292e-02 | 5.611717490412e+01 |
| 5883 | 5.8810 | -5.147441728668e-02 | 5.615217886235e+01 |
| 5884 | 5.8820 | -5.164444494702e-02 | 5.618718282057e+01 |
| 5885 | 5.8830 | -5.183340737896e-02 | 5.622218677880e+01 |
| 5886 | 5.8840 | -5.183090898333e-02 | 5.625740114209e+01 |
| 5887 | 5.8850 | -5.174725949291e-02 | 5.629271561020e+01 |
| 5888 | 5.8860 | -5.168257319756e-02 | 5.632803007831e+01 |
| 5889 | 5.8870 | -5.163685958124e-02 | 5.636334454641e+01 |
| 5890 | 5.8880 | -5.161012813271e-02 | 5.639865901452e+01 |
| 5891 | 5.8890 | -5.158347549055e-02 | 5.643399239548e+01 |
| 5892 | 5.8900 | -5.143976639004e-02 | 5.646946183405e+01 |
| 5893 | 5.8910 | -5.131506795191e-02 | 5.650493127263e+01 |
| 5894 | 5.8920 | -5.120938968391e-02 | 5.654040071121e+01 |
| 5895 | 5.8930 | -5.112274109843e-02 | 5.657587014979e+01 |
| 5896 | 5.8940 | -5.105513171273e-02 | 5.661133958837e+01 |
| 5897 | 5.8950 | -5.100657104881e-02 | 5.664680902694e+01 |
| 5898 | 5.8960 | -5.097706863335e-02 | 5.668227846552e+01 |
| 5899 | 5.8970 | -5.096663399792e-02 | 5.671774790410e+01 |
| 5900 | 5.8980 | -5.097527667878e-02 | 5.675321734268e+01 |
| 5901 | 5.8990 | -5.100300621695e-02 | 5.678868678126e+01 |
| 5902 | 5.9000 | -5.104983215827e-02 | 5.682415621983e+01 |
| 5903 | 5.9010 | -5.111576405334e-02 | 5.685962565841e+01 |
| 5904 | 5.9020 | -5.120081145749e-02 | 5.689509509699e+01 |
| 5905 | 5.9030 | -5.130498393088e-02 | 5.693056453557e+01 |
| 5906 | 5.9040 | -5.142829103846e-02 | 5.696603397415e+01 |
| 5907 | 5.9050 | -5.157074234991e-02 | 5.700150341272e+01 |
| 5908 | 5.9060 | -5.153563239345e-02 | 5.703716956635e+01 |
| 5909 | 5.9070 | -5.140814346170e-02 | 5.707294726230e+01 |
| 5910 | 5.9080 | -5.129982747166e-02 | 5.710872495826e+01 |
| 5911 | 5.9090 | -5.121069401224e-02 | 5.714450265422e+01 |
| 5912 | 5.9100 | -5.114075267710e-02 | 5.718028035018e+01 |
| 5913 | 5.9110 | -5.109001306469e-02 | 5.721605804613e+01 |
| 5914 | 5.9120 | -5.105848477832e-02 | 5.725183574209e+01 |
| 5915 | 5.9130 | -5.104617742596e-02 | 5.728761343805e+01 |
| 5916 | 5.9140 | -5.105310062056e-02 | 5.732339113400e+01 |
| 5917 | 5.9150 | -5.107926397977e-02 | 5.735916882996e+01 |
| 5918 | 5.9160 | -5.112467712609e-02 | 5.739494652592e+01 |
| 5919 | 5.9170 | -5.118934968682e-02 | 5.743072422188e+01 |
| 5920 | 5.9180 | -5.127329129408e-02 | 5.746650191783e+01 |
| 5921 | 5.9190 | -5.137651158479e-02 | 5.750227961379e+01 |
| 5922 | 5.9200 | -5.149902020067e-02 | 5.753805730975e+01 |
| 5923 | 5.9210 | -5.164082678836e-02 | 5.757383500571e+01 |
| 5924 | 5.9220 | -5.167268121238e-02 | 5.760974196145e+01 |
| 5925 | 5.9230 | -5.154650499434e-02 | 5.764582626512e+01 |
| 5926 | 5.9240 | -5.143965571677e-02 | 5.768191056878e+01 |
| 5927 | 5.9250 | -5.135214304555e-02 | 5.771799487245e+01 |
| 5928 | 5.9260 | -5.128397665140e-02 | 5.775407917611e+01 |
| 5929 | 5.9270 | -5.123516620989e-02 | 5.779016347978e+01 |
| 5930 | 5.9280 | -5.120572140140e-02 | 5.782624778344e+01 |
| 5931 | 5.9290 | -5.119565191116e-02 | 5.786233208711e+01 |
| 5932 | 5.9300 | -5.120496742931e-02 | 5.789841639077e+01 |
| 5933 | 5.9310 | -5.123367765072e-02 | 5.793450069444e+01 |
| 5934 | 5.9320 | -5.128179227522e-02 | 5.797058499810e+01 |
| 5935 | 5.9330 | -5.134932100737e-02 | 5.800666930177e+01 |
| 5936 | 5.9340 | -5.143627355672e-02 | 5.804275360544e+01 |
| 5937 | 5.9350 | -5.154265963756e-02 | 5.807883790910e+01 |
| 5938 | 5.9360 | -5.166848896911e-02 | 5.811492221277e+01 |
| 5939 | 5.9370 | -5.181377127538e-02 | 5.815100651643e+01 |
| 5940 | 5.9380 | -5.183706312629e-02 | 5.818723227326e+01 |
| 5941 | 5.9390 | -5.171628982521e-02 | 5.822362156767e+01 |
| 5942 | 5.9400 | -5.161499870025e-02 | 5.826001086209e+01 |
| 5943 | 5.9410 | -5.153319949495e-02 | 5.829640015650e+01 |
| 5944 | 5.9420 | -5.147090195767e-02 | 5.833278945091e+01 |
| 5945 | 5.9430 | -5.142811584172e-02 | 5.836917874533e+01 |
| 5946 | 5.9440 | -5.140485090524e-02 | 5.840556803974e+01 |
| 5947 | 5.9450 | -5.140111691124e-02 | 5.844195733416e+01 |
| 5948 | 5.9460 | -5.141692362768e-02 | 5.847834662857e+01 |
| 5949 | 5.9470 | -5.145228082734e-02 | 5.851473592298e+01 |
| 5950 | 5.9480 | -5.150719828787e-02 | 5.855112521740e+01 |
| 5951 | 5.9490 | -5.128838967707e-02 | 5.858780780793e+01 |
| 5952 | 5.9500 | -5.107852662189e-02 | 5.862450103273e+01 |
| 5953 | 5.9510 | -5.088825318996e-02 | 5.866119425754e+01 |
| 5954 | 5.9520 | -5.071757917865e-02 | 5.869788748234e+01 |
| 5955 | 5.9530 | -5.056651439008e-02 | 5.873458070714e+01 |
| 5956 | 5.9540 | -5.043506863129e-02 | 5.877127393195e+01 |
| 5957 | 5.9550 | -5.032325171428e-02 | 5.880796715675e+01 |
| 5958 | 5.9560 | -5.023107345591e-02 | 5.884466038156e+01 |
| 5959 | 5.9570 | -5.015854367797e-02 | 5.888135360636e+01 |
| 5960 | 5.9580 | -5.010567220713e-02 | 5.891804683117e+01 |
| 5961 | 5.9590 | -5.007246887506e-02 | 5.895474005597e+01 |
| 5962 | 5.9600 | -5.005894351826e-02 | 5.899143328077e+01 |
| 5963 | 5.9610 | -5.006510597816e-02 | 5.902812650558e+01 |
| 5964 | 5.9620 | -5.009096610116e-02 | 5.906481973038e+01 |
| 5965 | 5.9630 | -5.013653373853e-02 | 5.910151295519e+01 |
| 5966 | 5.9640 | -5.007462677973e-02 | 5.913833337196e+01 |
| 5967 | 5.9650 | -4.985727354409e-02 | 5.917532896224e+01 |
| 5968 | 5.9660 | -4.965965740631e-02 | 5.921232455252e+01 |
| 5969 | 5.9670 | -4.948178823739e-02 | 5.924932014280e+01 |
| 5970 | 5.9680 | -4.932367591330e-02 | 5.928631573308e+01 |
| 5971 | 5.9690 | -4.918533031488e-02 | 5.932331132336e+01 |
| 5972 | 5.9700 | -4.906676132801e-02 | 5.936030691364e+01 |
| 5973 | 5.9710 | -4.896797884347e-02 | 5.939730250391e+01 |
| 5974 | 5.9720 | -4.888899275696e-02 | 5.943429809419e+01 |
| 5975 | 5.9730 | -4.882981296916e-02 | 5.947129368447e+01 |
| 5976 | 5.9740 | -4.879044938572e-02 | 5.950828927475e+01 |
| 5977 | 5.9750 | -4.877091191721e-02 | 5.954528486503e+01 |
| 5978 | 5.9760 | -4.877121047916e-02 | 5.958228045531e+01 |
| 5979 | 5.9770 | -4.879135499207e-02 | 5.961927604559e+01 |
| 5980 | 5.9780 | -4.883135538139e-02 | 5.965627163587e+01 |
| 5981 | 5.9790 | -4.889122157757e-02 | 5.969326722615e+01 |
| 5982 | 5.9800 | -4.897096351596e-02 | 5.973026281643e+01 |
| 5983 | 5.9810 | -4.907059113694e-02 | 5.976725840671e+01 |
| 5984 | 5.9820 | -4.919011438583e-02 | 5.980425399699e+01 |
| 5985 | 5.9830 | -4.932954321295e-02 | 5.984124958727e+01 |
| 5986 | 5.9840 | -4.946975106119e-02 | 5.987826431406e+01 |
| 5987 | 5.9850 | -4.934869576257e-02 | 5.991556022949e+01 |
| 5988 | 5.9860 | -4.924757592294e-02 | 5.995285614493e+01 |
| 5989 | 5.9870 | -4.916640151253e-02 | 5.999015206036e+01 |
| 5990 | 5.9880 | -4.910518250653e-02 | 6.002744797579e+01 |
| 5991 | 5.9890 | -4.906392888514e-02 | 6.006474389122e+01 |
| 5992 | 5.9900 | -4.904265063357e-02 | 6.010203980666e+01 |
| 5993 | 5.9910 | -4.904135774200e-02 | 6.013933572209e+01 |
| 5994 | 5.9920 | -4.906006020558e-02 | 6.017663163752e+01 |
| 5995 | 5.9930 | -4.909876802452e-02 | 6.021392755296e+01 |
| 5996 | 5.9940 | -4.914594546536e-02 | 6.025123501413e+01 |
| 5997 | 5.9950 | -4.892536986580e-02 | 6.028883025371e+01 |
| 5998 | 5.9960 | -4.872482965217e-02 | 6.032642549329e+01 |
| 5999 | 5.9970 | -4.854433484465e-02 | 6.036402073287e+01 |
| 6000 | 5.9980 | -4.838389546840e-02 | 6.040161597246e+01 |
| 6001 | 5.9990 | -4.824352155372e-02 | 6.043921121204e+01 |
E-009-suzuki-screw-function.json
— 1.4 KB, updated 08-18-2026
JSON sidecar (click to expand)
{
"experiment": "E-009a",
"task": "3.4c (D-018 step 1): Suzuki screw function g(t)",
"description": "mpmath implementation of Suzuki's explicit screw function g(t) (arXiv:2606.09096v1 eq. 1.3); validated against eq. 2.2 near-origin expansion; tabulated on [0,10] step 1e-3 for E-009b Galerkin",
"script": "research/numerics/scripts/E-009-suzuki-screw-function.py",
"parameters": {
"t_max": 10.0,
"step": 0.001,
"validation_dps": 30,
"n_sieve_max": 22028
},
"checks": {
"A1_lerch_convention": true,
"A2_evenness": true,
"A3_A_limit": true,
"A4_r_curvature_converges": true,
"B_table_finite": true,
"B_spot_check_vs_mpmath": true
},
"key_values": {
"A_eq2.2": 0.707546365655439,
"c2_lim_r_over_t2": -0.8750599754042412,
"digamma_coeff_-half(psi(1/4)-log pi)": 2.6860917096128327,
"Phi(1,2,1/4)": 17.19732915450711,
"g(log2)": -0.06355558603756917,
"g(1)": -0.0440073052368517,
"g(5)": -0.045371349558830154,
"g(10)": -0.06209008245757719
},
"caveats": [
"float64 table: Lerch combination has cancellation for small t (~4 digits lost at t=1e-3); spot-checked vs mpmath to 1e-9",
"prime sum is piecewise linear in t (kinks at log n) — exact via cumsum, no interpolation error",
"g even: only t >= 0 tabulated"
],
"elapsed_seconds": 3.0,
"timestamp_utc": "2026-08-18T01:44:26.674491+00:00",
"row_count": 10001
}
Source code
Python script (click to expand)
"""E-009a — Task 3.4c (Q-3.4c, D-018 plan step 1): Suzuki's screw function g(t).
Suzuki (arXiv:2606.09096v1, eq. 1.3) — explicit screw function of zeta:
g(t) = -4(e^{t/2} + e^{-t/2} - 2)
+ Sum_{n <= e^{|t|}} (Lambda(n)/sqrt(n)) (|t| - log n)
- (|t|/2)(psi(1/4) - log pi)
- (1/4)[ Phi(1,2,1/4) - e^{-|t|/2} Phi(e^{-2|t|}, 2, 1/4) ]
(psi = digamma, Phi = Hurwitz-Lerch transcendent Phi(z,s,a) =
Sum_{k>=0} z^k/(k+a)^s; Lambda = von Mangoldt; prime sum = 0 for
|t| < (1/2) log 2.)
Near-origin expansion (Suzuki eq. 2.2):
g(t) = (1/2)|t| log|t| + A|t| + (prime sum) + r(t),
r even C^2, r = O(t^2),
A = (1/2)(log(2pi) - psi(2)) = (1/2)(log(2pi) + gamma_E - 1)
= 0.7075463656...
g is a Krein-Langer screw function IFF RH (this is the Cor 1.6 bridge).
Part A (validation, mpmath dps 30):
A1. Lerch convention: Phi(1,2,1/4) == psi'(1/4) = polygamma(1, 1/4).
A2. Evenness: g(-t) == g(t) at t = 0.7, 2.3, 5.1 (exercises prime sum).
A3. A-limit: g(t)/t - (1/2) log t -> A as t -> 0+ (prime sum = 0 there);
residual must equal r(t)/t = c2*t + o(t) with c2 from A4.
A4. r-curvature: r(t)/t^2 -> c2 (constant) as t -> 0+, t <= 0.25.
Part B (tabulation, float64 + mpmath hybrid):
g(t) on t in [0, 10], step 1e-3 (mesh for the E-009b Galerkin stage;
g is even so t >= 0 suffices). Prime-sum part via exact cumsum arrays
(P(t) piecewise linear in t with kinks at log n). Lerch combination:
direct numpy series for t > 0.35 (z = e^{-2t} < 0.5, fast), mpmath
lerchphi for t <= 0.35 (slow-converging near z = 1).
Outputs: research/numerics/data/E-009-suzuki-screw-function.csv (+ .json)
"""
import json
import sys
import time
from datetime import datetime, timezone
from pathlib import Path
import numpy as np
import mpmath as mp
REPO = Path(__file__).resolve().parents[3]
DATA = REPO / "research" / "numerics" / "data"
CSV = DATA / "E-009-suzuki-screw-function.csv"
JSON = DATA / "E-009-suzuki-screw-function.json"
T_MAX = 10.0 # tabulation range [0, T_MAX] (g even)
H = 1e-3 # mesh step
DPS = 30 # validation precision
A_CONST = 0.5 * (np.log(2 * np.pi) + np.euler_gamma - 1.0) # eq. 2.2 constant
# ---------------------------------------------------------------- von Mangoldt
def mangoldt_sieve(n_max: int) -> np.ndarray:
"""lam_log[n] = log p if n = p^k (prime power), else 0."""
lam_log = np.zeros(n_max + 1)
is_comp = np.zeros(n_max + 1, dtype=bool)
for p in range(2, n_max + 1):
if not is_comp[p]:
if p * p <= n_max:
is_comp[p * p :: p] = True
pk = p
while pk <= n_max:
lam_log[pk] = np.log(p)
pk *= p
return lam_log
N_MAX = int(np.exp(T_MAX)) + 2
LAM_LOG = mangoldt_sieve(N_MAX)
NS = np.arange(2, N_MAX + 1)
LOGS = np.log(NS)
LAM = LAM_LOG[2:] / np.sqrt(NS) # Lambda(n)/sqrt(n)
C1 = np.cumsum(LAM) # Sum_{n<=x} Lambda(n)/sqrt(n)
C0 = np.cumsum(LAM * LOGS) # Sum_{n<=x} Lambda(n) log(n)/sqrt(n)
def prime_sum_vec(t: np.ndarray) -> np.ndarray:
"""P(t) = Sum_{n <= e^t} (Lambda(n)/sqrt(n))(t - log n), vectorized."""
m = np.searchsorted(LOGS, t, side="right") # count of n with log n <= t
out = np.zeros_like(t)
pos = m > 0
idx = m[pos] - 1
out[pos] = C1[idx] * t[pos] - C0[idx]
return out
def prime_sum_mp(t: mp.mpf) -> mp.mpf:
s = mp.mpf(0)
n = 2
while mp.log(n) <= t:
s += (LAM_LOG[n] / mp.sqrt(n)) * (t - mp.log(n))
n += 1
return s
# ------------------------------------------------------------------- g(t), mp
def g_mp(t) -> mp.mpf:
t = mp.mpf(t)
a = abs(t)
s = -4 * (mp.exp(a / 2) + mp.exp(-a / 2) - 2)
s += prime_sum_mp(a)
s -= (a / 2) * (mp.digamma(mp.mpf(1) / 4) - mp.log(mp.pi))
s -= mp.mpf(1) / 4 * (mp.lerchphi(1, 2, mp.mpf(1) / 4)
- mp.exp(-a / 2) * mp.lerchphi(mp.exp(-2 * a), 2,
mp.mpf(1) / 4))
return s
# --------------------------------------------------------------- g(t), float
KK = np.arange(0, 80)
DENOM = (KK + 0.25) ** 2
def lerch_phi2_fast(z: np.ndarray) -> np.ndarray:
"""Phi(z,2,1/4) by direct series; valid for |z| <= 0.5 (t >= 0.35)."""
powers = np.power.outer(z, KK) # (n_z, K)
return (powers / DENOM).sum(axis=1)
def g_float_table(t: np.ndarray) -> np.ndarray:
g = -4.0 * (np.exp(t / 2) + np.exp(-t / 2) - 2.0)
g += prime_sum_vec(t)
dig_coeff = -0.5 * float(mp.digamma(mp.mpf(1) / 4) - mp.log(mp.pi))
g += dig_coeff * t
phi1 = float(mp.lerchphi(1, 2, mp.mpf(1) / 4)) # = polygamma(1, 1/4)
lerch_comb = np.empty_like(t)
slow = t <= 0.35
if slow.any():
mp.dps = 25
for i in np.flatnonzero(slow):
ti = mp.mpf(float(t[i]))
val = (mp.lerchphi(1, 2, mp.mpf(1) / 4)
- mp.exp(-ti / 2) * mp.lerchphi(mp.exp(-2 * ti), 2,
mp.mpf(1) / 4))
lerch_comb[i] = float(val) / -4.0
mp.dps = DPS
if (~slow).any():
z = np.exp(-2.0 * t[~slow])
lerch_comb[~slow] = -0.25 * (phi1 - np.exp(-t[~slow] / 2)
* lerch_phi2_fast(z))
g += lerch_comb
g[t == 0.0] = 0.0
return g
# ------------------------------------------------------------------- main
def main() -> int:
if CSV.exists() and "--force" not in sys.argv:
print(f"cached: {CSV} exists (use --force to recompute)"); return 0
t0 = time.time()
mp.dps = DPS
# ---- A1: Lerch convention
phi1_mp = mp.lerchphi(1, 2, mp.mpf(1) / 4)
trig1_mp = mp.polygamma(1, mp.mpf(1) / 4)
a1_err = abs(phi1_mp - trig1_mp)
check_a1 = bool(a1_err < mp.mpf("1e-25"))
# ---- A2: evenness (t values exercising the prime sum)
ev_ts = [mp.mpf("0.7"), mp.mpf("2.3"), mp.mpf("5.1")]
ev_err = max(abs(g_mp(t) - g_mp(-t)) for t in ev_ts)
check_a2 = bool(ev_err < mp.mpf("1e-20"))
# ---- A4: r(t)/t^2 -> c2 (t <= 0.25: prime sum = 0)
A_mp = (mp.log(2 * mp.pi) + mp.euler - 1) / 2
r_ts = [mp.mpf("0.25"), mp.mpf("0.125"), mp.mpf("0.0625"),
mp.mpf("0.03125"), mp.mpf("0.015625")]
r_ratios = []
for t in r_ts:
r = g_mp(t) - (t / 2) * mp.log(t) - A_mp * t # prime sum = 0 here
r_ratios.append(r / t**2)
c2 = r_ratios[-1]
r_gap_last = abs(r_ratios[-1] - r_ratios[-2])
r_gap_prev = abs(r_ratios[-2] - r_ratios[-3])
check_a4 = bool(r_gap_last < r_gap_prev) # gaps shrinking => converging
# ---- A3: g(t)/t - (1/2) log t -> A; residual ~ c2 * t
a3_ts = [mp.mpf("1e-2"), mp.mpf("1e-3"), mp.mpf("1e-4")]
a3_resid = [g_mp(t) / t - mp.log(t) / 2 - A_mp for t in a3_ts]
# expected residual ~ c2*t; test relative agreement within 25%
a3_rel = [abs((res - c2 * t) / (c2 * t)) if c2 != 0 else abs(res)
for res, t in zip(a3_resid, a3_ts)]
check_a3 = bool(a3_rel[-1] < 0.25 and abs(a3_resid[-1]) < mp.mpf("3e-3"))
print(f"A1 lerch==polygamma(1,1/4): err {mp.nstr(a1_err, 5)}")
print(f"A2 evenness max err: {mp.nstr(ev_err, 5)}")
print(f"A4 r(t)/t^2 -> c2 = {mp.nstr(c2, 12)} "
f"(gaps {mp.nstr(r_gap_prev, 3)} -> {mp.nstr(r_gap_last, 3)})")
print(f"A3 residuals g(t)/t - (1/2)log t - A at 1e-2/1e-3/1e-4: "
f"{[mp.nstr(x, 6) for x in a3_resid]} (c2*t predicted)")
# ---- Part B: table on [0, T_MAX]
t_mesh = np.arange(0.0, T_MAX + 0.5 * H, H)
g_vals = g_float_table(t_mesh)
p_vals = prime_sum_vec(t_mesh)
check_b = bool(np.all(np.isfinite(g_vals)))
# spot check: float table vs mpmath at a few points
spot_ts = [0.123, 1.0, 3.7, 7.0, 10.0]
spot_err = max(abs(g_mp(x) - mp.mpf(float(g_vals[int(round(x / H))])))
for x in spot_ts)
check_spot = bool(spot_err < mp.mpf("1e-9"))
print(f"Part B: {len(t_mesh)} points, spot-check err vs mpmath: "
f"{mp.nstr(spot_err, 3)}")
checks = {
"A1_lerch_convention": check_a1,
"A2_evenness": check_a2,
"A3_A_limit": check_a3,
"A4_r_curvature_converges": check_a4,
"B_table_finite": check_b,
"B_spot_check_vs_mpmath": check_spot,
}
DATA.mkdir(parents=True, exist_ok=True)
with CSV.open("w", encoding="utf-8", newline="") as f:
f.write("t,g_t,prime_sum_t\n")
for ti, gi, pi in zip(t_mesh, g_vals, p_vals):
f.write(f"{ti:.4f},{gi:.12e},{pi:.12e}\n")
meta = {
"experiment": "E-009a",
"task": "3.4c (D-018 step 1): Suzuki screw function g(t)",
"description": "mpmath implementation of Suzuki's explicit screw "
"function g(t) (arXiv:2606.09096v1 eq. 1.3); "
"validated against eq. 2.2 near-origin expansion; "
"tabulated on [0,10] step 1e-3 for E-009b Galerkin",
"script": "research/numerics/scripts/E-009-suzuki-screw-function.py",
"parameters": {"t_max": T_MAX, "step": H, "validation_dps": DPS,
"n_sieve_max": N_MAX},
"checks": checks,
"key_values": {
"A_eq2.2": float(A_CONST),
"c2_lim_r_over_t2": float(c2),
"digamma_coeff_-half(psi(1/4)-log pi)":
float(-(mp.digamma(mp.mpf(1) / 4) - mp.log(mp.pi)) / 2),
"Phi(1,2,1/4)": float(phi1_mp),
"g(log2)": float(g_mp(mp.log(2))),
"g(1)": float(g_mp(1)),
"g(5)": float(g_mp(5)),
"g(10)": float(g_vals[-1]),
},
"caveats": [
"float64 table: Lerch combination has cancellation for small t "
"(~4 digits lost at t=1e-3); spot-checked vs mpmath to 1e-9",
"prime sum is piecewise linear in t (kinks at log n) — exact "
"via cumsum, no interpolation error",
"g even: only t >= 0 tabulated",
],
"elapsed_seconds": round(time.time() - t0, 1),
"timestamp_utc": datetime.now(timezone.utc).isoformat(),
"row_count": int(len(t_mesh)),
}
JSON.write_text(json.dumps(meta, indent=2), encoding="utf-8")
ok = all(checks.values())
print(f"wrote {CSV.name}, {JSON.name} — "
f"{'ALL CHECKS PASS' if ok else 'CHECK FAILURE: ' + str(checks)}")
return 0 if ok else 1
if __name__ == "__main__":
raise SystemExit(main())