Current task: —

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

← prev page 4 of 21 · 500/page · 10001 rows next →
# tg_tprime_sum_t
1502 1.5000 -4.490947042794e-02 6.894632383932e-01
1503 1.5010 -4.499711491917e-02 6.909342251558e-01
1504 1.5020 -4.508685278362e-02 6.924052119184e-01
1505 1.5030 -4.517868514480e-02 6.938761986810e-01
1506 1.5040 -4.527261312655e-02 6.953471854436e-01
1507 1.5050 -4.536863785311e-02 6.968181722062e-01
1508 1.5060 -4.546676044905e-02 6.982891589688e-01
1509 1.5070 -4.556698203930e-02 6.997601457314e-01
1510 1.5080 -4.566930374916e-02 7.012311324941e-01
1511 1.5090 -4.577372670430e-02 7.027021192567e-01
1512 1.5100 -4.588025203073e-02 7.041731060193e-01
1513 1.5110 -4.598888085484e-02 7.056440927819e-01
1514 1.5120 -4.609961430337e-02 7.071150795445e-01
1515 1.5130 -4.621245350344e-02 7.085860663071e-01
1516 1.5140 -4.632739958251e-02 7.100570530697e-01
1517 1.5150 -4.644445366844e-02 7.115280398323e-01
1518 1.5160 -4.656361688942e-02 7.129990265949e-01
1519 1.5170 -4.668489037403e-02 7.144700133576e-01
1520 1.5180 -4.680827525122e-02 7.159410001202e-01
1521 1.5190 -4.693377265030e-02 7.174119868828e-01
1522 1.5200 -4.706138370094e-02 7.188829736454e-01
1523 1.5210 -4.719110953320e-02 7.203539604080e-01
1524 1.5220 -4.732295127750e-02 7.218249471706e-01
1525 1.5230 -4.745691006462e-02 7.232959339332e-01
1526 1.5240 -4.759298702574e-02 7.247669206958e-01
1527 1.5250 -4.773118329239e-02 7.262379074585e-01
1528 1.5260 -4.787149999649e-02 7.277088942211e-01
1529 1.5270 -4.801393827031e-02 7.291798809837e-01
1530 1.5280 -4.815849924652e-02 7.306508677463e-01
1531 1.5290 -4.830518405815e-02 7.321218545089e-01
1532 1.5300 -4.845399383863e-02 7.335928412715e-01
1533 1.5310 -4.860492972173e-02 7.350638280341e-01
1534 1.5320 -4.875799284163e-02 7.365348147967e-01
1535 1.5330 -4.891318433286e-02 7.380058015593e-01
1536 1.5340 -4.907050533037e-02 7.394767883220e-01
1537 1.5350 -4.922995696946e-02 7.409477750846e-01
1538 1.5360 -4.939154038580e-02 7.424187618472e-01
1539 1.5370 -4.955525671548e-02 7.438897486098e-01
1540 1.5380 -4.972110709494e-02 7.453607353724e-01
1541 1.5390 -4.988909266101e-02 7.468317221350e-01
1542 1.5400 -5.005921455092e-02 7.483027088976e-01
1543 1.5410 -5.023147390226e-02 7.497736956602e-01
1544 1.5420 -5.040587185302e-02 7.512446824229e-01
1545 1.5430 -5.058240954159e-02 7.527156691855e-01
1546 1.5440 -5.076108810670e-02 7.541866559481e-01
1547 1.5450 -5.094190868751e-02 7.556576427107e-01
1548 1.5460 -5.112487242356e-02 7.571286294733e-01
1549 1.5470 -5.130998045477e-02 7.585996162359e-01
1550 1.5480 -5.149723392144e-02 7.600706029985e-01
1551 1.5490 -5.168663396429e-02 7.615415897611e-01
1552 1.5500 -5.187818172440e-02 7.630125765237e-01
1553 1.5510 -5.207187834327e-02 7.644835632864e-01
1554 1.5520 -5.226772496275e-02 7.659545500490e-01
1555 1.5530 -5.246572272514e-02 7.674255368116e-01
1556 1.5540 -5.266587277308e-02 7.688965235742e-01
1557 1.5550 -5.286817624963e-02 7.703675103368e-01
1558 1.5560 -5.307263429825e-02 7.718384970994e-01
1559 1.5570 -5.327924806278e-02 7.733094838620e-01
1560 1.5580 -5.348801868747e-02 7.747804706246e-01
1561 1.5590 -5.369894731695e-02 7.762514573873e-01
1562 1.5600 -5.391203509626e-02 7.777224441499e-01
1563 1.5610 -5.412728317085e-02 7.791934309125e-01
1564 1.5620 -5.434469268654e-02 7.806644176751e-01
1565 1.5630 -5.456426478957e-02 7.821354044377e-01
1566 1.5640 -5.478600062657e-02 7.836063912003e-01
1567 1.5650 -5.500990134459e-02 7.850773779629e-01
1568 1.5660 -5.523596809105e-02 7.865483647255e-01
1569 1.5670 -5.546420201380e-02 7.880193514881e-01
1570 1.5680 -5.569460426108e-02 7.894903382508e-01
1571 1.5690 -5.592717598154e-02 7.909613250134e-01
1572 1.5700 -5.616191832422e-02 7.924323117760e-01
1573 1.5710 -5.639883243860e-02 7.939032985386e-01
1574 1.5720 -5.663791947451e-02 7.953742853012e-01
1575 1.5730 -5.687918058224e-02 7.968452720638e-01
1576 1.5740 -5.712261691247e-02 7.983162588264e-01
1577 1.5750 -5.736822961626e-02 7.997872455890e-01
1578 1.5760 -5.761601984512e-02 8.012582323517e-01
1579 1.5770 -5.786598875094e-02 8.027292191143e-01
1580 1.5780 -5.811813748604e-02 8.042002058769e-01
1581 1.5790 -5.837246720314e-02 8.056711926395e-01
1582 1.5800 -5.862897905536e-02 8.071421794021e-01
1583 1.5810 -5.888767419626e-02 8.086131661647e-01
1584 1.5820 -5.914855377978e-02 8.100841529273e-01
1585 1.5830 -5.941161896029e-02 8.115551396899e-01
1586 1.5840 -5.967687089259e-02 8.130261264525e-01
1587 1.5850 -5.994431073186e-02 8.144971132152e-01
1588 1.5860 -6.021393963371e-02 8.159680999778e-01
1589 1.5870 -6.048575875418e-02 8.174390867404e-01
1590 1.5880 -6.075976924971e-02 8.189100735030e-01
1591 1.5890 -6.103597227716e-02 8.203810602656e-01
1592 1.5900 -6.131436899381e-02 8.218520470282e-01
1593 1.5910 -6.159496055736e-02 8.233230337908e-01
1594 1.5920 -6.187774812591e-02 8.247940205534e-01
1595 1.5930 -6.216273285801e-02 8.262650073161e-01
1596 1.5940 -6.244991591261e-02 8.277359940787e-01
1597 1.5950 -6.273929844910e-02 8.292069808413e-01
1598 1.5960 -6.303088162726e-02 8.306779676039e-01
1599 1.5970 -6.332466660731e-02 8.321489543665e-01
1600 1.5980 -6.362065454991e-02 8.336199411291e-01
1601 1.5990 -6.391884661611e-02 8.350909278917e-01
1602 1.6000 -6.421924396742e-02 8.365619146543e-01
1603 1.6010 -6.452184776573e-02 8.380329014169e-01
1604 1.6020 -6.482665917340e-02 8.395038881796e-01
1605 1.6030 -6.513367935319e-02 8.409748749422e-01
1606 1.6040 -6.544290946830e-02 8.424458617048e-01
1607 1.6050 -6.575435068235e-02 8.439168484674e-01
1608 1.6060 -6.606800415937e-02 8.453878352300e-01
1609 1.6070 -6.638387106386e-02 8.468588219926e-01
1610 1.6080 -6.670195256073e-02 8.483298087552e-01
1611 1.6090 -6.702224981529e-02 8.498007955178e-01
1612 1.6100 -6.694019443294e-02 8.516763518408e-01
1613 1.6110 -6.654516418510e-02 8.538671011190e-01
1614 1.6120 -6.615235319357e-02 8.560578503972e-01
1615 1.6130 -6.576176262540e-02 8.582485996753e-01
1616 1.6140 -6.537339364809e-02 8.604393489535e-01
1617 1.6150 -6.498724742957e-02 8.626300982317e-01
1618 1.6160 -6.460332513820e-02 8.648208475098e-01
1619 1.6170 -6.422162794279e-02 8.670115967880e-01
1620 1.6180 -6.384215701256e-02 8.692023460662e-01
1621 1.6190 -6.346491351719e-02 8.713930953443e-01
1622 1.6200 -6.308989862678e-02 8.735838446225e-01
1623 1.6210 -6.271711351189e-02 8.757745939007e-01
1624 1.6220 -6.234655934348e-02 8.779653431788e-01
1625 1.6230 -6.197823729299e-02 8.801560924570e-01
1626 1.6240 -6.161214853227e-02 8.823468417352e-01
1627 1.6250 -6.124829423362e-02 8.845375910133e-01
1628 1.6260 -6.088667556979e-02 8.867283402915e-01
1629 1.6270 -6.052729371395e-02 8.889190895697e-01
1630 1.6280 -6.017014983974e-02 8.911098388478e-01
1631 1.6290 -5.981524512121e-02 8.933005881260e-01
1632 1.6300 -5.946258073289e-02 8.954913374042e-01
1633 1.6310 -5.911215784971e-02 8.976820866823e-01
1634 1.6320 -5.876397764708e-02 8.998728359605e-01
1635 1.6330 -5.841804130084e-02 9.020635852387e-01
1636 1.6340 -5.807434998727e-02 9.042543345168e-01
1637 1.6350 -5.773290488312e-02 9.064450837950e-01
1638 1.6360 -5.739370716556e-02 9.086358330731e-01
1639 1.6370 -5.705675801222e-02 9.108265823513e-01
1640 1.6380 -5.672205860118e-02 9.130173316295e-01
1641 1.6390 -5.638961011095e-02 9.152080809076e-01
1642 1.6400 -5.605941372052e-02 9.173988301858e-01
1643 1.6410 -5.573147060930e-02 9.195895794640e-01
1644 1.6420 -5.540578195718e-02 9.217803287421e-01
1645 1.6430 -5.508234894446e-02 9.239710780203e-01
1646 1.6440 -5.476117275194e-02 9.261618272985e-01
1647 1.6450 -5.444225456084e-02 9.283525765766e-01
1648 1.6460 -5.412559555284e-02 9.305433258548e-01
1649 1.6470 -5.381119691007e-02 9.327340751330e-01
1650 1.6480 -5.349905981512e-02 9.349248244111e-01
1651 1.6490 -5.318918545104e-02 9.371155736893e-01
1652 1.6500 -5.288157500132e-02 9.393063229675e-01
1653 1.6510 -5.257622964992e-02 9.414970722456e-01
1654 1.6520 -5.227315058125e-02 9.436878215238e-01
1655 1.6530 -5.197233898017e-02 9.458785708020e-01
1656 1.6540 -5.167379603202e-02 9.480693200801e-01
1657 1.6550 -5.137752292256e-02 9.502600693583e-01
1658 1.6560 -5.108352083805e-02 9.524508186365e-01
1659 1.6570 -5.079179096519e-02 9.546415679146e-01
1660 1.6580 -5.050233449114e-02 9.568323171928e-01
1661 1.6590 -5.021515260351e-02 9.590230664710e-01
1662 1.6600 -4.993024649040e-02 9.612138157491e-01
1663 1.6610 -4.964761734034e-02 9.634045650273e-01
1664 1.6620 -4.936726634234e-02 9.655953143054e-01
1665 1.6630 -4.908919468589e-02 9.677860635836e-01
1666 1.6640 -4.881340356089e-02 9.699768128618e-01
1667 1.6650 -4.853989415776e-02 9.721675621399e-01
1668 1.6660 -4.826866766736e-02 9.743583114181e-01
1669 1.6670 -4.799972528101e-02 9.765490606963e-01
1670 1.6680 -4.773306819051e-02 9.787398099744e-01
1671 1.6690 -4.746869758812e-02 9.809305592526e-01
1672 1.6700 -4.720661466656e-02 9.831213085308e-01
1673 1.6710 -4.694682061903e-02 9.853120578089e-01
1674 1.6720 -4.668931663919e-02 9.875028070871e-01
1675 1.6730 -4.643410392117e-02 9.896935563653e-01
1676 1.6740 -4.618118365957e-02 9.918843056434e-01
1677 1.6750 -4.593055704948e-02 9.940750549216e-01
1678 1.6760 -4.568222528641e-02 9.962658041998e-01
1679 1.6770 -4.543618956639e-02 9.984565534779e-01
1680 1.6780 -4.519245108591e-02 1.000647302756e+00
1681 1.6790 -4.495101104191e-02 1.002838052034e+00
1682 1.6800 -4.471187063183e-02 1.005028801312e+00
1683 1.6810 -4.447503105358e-02 1.007219550591e+00
1684 1.6820 -4.424049350552e-02 1.009410299869e+00
1685 1.6830 -4.400825918650e-02 1.011601049147e+00
1686 1.6840 -4.377832929586e-02 1.013791798425e+00
1687 1.6850 -4.355070503340e-02 1.015982547703e+00
1688 1.6860 -4.332538759940e-02 1.018173296981e+00
1689 1.6870 -4.310237819460e-02 1.020364046260e+00
1690 1.6880 -4.288167802025e-02 1.022554795538e+00
1691 1.6890 -4.266328827806e-02 1.024745544816e+00
1692 1.6900 -4.244721017021e-02 1.026936294094e+00
1693 1.6910 -4.223344489937e-02 1.029127043372e+00
1694 1.6920 -4.202199366869e-02 1.031317792650e+00
1695 1.6930 -4.181285768180e-02 1.033508541929e+00
1696 1.6940 -4.160603814281e-02 1.035699291207e+00
1697 1.6950 -4.140153625631e-02 1.037890040485e+00
1698 1.6960 -4.119935322738e-02 1.040080789763e+00
1699 1.6970 -4.099949026156e-02 1.042271539041e+00
1700 1.6980 -4.080194856490e-02 1.044462288319e+00
1701 1.6990 -4.060672934393e-02 1.046653037598e+00
1702 1.7000 -4.041383380563e-02 1.048843786876e+00
1703 1.7010 -4.022326315752e-02 1.051034536154e+00
1704 1.7020 -4.003501860757e-02 1.053225285432e+00
1705 1.7030 -3.984910136423e-02 1.055416034710e+00
1706 1.7040 -3.966551263646e-02 1.057606783988e+00
1707 1.7050 -3.948425363369e-02 1.059797533267e+00
1708 1.7060 -3.930532556586e-02 1.061988282545e+00
1709 1.7070 -3.912872964337e-02 1.064179031823e+00
1710 1.7080 -3.895446707711e-02 1.066369781101e+00
1711 1.7090 -3.878253907849e-02 1.068560530379e+00
1712 1.7100 -3.861294685939e-02 1.070751279657e+00
1713 1.7110 -3.844569163217e-02 1.072942028936e+00
1714 1.7120 -3.828077460970e-02 1.075132778214e+00
1715 1.7130 -3.811819700533e-02 1.077323527492e+00
1716 1.7140 -3.795796003291e-02 1.079514276770e+00
1717 1.7150 -3.780006490677e-02 1.081705026048e+00
1718 1.7160 -3.764451284174e-02 1.083895775326e+00
1719 1.7170 -3.749130505316e-02 1.086086524605e+00
1720 1.7180 -3.734044275684e-02 1.088277273883e+00
1721 1.7190 -3.719192716909e-02 1.090468023161e+00
1722 1.7200 -3.704575950673e-02 1.092658772439e+00
1723 1.7210 -3.690194098706e-02 1.094849521717e+00
1724 1.7220 -3.676047282789e-02 1.097040270995e+00
1725 1.7230 -3.662135624751e-02 1.099231020274e+00
1726 1.7240 -3.648459246472e-02 1.101421769552e+00
1727 1.7250 -3.635018269882e-02 1.103612518830e+00
1728 1.7260 -3.621812816960e-02 1.105803268108e+00
1729 1.7270 -3.608843009736e-02 1.107994017386e+00
1730 1.7280 -3.596108970288e-02 1.110184766664e+00
1731 1.7290 -3.583610820747e-02 1.112375515943e+00
1732 1.7300 -3.571348683292e-02 1.114566265221e+00
1733 1.7310 -3.559322680151e-02 1.116757014499e+00
1734 1.7320 -3.547532933607e-02 1.118947763777e+00
1735 1.7330 -3.535979565987e-02 1.121138513055e+00
1736 1.7340 -3.524662699673e-02 1.123329262333e+00
1737 1.7350 -3.513582457095e-02 1.125520011612e+00
1738 1.7360 -3.502738960736e-02 1.127710760890e+00
1739 1.7370 -3.492132333125e-02 1.129901510168e+00
1740 1.7380 -3.481762696846e-02 1.132092259446e+00
1741 1.7390 -3.471630174532e-02 1.134283008724e+00
1742 1.7400 -3.461734888865e-02 1.136473758002e+00
1743 1.7410 -3.452076962580e-02 1.138664507281e+00
1744 1.7420 -3.442656518462e-02 1.140855256559e+00
1745 1.7430 -3.433473679346e-02 1.143046005837e+00
1746 1.7440 -3.424528568119e-02 1.145236755115e+00
1747 1.7450 -3.415821307718e-02 1.147427504393e+00
1748 1.7460 -3.407352021132e-02 1.149618253671e+00
1749 1.7470 -3.399120831400e-02 1.151809002950e+00
1750 1.7480 -3.391127861613e-02 1.153999752228e+00
1751 1.7490 -3.383373234912e-02 1.156190501506e+00
1752 1.7500 -3.375857074489e-02 1.158381250784e+00
1753 1.7510 -3.368579503590e-02 1.160572000062e+00
1754 1.7520 -3.361540645509e-02 1.162762749340e+00
1755 1.7530 -3.354740623592e-02 1.164953498619e+00
1756 1.7540 -3.348179561239e-02 1.167144247897e+00
1757 1.7550 -3.341857581898e-02 1.169334997175e+00
1758 1.7560 -3.335774809070e-02 1.171525746453e+00
1759 1.7570 -3.329931366307e-02 1.173716495731e+00
1760 1.7580 -3.324327377215e-02 1.175907245009e+00
1761 1.7590 -3.318962965448e-02 1.178097994287e+00
1762 1.7600 -3.313838254714e-02 1.180288743566e+00
1763 1.7610 -3.308953368773e-02 1.182479492844e+00
1764 1.7620 -3.304308431434e-02 1.184670242122e+00
1765 1.7630 -3.299903566562e-02 1.186860991400e+00
1766 1.7640 -3.295738898071e-02 1.189051740678e+00
1767 1.7650 -3.291814549928e-02 1.191242489956e+00
1768 1.7660 -3.288130646152e-02 1.193433239235e+00
1769 1.7670 -3.284687310813e-02 1.195623988513e+00
1770 1.7680 -3.281484668035e-02 1.197814737791e+00
1771 1.7690 -3.278522841993e-02 1.200005487069e+00
1772 1.7700 -3.275801956914e-02 1.202196236347e+00
1773 1.7710 -3.273322137079e-02 1.204386985625e+00
1774 1.7720 -3.271083506818e-02 1.206577734904e+00
1775 1.7730 -3.269086190517e-02 1.208768484182e+00
1776 1.7740 -3.267330312613e-02 1.210959233460e+00
1777 1.7750 -3.265815997596e-02 1.213149982738e+00
1778 1.7760 -3.264543370006e-02 1.215340732016e+00
1779 1.7770 -3.263512554439e-02 1.217531481294e+00
1780 1.7780 -3.262723675542e-02 1.219722230573e+00
1781 1.7790 -3.262176858015e-02 1.221912979851e+00
1782 1.7800 -3.261872226610e-02 1.224103729129e+00
1783 1.7810 -3.261809906134e-02 1.226294478407e+00
1784 1.7820 -3.261990021444e-02 1.228485227685e+00
1785 1.7830 -3.262412697452e-02 1.230675976963e+00
1786 1.7840 -3.263078059123e-02 1.232866726242e+00
1787 1.7850 -3.263986231473e-02 1.235057475520e+00
1788 1.7860 -3.265137339572e-02 1.237248224798e+00
1789 1.7870 -3.266531508546e-02 1.239438974076e+00
1790 1.7880 -3.268168863569e-02 1.241629723354e+00
1791 1.7890 -3.270049529872e-02 1.243820472632e+00
1792 1.7900 -3.272173632738e-02 1.246011221911e+00
1793 1.7910 -3.274541297505e-02 1.248201971189e+00
1794 1.7920 -3.277152649560e-02 1.250392720467e+00
1795 1.7930 -3.280007814349e-02 1.252583469745e+00
1796 1.7940 -3.283106917367e-02 1.254774219023e+00
1797 1.7950 -3.286450084166e-02 1.256964968301e+00
1798 1.7960 -3.290037440348e-02 1.259155717580e+00
1799 1.7970 -3.293869111572e-02 1.261346466858e+00
1800 1.7980 -3.297945223549e-02 1.263537216136e+00
1801 1.7990 -3.302265902044e-02 1.265727965414e+00
1802 1.8000 -3.306831272875e-02 1.267918714692e+00
1803 1.8010 -3.311641461916e-02 1.270109463970e+00
1804 1.8020 -3.316696595093e-02 1.272300213249e+00
1805 1.8030 -3.321996798386e-02 1.274490962527e+00
1806 1.8040 -3.327542197830e-02 1.276681711805e+00
1807 1.8050 -3.333332919514e-02 1.278872461083e+00
1808 1.8060 -3.339369089579e-02 1.281063210361e+00
1809 1.8070 -3.345650834224e-02 1.283253959639e+00
1810 1.8080 -3.352178279698e-02 1.285444708918e+00
1811 1.8090 -3.358951552308e-02 1.287635458196e+00
1812 1.8100 -3.365970778412e-02 1.289826207474e+00
1813 1.8110 -3.373236084424e-02 1.292016956752e+00
1814 1.8120 -3.380747596814e-02 1.294207706030e+00
1815 1.8130 -3.388505442103e-02 1.296398455308e+00
1816 1.8140 -3.396509746869e-02 1.298589204587e+00
1817 1.8150 -3.404760637744e-02 1.300779953865e+00
1818 1.8160 -3.413258241414e-02 1.302970703143e+00
1819 1.8170 -3.422002684620e-02 1.305161452421e+00
1820 1.8180 -3.430994094158e-02 1.307352201699e+00
1821 1.8190 -3.440232596879e-02 1.309542950977e+00
1822 1.8200 -3.449718319688e-02 1.311733700256e+00
1823 1.8210 -3.459451389545e-02 1.313924449534e+00
1824 1.8220 -3.469431933465e-02 1.316115198812e+00
1825 1.8230 -3.479660078518e-02 1.318305948090e+00
1826 1.8240 -3.490135951830e-02 1.320496697368e+00
1827 1.8250 -3.500859680581e-02 1.322687446646e+00
1828 1.8260 -3.511831392006e-02 1.324878195925e+00
1829 1.8270 -3.523051213395e-02 1.327068945203e+00
1830 1.8280 -3.534519272094e-02 1.329259694481e+00
1831 1.8290 -3.546235695504e-02 1.331450443759e+00
1832 1.8300 -3.558200611081e-02 1.333641193037e+00
1833 1.8310 -3.570414146337e-02 1.335831942315e+00
1834 1.8320 -3.582876428839e-02 1.338022691594e+00
1835 1.8330 -3.595587586208e-02 1.340213440872e+00
1836 1.8340 -3.608547746125e-02 1.342404190150e+00
1837 1.8350 -3.621757036320e-02 1.344594939428e+00
1838 1.8360 -3.635215584584e-02 1.346785688706e+00
1839 1.8370 -3.648923518762e-02 1.348976437984e+00
1840 1.8380 -3.662880966754e-02 1.351167187263e+00
1841 1.8390 -3.677088056516e-02 1.353357936541e+00
1842 1.8400 -3.691544916061e-02 1.355548685819e+00
1843 1.8410 -3.706251673456e-02 1.357739435097e+00
1844 1.8420 -3.721208456825e-02 1.359930184375e+00
1845 1.8430 -3.736415394348e-02 1.362120933653e+00
1846 1.8440 -3.751872614261e-02 1.364311682932e+00
1847 1.8450 -3.767580244855e-02 1.366502432210e+00
1848 1.8460 -3.783538414479e-02 1.368693181488e+00
1849 1.8470 -3.799747251537e-02 1.370883930766e+00
1850 1.8480 -3.816206884488e-02 1.373074680044e+00
1851 1.8490 -3.832917441851e-02 1.375265429322e+00
1852 1.8500 -3.849879052196e-02 1.377456178601e+00
1853 1.8510 -3.867091844155e-02 1.379646927879e+00
1854 1.8520 -3.884555946412e-02 1.381837677157e+00
1855 1.8530 -3.902271487709e-02 1.384028426435e+00
1856 1.8540 -3.920238596845e-02 1.386219175713e+00
1857 1.8550 -3.938457402675e-02 1.388409924991e+00
1858 1.8560 -3.956928034111e-02 1.390600674270e+00
1859 1.8570 -3.975650620122e-02 1.392791423548e+00
1860 1.8580 -3.994625289732e-02 1.394982172826e+00
1861 1.8590 -4.013852172023e-02 1.397172922104e+00
1862 1.8600 -4.033331396134e-02 1.399363671382e+00
1863 1.8610 -4.053063091259e-02 1.401554420660e+00
1864 1.8620 -4.073047386653e-02 1.403745169939e+00
1865 1.8630 -4.093284411624e-02 1.405935919217e+00
1866 1.8640 -4.113774295538e-02 1.408126668495e+00
1867 1.8650 -4.134517167818e-02 1.410317417773e+00
1868 1.8660 -4.155513157945e-02 1.412508167051e+00
1869 1.8670 -4.176762395457e-02 1.414698916329e+00
1870 1.8680 -4.198265009948e-02 1.416889665608e+00
1871 1.8690 -4.220021131071e-02 1.419080414886e+00
1872 1.8700 -4.242030888534e-02 1.421271164164e+00
1873 1.8710 -4.264294412104e-02 1.423461913442e+00
1874 1.8720 -4.286811831605e-02 1.425652662720e+00
1875 1.8730 -4.309583276918e-02 1.427843411998e+00
1876 1.8740 -4.332608877983e-02 1.430034161277e+00
1877 1.8750 -4.355888764796e-02 1.432224910555e+00
1878 1.8760 -4.379423067410e-02 1.434415659833e+00
1879 1.8770 -4.403211915938e-02 1.436606409111e+00
1880 1.8780 -4.427255440548e-02 1.438797158389e+00
1881 1.8790 -4.451553771467e-02 1.440987907667e+00
1882 1.8800 -4.476107038981e-02 1.443178656946e+00
1883 1.8810 -4.500915373432e-02 1.445369406224e+00
1884 1.8820 -4.525978905221e-02 1.447560155502e+00
1885 1.8830 -4.551297764805e-02 1.449750904780e+00
1886 1.8840 -4.576872082701e-02 1.451941654058e+00
1887 1.8850 -4.602701989483e-02 1.454132403336e+00
1888 1.8860 -4.628787615784e-02 1.456323152615e+00
1889 1.8870 -4.655129092294e-02 1.458513901893e+00
1890 1.8880 -4.681726549762e-02 1.460704651171e+00
1891 1.8890 -4.708580118995e-02 1.462895400449e+00
1892 1.8900 -4.735689930857e-02 1.465086149727e+00
1893 1.8910 -4.763056116273e-02 1.467276899005e+00
1894 1.8920 -4.790678806223e-02 1.469467648283e+00
1895 1.8930 -4.818558131749e-02 1.471658397562e+00
1896 1.8940 -4.846694223947e-02 1.473849146840e+00
1897 1.8950 -4.875087213977e-02 1.476039896118e+00
1898 1.8960 -4.903737233053e-02 1.478230645396e+00
1899 1.8970 -4.932644412449e-02 1.480421394674e+00
1900 1.8980 -4.961808883498e-02 1.482612143952e+00
1901 1.8990 -4.991230777592e-02 1.484802893231e+00
1902 1.9000 -5.020910226181e-02 1.486993642509e+00
1903 1.9010 -5.050847360774e-02 1.489184391787e+00
1904 1.9020 -5.081042312938e-02 1.491375141065e+00
1905 1.9030 -5.111495214302e-02 1.493565890343e+00
1906 1.9040 -5.142206196549e-02 1.495756639621e+00
1907 1.9050 -5.173175391424e-02 1.497947388900e+00
1908 1.9060 -5.204402930733e-02 1.500138138178e+00
1909 1.9070 -5.235888946335e-02 1.502328887456e+00
1910 1.9080 -5.267633570155e-02 1.504519636734e+00
1911 1.9090 -5.299636934172e-02 1.506710386012e+00
1912 1.9100 -5.331899170427e-02 1.508901135290e+00
1913 1.9110 -5.364420411019e-02 1.511091884569e+00
1914 1.9120 -5.397200788107e-02 1.513282633847e+00
1915 1.9130 -5.430240433909e-02 1.515473383125e+00
1916 1.9140 -5.463539480702e-02 1.517664132403e+00
1917 1.9150 -5.497098060823e-02 1.519854881681e+00
1918 1.9160 -5.530916306669e-02 1.522045630959e+00
1919 1.9170 -5.564994350695e-02 1.524236380238e+00
1920 1.9180 -5.599332325418e-02 1.526427129516e+00
1921 1.9190 -5.633930363411e-02 1.528617878794e+00
1922 1.9200 -5.668788597310e-02 1.530808628072e+00
1923 1.9210 -5.703907159809e-02 1.532999377350e+00
1924 1.9220 -5.739286183664e-02 1.535190126628e+00
1925 1.9230 -5.774925801686e-02 1.537380875907e+00
1926 1.9240 -5.810826146752e-02 1.539571625185e+00
1927 1.9250 -5.846987351795e-02 1.541762374463e+00
1928 1.9260 -5.883409549808e-02 1.543953123741e+00
1929 1.9270 -5.920092873845e-02 1.546143873019e+00
1930 1.9280 -5.957037457021e-02 1.548334622297e+00
1931 1.9290 -5.994243432510e-02 1.550525371576e+00
1932 1.9300 -6.031710933544e-02 1.552716120854e+00
1933 1.9310 -6.069440093420e-02 1.554906870132e+00
1934 1.9320 -6.107431045492e-02 1.557097619410e+00
1935 1.9330 -6.145683923174e-02 1.559288368688e+00
1936 1.9340 -6.184198859942e-02 1.561479117966e+00
1937 1.9350 -6.222975989331e-02 1.563669867245e+00
1938 1.9360 -6.262015444938e-02 1.565860616523e+00
1939 1.9370 -6.301317360419e-02 1.568051365801e+00
1940 1.9380 -6.340881869492e-02 1.570242115079e+00
1941 1.9390 -6.380709105933e-02 1.572432864357e+00
1942 1.9400 -6.420799203581e-02 1.574623613635e+00
1943 1.9410 -6.461152296336e-02 1.576814362914e+00
1944 1.9420 -6.501768518156e-02 1.579005112192e+00
1945 1.9430 -6.542648003063e-02 1.581195861470e+00
1946 1.9440 -6.583790885136e-02 1.583386610748e+00
1947 1.9450 -6.625197298520e-02 1.585577360026e+00
1948 1.9460 -6.660258976073e-02 1.587834193318e+00
1949 1.9470 -6.628644364344e-02 1.590760427500e+00
1950 1.9480 -6.597293686716e-02 1.593686661682e+00
1951 1.9490 -6.566207077577e-02 1.596612895864e+00
1952 1.9500 -6.535384671371e-02 1.599539130047e+00
1953 1.9510 -6.504826602608e-02 1.602465364229e+00
1954 1.9520 -6.474533005857e-02 1.605391598411e+00
1955 1.9530 -6.444504015748e-02 1.608317832593e+00
1956 1.9540 -6.414739766974e-02 1.611244066775e+00
1957 1.9550 -6.385240394287e-02 1.614170300957e+00
1958 1.9560 -6.356006032503e-02 1.617096535140e+00
1959 1.9570 -6.327036816497e-02 1.620022769322e+00
1960 1.9580 -6.298332881206e-02 1.622949003504e+00
1961 1.9590 -6.269894361630e-02 1.625875237686e+00
1962 1.9600 -6.241721392829e-02 1.628801471868e+00
1963 1.9610 -6.213814109925e-02 1.631727706051e+00
1964 1.9620 -6.186172648102e-02 1.634653940233e+00
1965 1.9630 -6.158797142605e-02 1.637580174415e+00
1966 1.9640 -6.131687728741e-02 1.640506408597e+00
1967 1.9650 -6.104844541880e-02 1.643432642779e+00
1968 1.9660 -6.078267717452e-02 1.646358876961e+00
1969 1.9670 -6.051957390950e-02 1.649285111144e+00
1970 1.9680 -6.025913697929e-02 1.652211345326e+00
1971 1.9690 -6.000136774004e-02 1.655137579508e+00
1972 1.9700 -5.974626754855e-02 1.658063813690e+00
1973 1.9710 -5.949383776222e-02 1.660990047872e+00
1974 1.9720 -5.924407973907e-02 1.663916282054e+00
1975 1.9730 -5.899699483777e-02 1.666842516237e+00
1976 1.9740 -5.875258441757e-02 1.669768750419e+00
1977 1.9750 -5.851084983838e-02 1.672694984601e+00
1978 1.9760 -5.827179246070e-02 1.675621218783e+00
1979 1.9770 -5.803541364568e-02 1.678547452965e+00
1980 1.9780 -5.780171475508e-02 1.681473687147e+00
1981 1.9790 -5.757069715130e-02 1.684399921330e+00
1982 1.9800 -5.734236219733e-02 1.687326155512e+00
1983 1.9810 -5.711671125682e-02 1.690252389694e+00
1984 1.9820 -5.689374569404e-02 1.693178623876e+00
1985 1.9830 -5.667346687387e-02 1.696104858058e+00
1986 1.9840 -5.645587616183e-02 1.699031092241e+00
1987 1.9850 -5.624097492406e-02 1.701957326423e+00
1988 1.9860 -5.602876452733e-02 1.704883560605e+00
1989 1.9870 -5.581924633905e-02 1.707809794787e+00
1990 1.9880 -5.561242172723e-02 1.710736028969e+00
1991 1.9890 -5.540829206054e-02 1.713662263151e+00
1992 1.9900 -5.520685870827e-02 1.716588497334e+00
1993 1.9910 -5.500812304032e-02 1.719514731516e+00
1994 1.9920 -5.481208642724e-02 1.722440965698e+00
1995 1.9930 -5.461875024021e-02 1.725367199880e+00
1996 1.9940 -5.442811585103e-02 1.728293434062e+00
1997 1.9950 -5.424018463216e-02 1.731219668244e+00
1998 1.9960 -5.405495795665e-02 1.734145902427e+00
1999 1.9970 -5.387243719821e-02 1.737072136609e+00
2000 1.9980 -5.369262373118e-02 1.739998370791e+00
2001 1.9990 -5.351551893053e-02 1.742924604973e+00

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())