E-022-spectral-measure.py
Experiments: E-022 · script updated 08-19-2026
E-022-spectral-measure.csv
— 153.1 KB, updated 08-19-2026
| # | a | k | z_k | w_k |
|---|---|---|---|---|
| 2502 | 10 | 785 | 246.854982647258 | 2.3751672200e-01 |
| 2503 | 10 | 786 | 247.141260074982 | 1.0517851051e+00 |
| 2504 | 10 | 787 | 247.514982201679 | 6.5043967706e-02 |
| 2505 | 10 | 788 | 247.833968435548 | 7.1217792915e-02 |
| 2506 | 10 | 789 | 248.105336264139 | 1.0586628924e+00 |
| 2507 | 10 | 790 | 248.448342419767 | 2.4847677971e-01 |
| 2508 | 10 | 791 | 248.775668031707 | 6.4080231598e-02 |
| 2509 | 10 | 792 | 249.111466212722 | 6.7665047276e-02 |
| 2510 | 10 | 793 | 249.532774297661 | 6.4170226749e-01 |
| 2511 | 10 | 794 | 249.633825064566 | 5.0134147633e-01 |
| 2512 | 10 | 795 | 249.926951918337 | 2.1855920583e-01 |
| 2513 | 10 | 796 | 250.320040646869 | 6.6048314172e-02 |
| 2514 | 10 | 797 | 250.649095746752 | 6.2237146276e-02 |
| 2515 | 10 | 798 | 251.011623846214 | 1.0648805436e+00 |
| 2516 | 10 | 799 | 251.269727925297 | 6.7178232383e-02 |
| 2517 | 10 | 800 | 251.598233491401 | 6.5072981032e-02 |
| 2518 | 10 | 801 | 251.971320146950 | 2.5324988943e-01 |
| 2519 | 10 | 802 | 252.213247158370 | 7.4665802369e-02 |
| 2520 | 10 | 803 | 252.506149998492 | 2.7033528693e-01 |
| 2521 | 10 | 804 | 252.891408867797 | 9.1089375757e-02 |
| 2522 | 10 | 805 | 253.078238035459 | 1.0271220483e+00 |
| 2523 | 10 | 806 | 253.462214472814 | 6.5836908170e-02 |
| 2524 | 10 | 807 | 253.791352042303 | 6.7152961137e-02 |
| 2525 | 10 | 808 | 254.116843223347 | 7.0474438175e-02 |
| 2526 | 10 | 809 | 254.447566218782 | 2.7765237687e-01 |
| 2527 | 10 | 810 | 254.749739323806 | 6.4513432317e-02 |
| 2528 | 10 | 811 | 255.109837014194 | 1.0510454455e-01 |
| 2529 | 10 | 812 | 255.304342084535 | 1.2445883567e+00 |
| 2530 | 10 | 813 | 255.687285606508 | 6.6011622127e-02 |
| 2531 | 10 | 814 | 255.990599879437 | 6.9464691912e-02 |
| 2532 | 10 | 815 | 256.375744026184 | 1.0506244488e+00 |
| 2533 | 10 | 816 | 256.607203596065 | 7.2562129823e-02 |
| 2534 | 10 | 817 | 256.938277826191 | 7.5126050157e-02 |
| 2535 | 10 | 818 | 257.258512204257 | 6.4686512622e-02 |
| 2536 | 10 | 819 | 257.584783260031 | 6.5540908080e-02 |
| 2537 | 10 | 820 | 257.899935356574 | 6.6945564785e-02 |
| 2538 | 10 | 821 | 258.257066099444 | 2.9979411119e-01 |
| 2539 | 10 | 822 | 258.603012520595 | 1.0502763260e+00 |
| 2540 | 10 | 823 | 258.818954026484 | 8.4249969560e-02 |
| 2541 | 10 | 824 | 259.199527442417 | 1.1232313363e-01 |
| 2542 | 10 | 825 | 259.392759260198 | 2.6096466697e-01 |
| 2543 | 10 | 826 | 259.864364330102 | 1.0242137675e+00 |
| 2544 | 10 | 827 | 260.057705691878 | 1.1446711703e-01 |
| 2545 | 10 | 828 | 260.343405454223 | 3.1204131502e-01 |
| 2546 | 10 | 829 | 260.794014213701 | 1.0146640374e+00 |
| 2547 | 10 | 830 | 260.963342176680 | 1.0926251468e-01 |
| 2548 | 10 | 831 | 261.333327141931 | 7.5371976380e-02 |
| 2549 | 10 | 832 | 261.655788235662 | 6.8350086607e-02 |
| 2550 | 10 | 833 | 262.047407911492 | 2.3405232168e-01 |
| 2551 | 10 | 834 | 262.207949843376 | 1.5537397571e-01 |
| 2552 | 10 | 835 | 262.574350248829 | 7.4363576066e-02 |
| 2553 | 10 | 836 | 262.906591467261 | 6.7495449137e-02 |
| 2554 | 10 | 837 | 263.230516551779 | 6.8022166926e-02 |
| 2555 | 10 | 838 | 263.573899584777 | 1.3396897284e+00 |
| 2556 | 10 | 839 | 263.862682489663 | 7.3398798973e-02 |
| 2557 | 10 | 840 | 264.172334493103 | 7.2829769365e-02 |
| 2558 | 10 | 841 | 264.504656292575 | 6.9775039285e-02 |
| 2559 | 10 | 842 | 264.882720637564 | 1.6703519084e-01 |
| 2560 | 10 | 843 | 265.047840700899 | 2.5205960075e-01 |
| 2561 | 10 | 844 | 265.526949746893 | 7.5650384928e-01 |
| 2562 | 10 | 845 | 265.624913520259 | 3.6915179854e-01 |
| 2563 | 10 | 846 | 266.036274789237 | 7.0023877639e-02 |
| 2564 | 10 | 847 | 266.382351327551 | 8.2485468790e-02 |
| 2565 | 10 | 848 | 266.619234203187 | 1.0611343186e+00 |
| 2566 | 10 | 849 | 267.021440641062 | 3.7357447716e-01 |
| 2567 | 10 | 850 | 267.303451552976 | 6.8568544732e-02 |
| 2568 | 10 | 851 | 267.624487832537 | 7.3181457574e-02 |
| 2569 | 10 | 852 | 267.923174277270 | 1.0671198462e+00 |
| 2570 | 10 | 853 | 268.261582311244 | 7.4712495288e-02 |
| 2571 | 10 | 854 | 268.575378008777 | 3.8235351535e-01 |
| 2572 | 10 | 855 | 268.898167777249 | 6.5628462683e-02 |
| 2573 | 10 | 856 | 269.218210286993 | 7.1612492874e-02 |
| 2574 | 10 | 857 | 269.549323878880 | 7.0228794765e-02 |
| 2575 | 10 | 858 | 269.955598179040 | 9.8880738256e-01 |
| 2576 | 10 | 859 | 270.115757967174 | 1.6214167534e-01 |
| 2577 | 10 | 860 | 270.389399592021 | 3.7745295049e-01 |
| 2578 | 10 | 861 | 270.776465294215 | 7.9017937905e-02 |
| 2579 | 10 | 862 | 271.151424405568 | 3.9358290182e-01 |
| 2580 | 10 | 863 | 271.480795094453 | 1.0228650189e+00 |
| 2581 | 10 | 864 | 271.645095643234 | 1.2894144376e-01 |
| 2582 | 10 | 865 | 272.018129525786 | 7.4910536794e-02 |
| 2583 | 10 | 866 | 272.308827024598 | 4.1161459194e-01 |
| 2584 | 10 | 867 | 272.652304098674 | 7.7417811708e-02 |
| 2585 | 10 | 868 | 272.989716070344 | 7.8953994601e-02 |
| 2586 | 10 | 869 | 273.387972144929 | 3.2846545526e-01 |
| 2587 | 10 | 870 | 273.486600698054 | 7.9924198185e-01 |
| 2588 | 10 | 871 | 273.903047441318 | 8.1209400199e-02 |
| 2589 | 10 | 872 | 274.226440055741 | 7.7273513872e-02 |
| 2590 | 10 | 873 | 274.548278540918 | 7.3316742748e-02 |
| 2591 | 10 | 874 | 274.834882652852 | 4.4366333997e-01 |
| 2592 | 10 | 875 | 275.193845695900 | 7.6478268672e-02 |
| 2593 | 10 | 876 | 275.576642950532 | 1.0230635629e+00 |
| 2594 | 10 | 877 | 275.753270103775 | 1.1104892151e-01 |
| 2595 | 10 | 878 | 276.099153087217 | 8.1600817209e-02 |
| 2596 | 10 | 879 | 276.447482126222 | 1.4573555578e+00 |
| 2597 | 10 | 880 | 276.739278015791 | 7.4956967946e-02 |
| 2598 | 10 | 881 | 277.075068921044 | 7.1606856265e-02 |
| 2599 | 10 | 882 | 277.394428511551 | 8.2210793818e-02 |
| 2600 | 10 | 883 | 277.748028350691 | 1.1280844903e-01 |
| 2601 | 10 | 884 | 277.935725037851 | 4.3045734236e-01 |
| 2602 | 10 | 885 | 278.255262423664 | 1.0664573397e+00 |
| 2603 | 10 | 886 | 278.633368264191 | 7.7802447718e-02 |
| 2604 | 10 | 887 | 278.994312304539 | 4.7687385631e-01 |
| 2605 | 10 | 888 | 279.232379464901 | 1.0799119728e+00 |
| 2606 | 10 | 889 | 279.579372133303 | 8.0044105463e-02 |
| 2607 | 10 | 890 | 279.904491085534 | 8.2561082674e-02 |
| 2608 | 10 | 891 | 280.216976554825 | 7.8385507698e-02 |
| 2609 | 10 | 892 | 280.535138481442 | 7.9593751249e-02 |
| 2610 | 10 | 893 | 280.902890617517 | 1.3103995445e-01 |
| 2611 | 10 | 894 | 281.074819867762 | 4.3900190780e-01 |
| 2612 | 10 | 895 | 281.476164655914 | 7.9220745178e-02 |
| 2613 | 10 | 896 | 281.855296056327 | 1.8942648708e-01 |
| 2614 | 10 | 897 | 282.011094642969 | 4.0638652619e-01 |
| 2615 | 10 | 898 | 282.459519184865 | 1.0669876842e+00 |
| 2616 | 10 | 899 | 282.727615298865 | 9.8509702548e-02 |
| 2617 | 10 | 900 | 283.115096750321 | 2.6451581655e-01 |
| 2618 | 10 | 901 | 283.236081576645 | 8.8460383593e-01 |
| 2619 | 10 | 902 | 283.654316300049 | 5.3664352145e-01 |
| 2620 | 10 | 903 | 283.973357539600 | 9.0144845927e-02 |
| 2621 | 10 | 904 | 284.304151322347 | 7.8537642257e-02 |
| 2622 | 10 | 905 | 284.627560452005 | 1.0000254645e-01 |
| 2623 | 10 | 906 | 284.843577950178 | 1.0520974273e+00 |
| 2624 | 10 | 907 | 285.233711959852 | 8.1666028552e-02 |
| 2625 | 10 | 908 | 285.556554683553 | 8.4712250428e-02 |
| 2626 | 10 | 909 | 285.886235983495 | 8.1628183800e-02 |
| 2627 | 10 | 910 | 286.254930974199 | 5.6596458676e-01 |
| 2628 | 10 | 911 | 286.597496095637 | 4.4469742400e-01 |
| 2629 | 10 | 912 | 286.705415298755 | 7.1904624920e-01 |
| 2630 | 10 | 913 | 287.209239875919 | 3.3321143595e-01 |
| 2631 | 10 | 914 | 287.345087140096 | 3.2331688936e-01 |
| 2632 | 10 | 915 | 287.833519941735 | 3.6167946181e-01 |
| 2633 | 10 | 916 | 287.945322218437 | 8.0554368555e-01 |
| 2634 | 10 | 917 | 288.434956322527 | 5.4179995030e-01 |
| 2635 | 10 | 918 | 288.616360967076 | 1.3167868402e-01 |
| 2636 | 10 | 919 | 288.980544328969 | 8.1514349658e-02 |
| 2637 | 10 | 920 | 289.307144478852 | 9.2837913169e-02 |
| 2638 | 10 | 921 | 289.582664012957 | 1.0829080605e+00 |
| 2639 | 10 | 922 | 289.972674884068 | 6.1860961121e-01 |
| 2640 | 10 | 923 | 290.251730751259 | 8.0096497767e-02 |
| 2641 | 10 | 924 | 290.568573888641 | 1.0341567917e-01 |
| 2642 | 10 | 925 | 290.893316602945 | 7.6738310359e-02 |
| 2643 | 10 | 926 | 291.204661478702 | 9.6472904842e-02 |
| 2644 | 10 | 927 | 291.483328682134 | 6.4141796536e-01 |
| 2645 | 10 | 928 | 291.845573217871 | 1.0843620577e+00 |
| 2646 | 10 | 929 | 292.150460709462 | 7.9545277344e-02 |
| 2647 | 10 | 930 | 292.469500648832 | 8.4362758702e-02 |
| 2648 | 10 | 931 | 292.795544691669 | 9.2230161019e-02 |
| 2649 | 10 | 932 | 293.115193808582 | 9.4377129415e-02 |
| 2650 | 10 | 933 | 293.527641344909 | 8.1284121035e-01 |
| 2651 | 10 | 934 | 293.636597784610 | 3.4741526791e-01 |
| 2652 | 10 | 935 | 294.094171790105 | 6.6701075581e-01 |
| 2653 | 10 | 936 | 294.312749262015 | 1.0564525982e-01 |
| 2654 | 10 | 937 | 294.670634450524 | 6.9281223779e-01 |
| 2655 | 10 | 938 | 294.966171436200 | 1.1048731900e+00 |
| 2656 | 10 | 939 | 295.299359502993 | 8.5245212270e-02 |
| 2657 | 10 | 940 | 295.576448653489 | 1.0828907287e+00 |
| 2658 | 10 | 941 | 295.932634590979 | 8.6096205763e-02 |
| 2659 | 10 | 942 | 296.250901802452 | 8.5129960712e-02 |
| 2660 | 10 | 943 | 296.557735836004 | 9.5847950729e-02 |
| 2661 | 10 | 944 | 296.848979858469 | 7.2632938893e-01 |
| 2662 | 10 | 945 | 297.199844637145 | 9.5440534292e-02 |
| 2663 | 10 | 946 | 297.523136220031 | 9.0116353951e-02 |
| 2664 | 10 | 947 | 297.947532153137 | 8.2318562796e-01 |
| 2665 | 10 | 948 | 298.068938544568 | 3.5907608348e-01 |
| 2666 | 10 | 949 | 298.374933752024 | 7.5215999272e-01 |
| 2667 | 10 | 950 | 298.765797555411 | 9.5780564156e-02 |
| 2668 | 10 | 951 | 299.147934130288 | 1.8572536274e-01 |
| 2669 | 10 | 952 | 299.312862632890 | 6.8094578885e-01 |
| 2670 | 10 | 953 | 299.785774864598 | 5.7652544362e-01 |
| 2671 | 10 | 954 | 299.893578977078 | 5.9980370429e-01 |
| 2672 | 12 | 1 | 0.374608747847 | 4.3748745327e-02 |
| 2673 | 12 | 2 | 0.644042632274 | 4.2382697912e-02 |
| 2674 | 12 | 3 | 0.909060322368 | 4.2034850351e-02 |
| 2675 | 12 | 4 | 1.172677822045 | 4.1894906216e-02 |
| 2676 | 12 | 5 | 1.435669320594 | 4.1824962816e-02 |
| 2677 | 12 | 6 | 1.698326559281 | 4.1784743432e-02 |
| 2678 | 12 | 7 | 1.960784202772 | 4.1759846421e-02 |
| 2679 | 12 | 8 | 2.223113049677 | 4.1743009692e-02 |
| 2680 | 12 | 9 | 2.485353951324 | 4.1731560486e-02 |
| 2681 | 12 | 10 | 2.747533151723 | 4.1722873193e-02 |
| 2682 | 12 | 11 | 3.009664737578 | 4.1716576615e-02 |
| 2683 | 12 | 12 | 3.271763164243 | 4.1712137754e-02 |
| 2684 | 12 | 13 | 3.533834580718 | 4.1707708815e-02 |
| 2685 | 12 | 14 | 3.795884032171 | 4.1705302852e-02 |
| 2686 | 12 | 15 | 4.057916058788 | 4.1702561558e-02 |
| 2687 | 12 | 16 | 4.319939152828 | 4.1701173738e-02 |
| 2688 | 12 | 17 | 4.581946479720 | 4.1699155017e-02 |
| 2689 | 12 | 18 | 4.843946916554 | 4.1697503936e-02 |
| 2690 | 12 | 19 | 5.105937991687 | 4.1697608972e-02 |
| 2691 | 12 | 20 | 5.367928050010 | 4.1695316022e-02 |
| 2692 | 12 | 21 | 5.629908189278 | 4.1696782857e-02 |
| 2693 | 12 | 22 | 5.891887750330 | 4.1692815304e-02 |
| 2694 | 12 | 23 | 6.153861906712 | 4.1696549402e-02 |
| 2695 | 12 | 24 | 6.415836225632 | 4.1692880334e-02 |
| 2696 | 12 | 25 | 6.677806447083 | 4.1693830184e-02 |
| 2697 | 12 | 26 | 6.939776761951 | 4.1694510720e-02 |
| 2698 | 12 | 27 | 7.201746038101 | 4.1693529076e-02 |
| 2699 | 12 | 28 | 7.463718445462 | 4.1692849823e-02 |
| 2700 | 12 | 29 | 7.725684912524 | 4.1696012218e-02 |
| 2701 | 12 | 30 | 7.987662366552 | 4.1692677251e-02 |
| 2702 | 12 | 31 | 8.249633604576 | 4.1694972712e-02 |
| 2703 | 12 | 32 | 8.511611515849 | 4.1696292561e-02 |
| 2704 | 12 | 33 | 8.773591017360 | 4.1694712912e-02 |
| 2705 | 12 | 34 | 9.035587893566 | 4.1698153943e-02 |
| 2706 | 12 | 35 | 9.297564009935 | 4.1696912467e-02 |
| 2707 | 12 | 36 | 9.559572828602 | 4.1698390832e-02 |
| 2708 | 12 | 37 | 9.821576156358 | 4.1702593691e-02 |
| 2709 | 12 | 38 | 10.083604744331 | 4.1702679486e-02 |
| 2710 | 12 | 39 | 10.345630637141 | 4.1703875608e-02 |
| 2711 | 12 | 40 | 10.607685749253 | 4.1708491104e-02 |
| 2712 | 12 | 41 | 10.869744341282 | 4.1711640611e-02 |
| 2713 | 12 | 42 | 11.131843614200 | 4.1714143193e-02 |
| 2714 | 12 | 43 | 11.393976291723 | 4.1725146101e-02 |
| 2715 | 12 | 44 | 11.656140276745 | 4.1729025167e-02 |
| 2716 | 12 | 45 | 11.918383965104 | 4.1740078082e-02 |
| 2717 | 12 | 46 | 12.180692458724 | 4.1760936376e-02 |
| 2718 | 12 | 47 | 12.443130967623 | 4.1776525804e-02 |
| 2719 | 12 | 48 | 12.705756938015 | 4.1822633832e-02 |
| 2720 | 12 | 49 | 12.968719237013 | 4.1887487645e-02 |
| 2721 | 12 | 50 | 13.232253266408 | 4.2017947214e-02 |
| 2722 | 12 | 51 | 13.497145433915 | 4.2351817617e-02 |
| 2723 | 12 | 52 | 13.766225684089 | 4.3655379648e-02 |
| 2724 | 12 | 53 | 14.114518262658 | 7.1049721716e-01 |
| 2725 | 12 | 54 | 14.175518567242 | 3.6493754232e-01 |
| 2726 | 12 | 55 | 14.517237614771 | 4.3646783570e-02 |
| 2727 | 12 | 56 | 14.786283781695 | 4.2351215068e-02 |
| 2728 | 12 | 57 | 15.051213859441 | 4.2020883306e-02 |
| 2729 | 12 | 58 | 15.314711405697 | 4.1888366646e-02 |
| 2730 | 12 | 59 | 15.577721867572 | 4.1820965798e-02 |
| 2731 | 12 | 60 | 15.840331077420 | 4.1784451432e-02 |
| 2732 | 12 | 61 | 16.102815270808 | 4.1762952160e-02 |
| 2733 | 12 | 62 | 16.365144758351 | 4.1741804051e-02 |
| 2734 | 12 | 63 | 16.627385561237 | 4.1734671954e-02 |
| 2735 | 12 | 64 | 16.889607863410 | 4.1733193433e-02 |
| 2736 | 12 | 65 | 17.151770403612 | 4.1718196540e-02 |
| 2737 | 12 | 66 | 17.413914582411 | 4.1721362359e-02 |
| 2738 | 12 | 67 | 17.676026573261 | 4.1718656111e-02 |
| 2739 | 12 | 68 | 17.938144099186 | 4.1711652792e-02 |
| 2740 | 12 | 69 | 18.200252066456 | 4.1724049089e-02 |
| 2741 | 12 | 70 | 18.462396261046 | 4.1716315028e-02 |
| 2742 | 12 | 71 | 18.724480478520 | 4.1713301486e-02 |
| 2743 | 12 | 72 | 18.986666721223 | 4.1739031121e-02 |
| 2744 | 12 | 73 | 19.248854522131 | 4.1722789030e-02 |
| 2745 | 12 | 74 | 19.511075104343 | 4.1749943765e-02 |
| 2746 | 12 | 75 | 19.773518702413 | 4.1782635461e-02 |
| 2747 | 12 | 76 | 20.036085549946 | 4.1817127369e-02 |
| 2748 | 12 | 77 | 20.299247042271 | 4.1954307830e-02 |
| 2749 | 12 | 78 | 20.563766292130 | 4.2362418654e-02 |
| 2750 | 12 | 79 | 20.838175322966 | 4.7811705095e-02 |
| 2751 | 12 | 80 | 21.024860057283 | 1.0322349347e+00 |
| 2752 | 12 | 81 | 21.334958129061 | 4.2661872220e-02 |
| 2753 | 12 | 82 | 21.600380814519 | 4.2001383452e-02 |
| 2754 | 12 | 83 | 21.863639815802 | 4.1830089072e-02 |
| 2755 | 12 | 84 | 22.126314390216 | 4.1793787542e-02 |
| 2756 | 12 | 85 | 22.388734667750 | 4.1745801956e-02 |
| 2757 | 12 | 86 | 22.651015413980 | 4.1730946942e-02 |
| 2758 | 12 | 87 | 22.913125655281 | 4.1723104854e-02 |
| 2759 | 12 | 88 | 23.175307479805 | 4.1714387571e-02 |
| 2760 | 12 | 89 | 23.437382484678 | 4.1714568208e-02 |
| 2761 | 12 | 90 | 23.699440969233 | 4.1710870465e-02 |
| 2762 | 12 | 91 | 23.961554793754 | 4.1710263117e-02 |
| 2763 | 12 | 92 | 24.223580678621 | 4.1709016324e-02 |
| 2764 | 12 | 93 | 24.485613194481 | 4.1694904397e-02 |
| 2765 | 12 | 94 | 24.747630175021 | 4.1703196939e-02 |
| 2766 | 12 | 95 | 25.010805140443 | 1.0416920034e+00 |
| 2767 | 12 | 96 | 25.271631462885 | 4.1710094125e-02 |
| 2768 | 12 | 97 | 25.533629059787 | 4.1704754812e-02 |
| 2769 | 12 | 98 | 25.795662811188 | 4.1704911004e-02 |
| 2770 | 12 | 99 | 26.057696218870 | 4.1707607865e-02 |
| 2771 | 12 | 100 | 26.319739561395 | 4.1703990796e-02 |
| 2772 | 12 | 101 | 26.581782064214 | 4.1719535368e-02 |
| 2773 | 12 | 102 | 26.843859345122 | 4.1690780488e-02 |
| 2774 | 12 | 103 | 27.105930047150 | 4.1743866889e-02 |
| 2775 | 12 | 104 | 27.367963790885 | 4.1671375072e-02 |
| 2776 | 12 | 105 | 27.630093737068 | 4.1746637216e-02 |
| 2777 | 12 | 106 | 27.892154890654 | 4.1713280213e-02 |
| 2778 | 12 | 107 | 28.154446364698 | 4.1738759073e-02 |
| 2779 | 12 | 108 | 28.416718842966 | 4.1763721460e-02 |
| 2780 | 12 | 109 | 28.679078274248 | 4.1763701120e-02 |
| 2781 | 12 | 110 | 28.941534813883 | 4.1773085188e-02 |
| 2782 | 12 | 111 | 29.204277651898 | 4.1889851668e-02 |
| 2783 | 12 | 112 | 29.467504117934 | 4.1897607247e-02 |
| 2784 | 12 | 113 | 29.731603138646 | 4.2206429217e-02 |
| 2785 | 12 | 114 | 29.998568921055 | 4.3036846524e-02 |
| 2786 | 12 | 115 | 30.294268748306 | 6.8551429900e-02 |
| 2787 | 12 | 116 | 30.430182281321 | 1.0090839924e+00 |
| 2788 | 12 | 117 | 30.759344883819 | 4.3223621339e-02 |
| 2789 | 12 | 118 | 31.027025587376 | 4.2245883713e-02 |
| 2790 | 12 | 119 | 31.291424253822 | 4.1967760941e-02 |
| 2791 | 12 | 120 | 31.554880202003 | 4.1925672268e-02 |
| 2792 | 12 | 121 | 31.818294723665 | 4.1920155233e-02 |
| 2793 | 12 | 122 | 32.081636588309 | 4.1940789108e-02 |
| 2794 | 12 | 123 | 32.345710277037 | 4.2152347540e-02 |
| 2795 | 12 | 124 | 32.612295966452 | 4.2964414552e-02 |
| 2796 | 12 | 125 | 32.931328235494 | 1.0253111457e+00 |
| 2797 | 12 | 126 | 33.096724252044 | 5.3667860672e-02 |
| 2798 | 12 | 127 | 33.378998240218 | 4.2666862323e-02 |
| 2799 | 12 | 128 | 33.644829895329 | 4.2076913059e-02 |
| 2800 | 12 | 129 | 33.908444297297 | 4.1883295082e-02 |
| 2801 | 12 | 130 | 34.171260365918 | 4.1818653911e-02 |
| 2802 | 12 | 131 | 34.433971631349 | 4.1772138051e-02 |
| 2803 | 12 | 132 | 34.696300057501 | 4.1800420301e-02 |
| 2804 | 12 | 133 | 34.958706293152 | 4.1690470322e-02 |
| 2805 | 12 | 134 | 35.220912284504 | 4.1764712687e-02 |
| 2806 | 12 | 135 | 35.482925219131 | 4.1696793068e-02 |
| 2807 | 12 | 136 | 35.745155999410 | 4.1729771466e-02 |
| 2808 | 12 | 137 | 36.007257545989 | 4.1747364735e-02 |
| 2809 | 12 | 138 | 36.269211789287 | 4.1683124900e-02 |
| 2810 | 12 | 139 | 36.531516870725 | 4.1739930194e-02 |
| 2811 | 12 | 140 | 36.793471609041 | 4.1751475281e-02 |
| 2812 | 12 | 141 | 37.055638671387 | 4.1651761547e-02 |
| 2813 | 12 | 142 | 37.317655978625 | 4.1805169111e-02 |
| 2814 | 12 | 143 | 37.585920300675 | 1.0416116366e+00 |
| 2815 | 12 | 144 | 37.841616884955 | 4.1744172124e-02 |
| 2816 | 12 | 145 | 38.103561750901 | 4.1709717150e-02 |
| 2817 | 12 | 146 | 38.365997171373 | 4.1781707746e-02 |
| 2818 | 12 | 147 | 38.628175994808 | 4.1718892045e-02 |
| 2819 | 12 | 148 | 38.890286600933 | 4.1710231362e-02 |
| 2820 | 12 | 149 | 39.152461142482 | 4.1769520876e-02 |
| 2821 | 12 | 150 | 39.414831666346 | 4.1749999226e-02 |
| 2822 | 12 | 151 | 39.677303554067 | 4.1788387053e-02 |
| 2823 | 12 | 152 | 39.940000981750 | 4.1864172571e-02 |
| 2824 | 12 | 153 | 40.203418329849 | 4.2031006360e-02 |
| 2825 | 12 | 154 | 40.468641513867 | 4.2529446887e-02 |
| 2826 | 12 | 155 | 40.746992549534 | 5.0651395639e-02 |
| 2827 | 12 | 156 | 40.922021400810 | 1.0287690608e+00 |
| 2828 | 12 | 157 | 41.236951385404 | 4.2836236714e-02 |
| 2829 | 12 | 158 | 41.503015745468 | 4.2043215275e-02 |
| 2830 | 12 | 159 | 41.766433706512 | 4.1921948181e-02 |
| 2831 | 12 | 160 | 42.029408177762 | 4.1777468516e-02 |
| 2832 | 12 | 161 | 42.291874590825 | 4.1826320236e-02 |
| 2833 | 12 | 162 | 42.554187014961 | 4.1741933649e-02 |
| 2834 | 12 | 163 | 42.816851787302 | 4.1805976151e-02 |
| 2835 | 12 | 164 | 43.079269865539 | 4.1836276630e-02 |
| 2836 | 12 | 165 | 43.327617939906 | 1.0413239096e+00 |
| 2837 | 12 | 166 | 43.602203752804 | 4.1895789938e-02 |
| 2838 | 12 | 167 | 43.864642288410 | 4.1720471584e-02 |
| 2839 | 12 | 168 | 44.126930727303 | 4.1785575442e-02 |
| 2840 | 12 | 169 | 44.388898963754 | 4.1653986392e-02 |
| 2841 | 12 | 170 | 44.651086167867 | 4.1793907404e-02 |
| 2842 | 12 | 171 | 44.913158337908 | 4.1715701602e-02 |
| 2843 | 12 | 172 | 45.175495001847 | 4.1759160092e-02 |
| 2844 | 12 | 173 | 45.437362477099 | 4.1738800928e-02 |
| 2845 | 12 | 174 | 45.699909212188 | 4.1730275602e-02 |
| 2846 | 12 | 175 | 45.961991494152 | 4.1776718319e-02 |
| 2847 | 12 | 176 | 46.224210265088 | 4.1701278507e-02 |
| 2848 | 12 | 177 | 46.486354354784 | 4.1868825800e-02 |
| 2849 | 12 | 178 | 46.749352579772 | 4.1769645411e-02 |
| 2850 | 12 | 179 | 47.011720712154 | 4.1867097472e-02 |
| 2851 | 12 | 180 | 47.274961283391 | 4.1889775914e-02 |
| 2852 | 12 | 181 | 47.539439569698 | 4.2366927297e-02 |
| 2853 | 12 | 182 | 47.811153061519 | 4.6143449653e-02 |
| 2854 | 12 | 183 | 48.007628702365 | 1.0345847078e+00 |
| 2855 | 12 | 184 | 48.314425302385 | 4.2764265017e-02 |
| 2856 | 12 | 185 | 48.580178827982 | 4.2025498253e-02 |
| 2857 | 12 | 186 | 48.844947597536 | 4.2275289409e-02 |
| 2858 | 12 | 187 | 49.110521590043 | 4.2425953035e-02 |
| 2859 | 12 | 188 | 49.379609927796 | 4.3637862047e-02 |
| 2860 | 12 | 189 | 49.709867056189 | 1.9535319072e-01 |
| 2861 | 12 | 190 | 49.786493919539 | 8.8050162646e-01 |
| 2862 | 12 | 191 | 50.132655358709 | 4.3625780173e-02 |
| 2863 | 12 | 192 | 50.401773433004 | 4.2350103345e-02 |
| 2864 | 12 | 193 | 50.666868747870 | 4.2132576779e-02 |
| 2865 | 12 | 194 | 50.930684121631 | 4.1865830075e-02 |
| 2866 | 12 | 195 | 51.194139601824 | 4.1987346805e-02 |
| 2867 | 12 | 196 | 51.456670517681 | 4.1810738346e-02 |
| 2868 | 12 | 197 | 51.719665337178 | 4.1883683362e-02 |
| 2869 | 12 | 198 | 51.982744520375 | 4.1919352193e-02 |
| 2870 | 12 | 199 | 52.246398005900 | 4.1991651711e-02 |
| 2871 | 12 | 200 | 52.510878178031 | 4.2430945296e-02 |
| 2872 | 12 | 201 | 52.785249527020 | 4.7652605018e-02 |
| 2873 | 12 | 202 | 52.973105631713 | 1.0325605160e+00 |
| 2874 | 12 | 203 | 53.282714582725 | 4.2668756758e-02 |
| 2875 | 12 | 204 | 53.548260545931 | 4.2098839374e-02 |
| 2876 | 12 | 205 | 53.811701922306 | 4.1912614292e-02 |
| 2877 | 12 | 206 | 54.074709593228 | 4.1719864305e-02 |
| 2878 | 12 | 207 | 54.336754378689 | 4.1870429788e-02 |
| 2879 | 12 | 208 | 54.599563733885 | 4.1782777280e-02 |
| 2880 | 12 | 209 | 54.861504040157 | 4.1770670645e-02 |
| 2881 | 12 | 210 | 55.123782251504 | 4.1717670028e-02 |
| 2882 | 12 | 211 | 55.385733276956 | 4.1733890822e-02 |
| 2883 | 12 | 212 | 55.648299020281 | 4.1834821157e-02 |
| 2884 | 12 | 213 | 55.910455897613 | 4.1785990912e-02 |
| 2885 | 12 | 214 | 56.172734612233 | 4.1872740293e-02 |
| 2886 | 12 | 215 | 56.445777811123 | 1.0413787314e+00 |
| 2887 | 12 | 216 | 56.696004263944 | 4.1921780363e-02 |
| 2888 | 12 | 217 | 56.958116373796 | 4.1684580001e-02 |
| 2889 | 12 | 218 | 57.220661753840 | 4.1755760384e-02 |
| 2890 | 12 | 219 | 57.482750859563 | 4.1811279297e-02 |
| 2891 | 12 | 220 | 57.744967175305 | 4.1665163850e-02 |
| 2892 | 12 | 221 | 58.006952603022 | 4.1751630891e-02 |
| 2893 | 12 | 222 | 58.269067883137 | 4.1986598890e-02 |
| 2894 | 12 | 223 | 58.532034488557 | 4.1649933019e-02 |
| 2895 | 12 | 224 | 58.794076694647 | 4.1913716265e-02 |
| 2896 | 12 | 225 | 59.057593097964 | 4.2052955373e-02 |
| 2897 | 12 | 226 | 59.345823242896 | 1.0401316467e+00 |
| 2898 | 12 | 227 | 59.575723331416 | 4.2549163304e-02 |
| 2899 | 12 | 228 | 59.840423221897 | 4.2043813564e-02 |
| 2900 | 12 | 229 | 60.104191967469 | 4.2006191956e-02 |
| 2901 | 12 | 230 | 60.369106954428 | 4.2360000970e-02 |
| 2902 | 12 | 231 | 60.641269055549 | 4.6749464663e-02 |
| 2903 | 12 | 232 | 60.834361784995 | 1.0337885159e+00 |
| 2904 | 12 | 233 | 61.141844691037 | 4.2664224201e-02 |
| 2905 | 12 | 234 | 61.407048126679 | 4.2047645308e-02 |
| 2906 | 12 | 235 | 61.670251018883 | 4.1898717472e-02 |
| 2907 | 12 | 236 | 61.933074106523 | 4.1877892555e-02 |
| 2908 | 12 | 237 | 62.195402414738 | 4.1848385943e-02 |
| 2909 | 12 | 238 | 62.458237896682 | 4.1688869164e-02 |
| 2910 | 12 | 239 | 62.719951504803 | 4.1821453591e-02 |
| 2911 | 12 | 240 | 62.982301908866 | 4.1693608768e-02 |
| 2912 | 12 | 241 | 63.245023576147 | 4.1833655276e-02 |
| 2913 | 12 | 242 | 63.506883279247 | 4.1746134943e-02 |
| 2914 | 12 | 243 | 63.769762080383 | 4.1940627391e-02 |
| 2915 | 12 | 244 | 64.032087146302 | 4.1859989661e-02 |
| 2916 | 12 | 245 | 64.293759169385 | 4.1949890218e-02 |
| 2917 | 12 | 246 | 64.557288571074 | 4.1909497822e-02 |
| 2918 | 12 | 247 | 64.820802615835 | 4.2155652243e-02 |
| 2919 | 12 | 248 | 65.111161977390 | 1.0396114771e+00 |
| 2920 | 12 | 249 | 65.337396344794 | 4.2750482560e-02 |
| 2921 | 12 | 250 | 65.602741208121 | 4.2095676694e-02 |
| 2922 | 12 | 251 | 65.865944207016 | 4.2171892681e-02 |
| 2923 | 12 | 252 | 66.130096745408 | 4.1908504403e-02 |
| 2924 | 12 | 253 | 66.394546176958 | 4.2482912051e-02 |
| 2925 | 12 | 254 | 66.662046653645 | 4.3132044938e-02 |
| 2926 | 12 | 255 | 66.966487705684 | 8.2865336378e-02 |
| 2927 | 12 | 256 | 67.086281904859 | 9.9440190867e-01 |
| 2928 | 12 | 257 | 67.420746759172 | 4.3168865356e-02 |
| 2929 | 12 | 258 | 67.688514398493 | 4.2498298230e-02 |
| 2930 | 12 | 259 | 67.953618007626 | 4.2100588846e-02 |
| 2931 | 12 | 260 | 68.216575301971 | 4.1940546557e-02 |
| 2932 | 12 | 261 | 68.479288281872 | 4.1954959858e-02 |
| 2933 | 12 | 262 | 68.742331904163 | 4.1853061782e-02 |
| 2934 | 12 | 263 | 69.005099599018 | 4.1997287229e-02 |
| 2935 | 12 | 264 | 69.268011382310 | 4.2040531137e-02 |
| 2936 | 12 | 265 | 69.545724069099 | 1.0411628422e+00 |
| 2937 | 12 | 266 | 69.790611011428 | 4.1962703939e-02 |
| 2938 | 12 | 267 | 70.053778482866 | 4.1881480017e-02 |
| 2939 | 12 | 268 | 70.316587734587 | 4.1900123324e-02 |
| 2940 | 12 | 269 | 70.579892766833 | 4.1788995872e-02 |
| 2941 | 12 | 270 | 70.841211690470 | 4.2192476919e-02 |
| 2942 | 12 | 271 | 71.105424389437 | 4.2030505630e-02 |
| 2943 | 12 | 272 | 71.369912576061 | 4.2384816864e-02 |
| 2944 | 12 | 273 | 71.635737973317 | 4.3016551217e-02 |
| 2945 | 12 | 274 | 71.928739950203 | 6.3905848393e-02 |
| 2946 | 12 | 275 | 72.072019043543 | 1.0143294482e+00 |
| 2947 | 12 | 276 | 72.399428674980 | 4.3227198676e-02 |
| 2948 | 12 | 277 | 72.665425985507 | 4.2447847564e-02 |
| 2949 | 12 | 278 | 72.930988971286 | 4.2079066321e-02 |
| 2950 | 12 | 279 | 73.193686184779 | 4.1933683470e-02 |
| 2951 | 12 | 280 | 73.456998172959 | 4.1850629182e-02 |
| 2952 | 12 | 281 | 73.719687950883 | 4.1856980263e-02 |
| 2953 | 12 | 282 | 73.982808238178 | 4.2112290596e-02 |
| 2954 | 12 | 283 | 74.245810365327 | 4.1796604186e-02 |
| 2955 | 12 | 284 | 74.509466436944 | 4.2282937745e-02 |
| 2956 | 12 | 285 | 74.772576397595 | 4.2110165035e-02 |
| 2957 | 12 | 286 | 75.037622667893 | 4.2257402436e-02 |
| 2958 | 12 | 287 | 75.306770903626 | 4.3833962509e-02 |
| 2959 | 12 | 288 | 75.633261024810 | 1.6536537016e-01 |
| 2960 | 12 | 289 | 75.715945690084 | 9.1073928192e-01 |
| 2961 | 12 | 290 | 76.060706413697 | 4.3628259548e-02 |
| 2962 | 12 | 291 | 76.329540341303 | 4.2860284934e-02 |
| 2963 | 12 | 292 | 76.595802943679 | 4.2079670756e-02 |
| 2964 | 12 | 293 | 76.859418063555 | 4.2290577146e-02 |
| 2965 | 12 | 294 | 77.143855377501 | 1.0408561587e+00 |
| 2966 | 12 | 295 | 77.382371444417 | 4.2757144463e-02 |
| 2967 | 12 | 296 | 77.646040352991 | 4.2007040088e-02 |
| 2968 | 12 | 297 | 77.910258356404 | 4.2048353916e-02 |
| 2969 | 12 | 298 | 78.173240810904 | 4.2018640506e-02 |
| 2970 | 12 | 299 | 78.437165453883 | 4.2064406213e-02 |
| 2971 | 12 | 300 | 78.703191089694 | 4.2781375846e-02 |
| 2972 | 12 | 301 | 78.971842773449 | 4.3838568015e-02 |
| 2973 | 12 | 302 | 79.320256962558 | 7.8116293361e-01 |
| 2974 | 12 | 303 | 79.385544166531 | 2.9452219132e-01 |
| 2975 | 12 | 304 | 79.723979008461 | 4.3599073277e-02 |
| 2976 | 12 | 305 | 79.993086899726 | 4.2796437250e-02 |
| 2977 | 12 | 306 | 80.258619710967 | 4.1979960870e-02 |
| 2978 | 12 | 307 | 80.521018935142 | 4.2461807927e-02 |
| 2979 | 12 | 308 | 80.785417441175 | 4.1859496123e-02 |
| 2980 | 12 | 309 | 81.047621637860 | 4.1881005206e-02 |
| 2981 | 12 | 310 | 81.310224018488 | 4.2448096821e-02 |
| 2982 | 12 | 311 | 81.572992686526 | 4.1734126282e-02 |
| 2983 | 12 | 312 | 81.835839252496 | 4.1922324940e-02 |
| 2984 | 12 | 313 | 82.098553041249 | 4.1869664490e-02 |
| 2985 | 12 | 314 | 82.360591921071 | 4.1627658592e-02 |
| 2986 | 12 | 315 | 82.624756139284 | 4.2905584226e-02 |
| 2987 | 12 | 316 | 82.909303504481 | 1.0403969907e+00 |
| 2988 | 12 | 317 | 83.143614775630 | 4.2409971427e-02 |
| 2989 | 12 | 318 | 83.407673237860 | 4.1985884393e-02 |
| 2990 | 12 | 319 | 83.670211628343 | 4.2019277871e-02 |
| 2991 | 12 | 320 | 83.933080618283 | 4.2042082997e-02 |
| 2992 | 12 | 321 | 84.194243427047 | 4.2102658755e-02 |
| 2993 | 12 | 322 | 84.457447677794 | 4.2033961965e-02 |
| 2994 | 12 | 323 | 84.734853447875 | 1.0414512603e+00 |
| 2995 | 12 | 324 | 84.979790650468 | 4.1756337996e-02 |
| 2996 | 12 | 325 | 85.243574614541 | 4.2013970704e-02 |
| 2997 | 12 | 326 | 85.505731786499 | 4.1790766630e-02 |
| 2998 | 12 | 327 | 85.769197350903 | 4.2155107535e-02 |
| 2999 | 12 | 328 | 86.031828659600 | 4.1917643400e-02 |
| 3000 | 12 | 329 | 86.295032335203 | 4.1977855647e-02 |
| 3001 | 12 | 330 | 86.557752199231 | 4.2742936879e-02 |
E-022-spectral-measure.json
— 4.3 KB, updated 08-19-2026
JSON sidecar (click to expand)
{
"experiment": "E-022",
"task": "2.10 (D-035 D2): spectral-measure convergence",
"script": "research/numerics/scripts/E-022-spectral-measure.py",
"parameters": {
"a_list": [
4.0,
6.0,
8.0,
10.0,
12.0
],
"h": 0.01,
"lam": -1.0,
"z_max": 300.0,
"z_metric": 280.0,
"sigma_bump": 8.0,
"n_grid": 40000
},
"checks": {
"V0_schur_vs_solve_v": true,
"V1_weights_positive": true,
"V2_refinement": true,
"V3_lattice_and_z1law": true
},
"key_values": {
"4": {
"n_zeros": 381,
"z1": 1.1260734006983593,
"z1_times_a": 4.504293602793437,
"lattice_expected": 381.9718634205488,
"mass_total_Zmetric": 184.02432245308052,
"O1_cumulative_Linf": 0.030472775278319375,
"O1_cumulative_L2": 0.015369322417422383,
"O2_logw_slope": 0.004773175983096674,
"O2_logw_R2": 0.17155831473911887,
"O2_logw_std_resid": 0.8476672146023767,
"O3_weak_metric": 0.010527875427328966,
"O5_mass_near_gamma": 1.6069393990772483,
"O5_mass_near_random": 1.239913792291073,
"O5_ratio": 1.2960089718076262,
"elapsed_s": 2.9
},
"6": {
"n_zeros": 572,
"z1": 0.7499016225074712,
"z1_times_a": 4.499409735044827,
"lattice_expected": 572.9577951308232,
"mass_total_Zmetric": 184.01489106241632,
"O1_cumulative_Linf": 0.02723380344436621,
"O1_cumulative_L2": 0.015298102993183555,
"O2_logw_slope": 0.004573680792971365,
"O2_logw_R2": 0.13177706690264612,
"O2_logw_std_resid": 0.9483241546589634,
"O3_weak_metric": 0.010569164981132785,
"O5_mass_near_gamma": 1.6173747450375149,
"O5_mass_near_random": 1.257329769139859,
"O5_ratio": 1.2863568371120038,
"elapsed_s": 4.8
},
"8": {
"n_zeros": 763,
"z1": 0.5621012628096893,
"z1_times_a": 4.4968101024775144,
"lattice_expected": 763.9437268410976,
"mass_total_Zmetric": 184.13312237431055,
"O1_cumulative_Linf": 0.027258094320286474,
"O1_cumulative_L2": 0.015486596743652112,
"O2_logw_slope": 0.004185396789595135,
"O2_logw_R2": 0.10532818940743971,
"O2_logw_std_resid": 0.986518773772079,
"O3_weak_metric": 0.010568959142405882,
"O5_mass_near_gamma": 1.6196075350475192,
"O5_mass_near_random": 1.2561234028070363,
"O5_ratio": 1.2893697636937673,
"elapsed_s": 8.2
},
"10": {
"n_zeros": 954,
"z1": 0.44959701245436284,
"z1_times_a": 4.4959701245436285,
"lattice_expected": 954.9296585513721,
"mass_total_Zmetric": 184.1239991524169,
"O1_cumulative_Linf": 0.024844169503423608,
"O1_cumulative_L2": 0.015446208652370818,
"O2_logw_slope": 0.0038097364559334847,
"O2_logw_R2": 0.08653440341105123,
"O2_logw_std_resid": 1.0006504172097648,
"O3_weak_metric": 0.010581710686957842,
"O5_mass_near_gamma": 1.6290317856739722,
"O5_mass_near_random": 1.2562149964535079,
"O5_ratio": 1.2967778527345915,
"elapsed_s": 13.4
},
"12": {
"n_zeros": 1145,
"z1": 0.3746087478472408,
"z1_times_a": 4.495304974166889,
"lattice_expected": 1145.9155902616465,
"mass_total_Zmetric": 184.10483484645468,
"O1_cumulative_Linf": 0.028584131798192303,
"O1_cumulative_L2": 0.015417413187446537,
"O2_logw_slope": 0.003682406300531162,
"O2_logw_R2": 0.08233450272296328,
"O2_logw_std_resid": 0.9935774298804366,
"O3_weak_metric": 0.010592268896428007,
"O5_mass_near_gamma": 1.6165573705799765,
"O5_mass_near_random": 1.2532365071394718,
"O5_ratio": 1.2899060643148588,
"elapsed_s": 20.9
},
"O4_trend": {
"a": [
4.0,
6.0,
8.0,
10.0,
12.0
],
"d_a": [
0.010527875427328966,
0.010569164981132785,
0.010568959142405882,
0.010581710686957842,
0.010592268896428007
],
"monotone_decreasing": false
},
"V0_max_dev": 3.560323900663321e-14,
"V2_rel": 0.0011243096862693027
},
"elapsed_seconds": 743.1,
"timestamp_utc": "2026-08-19T17:19:38.162052+00:00"
}
Source code
Python script (click to expand)
"""E-022 — task 2.10 (D-035 deliverable D2): spectral-measure
convergence of Suzuki's D_{a,pi} toward the gamma-target measure.
For each a in {4,6,8,10,12} (theta=pi, all zeros real, E-016 F1):
- locate zeros z_k of W(a,pi;z) on (0, Z_MAX] (E-016/E-019 route:
grid sign-changes of g(z) = z Im V+ - Re V+ + brentq);
- compute the Clark/de Branges spectral weights
w_k = 1 / K_a(z_k, z_k),
K_a(z,z) = Re(b_z^H v), v solves the BORDERED (mean-zero, L^2_0)
Galerkin system T v + mu e = b_z, e.v = 0,
T = Q - lam M (lam = -1), b_z = h sinc^2(zh/2pi) e^{-i z x}
(exact hat-basis quadrature), via Schur reduction on shared
u1 = T^{-1} e: v = T^{-1}(b_z - mu e), mu = (e.u0)/(e.u1).
Toeplitz solves (scipy solve_toeplitz); V0 validates the Schur
solve against E16.solve_v (bordered dense) for b[+1].
Target measure: unit atoms at the Riemann zeros gamma_k (mpmath
zetazero, dps 30, float64 sufficient for statistics).
Observables:
O1. normalized cumulative mass M_a(x)/M_a(Z') vs N_gamma(x)/N(Z'),
Z' = 280 (Linfty + L2 discrepancy).
O2. weight profile: linear fit log w_k vs z_k (slope, spread R^2).
O3. weak metric: Gaussian bumps f_j (30 log-spaced centers in
[15,250], sigma=8): d_a = max_j |mu~_a(f_j) - nu~(f_j)|,
normalized by total mass in (0, Z'].
O4. d_a vs a -> convergence-rate estimate (headline).
O5. gamma-concentration: mean mu_a-mass within +/-1 of each gamma
vs within +/-1 of random points (does the WEIGHT carry gamma
information even though positions don't lock? — E-019 B2 found
chance-level POSITION proximity).
Checks:
V0. Schur-Toeplitz bordered solve vs E16.solve_v (b[+1]): < 1e-8.
V1. all weights > 0.
V2. refinement a=4, h=0.005: weight rel dev on first 50 zeros < 5e-3.
V3. z1*a in [4.3, 4.7] (stiff law, E-019) and count = maximal
lattice (a*Z_MAX/pi +/- 2) at every a.
V4. total mass M_a(Z') recorded vs a (scaling documented).
Outputs: research/numerics/data/E-022-spectral-measure.csv (+ .json)
LONG RUN: detached + log file (per STATE.md protocol).
"""
import importlib.util
import json
import sys
import time
from datetime import datetime, timezone
from pathlib import Path
import mpmath as mp
import numpy as np
import scipy.linalg
import scipy.optimize
REPO = Path(__file__).resolve().parents[3]
DATA = REPO / "research" / "numerics" / "data"
CSV = DATA / "E-022-spectral-measure.csv"
JSON = DATA / "E-022-spectral-measure.json"
_spec = importlib.util.spec_from_file_location(
"E16", Path(__file__).with_name("E-016-herglotz-fine-structure.py"))
E16 = importlib.util.module_from_spec(_spec)
_spec.loader.exec_module(E16) # runs the e^20 sieve
sys.path.insert(0, str(Path(__file__).parent))
from prime_backend_v2 import PrimeBackendV2 # noqa: E402
H_MAIN = E16.H_MAIN # 0.01
LAM = E16.LAM_SHIFT # -1.0
A_LIST = [4.0, 6.0, 8.0, 10.0, 12.0]
Z_MAX = 300.0
Z_METRIC = 280.0
N_GRID = 40000
SIGMA_BUMP = 8.0
mp.mp.dps = 40
XN, XW = E16.XN, E16.XW
hat_FT = E16.hat_FT
def collect_t_points(a, h):
"""Copy of E-019's collector (E-016 S_full/quad segment structure)."""
n_elem = int(round(2 * a / h))
pts = []
def add_quad(lo, hi, peak):
n_lo = int(np.ceil(np.exp(lo)))
n_hi = int(np.floor(np.exp(hi)))
if n_hi - n_lo > 64:
for aa, bb in ((lo, peak), (peak, hi)):
if bb - aa > 0:
mid, half = 0.5 * (aa + bb), 0.5 * (bb - aa)
pts.extend(mid + half * XN)
return
segs = sorted({lo, peak, hi} |
{float(np.log(n))
for n in range(max(n_lo, 2), n_hi + 1)
if lo < np.log(n) < hi})
for p0, p1 in zip(segs, segs[1:]):
if p1 - p0 > 0:
mid, half = 0.5 * (p0 + p1), 0.5 * (p1 - p0)
pts.extend(mid + half * XN)
for k in range(n_elem):
if k == 0:
add_quad(0.0, h, 0.0)
else:
add_quad((k - 1) * h, (k + 1) * h, k * h)
return np.array(pts)
def locate_zeros(cp, x, h, z_max=Z_MAX, n_grid=N_GRID):
zg = np.linspace(1e-3, z_max, n_grid)
Vpr, _ = E16.V_and_dV(zg, cp, x, h)
g = zg * Vpr.imag - Vpr.real
def g_direct(zz):
V = hat_FT(np.array([zz]), h)[0] * complex(
np.exp(1j * zz * x) @ cp)
return zz * V.imag - V.real
idx = np.flatnonzero(np.sign(g[:-1]) * np.sign(g[1:]) < 0)
zeros = []
for i in idx:
try:
zeros.append(scipy.optimize.brentq(g_direct, zg[i], zg[i + 1],
xtol=1e-13, rtol=1e-13))
except ValueError:
pass
return np.array(zeros)
class ToeplitzBordered:
"""Schur-reduced bordered solve for T = toeplitz(tc), constraint
e.v = 0 (e = ones): v = u0 - mu u1, mu = sum(u0)/sum(u1)."""
def __init__(self, tc):
self.tc = tc
n = len(tc)
self.u1 = scipy.linalg.solve_toeplitz((tc, tc), np.ones(n))
self.s1 = float(self.u1.sum())
def solve(self, b):
u0 = scipy.linalg.solve_toeplitz((self.tc, self.tc), b)
return u0 - (u0.sum() / self.s1) * self.u1
def weights_for(a, h, zeros, x):
"""K_k and w_k for the given zero list (build(a,h) cached)."""
_, _, Q, M, _b = E16.build(a, h)
n = Q.shape[0]
mc = np.zeros(n)
mc[0] = 2 * h / 3
if n > 1:
mc[1] = h / 6
tc = Q[:, 0] - LAM * mc
solver = ToeplitzBordered(tc)
Ks = np.empty(len(zeros))
for i, z in enumerate(zeros):
bz = hat_FT(np.array([z]), h)[0] * np.exp(-1j * z * x)
v = solver.solve(bz)
Ks[i] = float(np.real(np.conj(bz) @ v))
return Ks
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()
# ---- backend v2 (e^24) ------------------------------------------
print("collecting quadrature t-points ...", flush=True)
tq = np.concatenate([collect_t_points(a, H_MAIN) for a in A_LIST]
+ [collect_t_points(4.0, 0.005)])
print(f" {tq.size} points; building/loading backend ...", flush=True)
CACHE = DATA / "E-022-backend-cache.npz"
be = PrimeBackendV2(tq)
if CACHE.exists() and "--force" not in sys.argv:
be.load_cache(CACHE)
print(" backend loaded from cache", flush=True)
else:
be.build(verbose=True)
be.save_cache(CACHE)
E16._BUILD.clear()
E16.prime_sum_vec = be.prime_sum
# ---- gamma target ------------------------------------------------
print("target: first 200 Riemann zeros (zetazero) ...", flush=True)
mp.mp.dps = 30
gam = np.array([float(mp.zetazero(k).imag) for k in range(1, 201)])
gam = gam[gam <= Z_METRIC]
# ---- main sweep --------------------------------------------------
rows = []
report = {"per_a": {}}
v0_max = 0.0
v1_ok = True
v3_ok = True
zc = np.linspace(10.0, Z_METRIC, 800)
centers = np.geomspace(15.0, 250.0, 30)
for a in A_LIST:
ta = time.time()
x, h, Q, M, b = E16.build(a, H_MAIN)
n = len(x)
# V0: Schur-Toeplitz vs E16.solve_v on b[+1]
mc = np.zeros(n)
mc[0] = 2 * h / 3
mc[1] = h / 6
tc = Q[:, 0] - LAM * mc
solver = ToeplitzBordered(tc)
cp_ref, _T = E16.solve_v(Q, M, b[+1.0], LAM, n)
cp_schur = solver.solve(b[+1.0])
dev = float(np.max(np.abs(cp_ref - cp_schur))
/ max(1.0, float(np.max(np.abs(cp_ref)))))
v0_max = max(v0_max, dev)
cp, _ = E16.solve_v(Q, M, b[+1.0], LAM, n)
cm, _ = E16.solve_v(Q, M, b[-1.0], LAM, n)
zeros = locate_zeros(cp, x, h)
Ks = weights_for(a, H_MAIN, zeros, x)
ws = 1.0 / Ks
if np.any(Ks <= 0):
v1_ok = False
z1 = float(zeros[0])
lat = a * Z_MAX / np.pi
if not (4.3 < z1 * a < 4.7) or abs(len(zeros) - lat) > 2:
v3_ok = False
# --- metrics (zeros in (0, Z_METRIC])
zm = zeros[zeros <= Z_METRIC]
wm = ws[zeros <= Z_METRIC]
Mtot = float(wm.sum())
# O1: cumulative shape vs unit-weight gamma measure
Ma = np.array([wm[zm <= t].sum() for t in zc]) / Mtot
Ng = np.array([np.sum(gam <= t) for t in zc]) / len(gam)
o1_linf = float(np.max(np.abs(Ma - Ng)))
o1_l2 = float(np.sqrt(np.mean((Ma - Ng) ** 2)))
# O2: weight profile
A_ = np.vstack([zm, np.ones_like(zm)]).T
slope, intercept = np.linalg.lstsq(A_, np.log(wm), rcond=None)[0]
pred = slope * zm + intercept
ss_res = float(np.sum((np.log(wm) - pred) ** 2))
ss_tot = float(np.sum((np.log(wm) - np.log(wm).mean()) ** 2))
r2 = 1.0 - ss_res / max(ss_tot, 1e-300)
# O3: Gaussian-bump weak metric
def bump(z, c):
return np.exp(-0.5 * ((z - c) / SIGMA_BUMP) ** 2)
mu_f = np.array([np.dot(wm, bump(zm, c)) for c in centers]) / Mtot
nu_f = np.array([bump(gam, c).sum() for c in centers]) / len(gam)
o3 = float(np.max(np.abs(mu_f - nu_f)))
# O5: gamma-concentration of mass
mass_near_g = float(np.mean([wm[np.abs(zm - g) <= 1.0].sum()
for g in gam]))
rng = np.random.default_rng(7)
rpts = rng.uniform(15.0, 250.0, len(gam))
mass_near_r = float(np.mean([wm[np.abs(zm - r) <= 1.0].sum()
for r in rpts]))
for k, (zz, ww) in enumerate(zip(zeros, ws), 1):
rows.append((a, k, zz, ww))
report["per_a"][f"{a:g}"] = {
"n_zeros": int(len(zeros)), "z1": z1, "z1_times_a": z1 * a,
"lattice_expected": lat,
"mass_total_Zmetric": Mtot,
"O1_cumulative_Linf": o1_linf, "O1_cumulative_L2": o1_l2,
"O2_logw_slope": float(slope), "O2_logw_R2": r2,
"O2_logw_std_resid": float(np.sqrt(ss_res / max(len(zm) - 2, 1))),
"O3_weak_metric": o3,
"O5_mass_near_gamma": mass_near_g,
"O5_mass_near_random": mass_near_r,
"O5_ratio": mass_near_g / max(mass_near_r, 1e-300),
"elapsed_s": round(time.time() - ta, 1),
}
print(f"a={a:g}: {len(zeros)} zeros, z1a={z1 * a:.3f}, "
f"mass={Mtot:.3e}, O3={o3:.4f}, "
f"O5={mass_near_g:.3e}/{mass_near_r:.3e} "
f"({report['per_a'][f'{a:g}']['elapsed_s']}s)", flush=True)
# ---- V2: refinement at a=4, h=0.005 ------------------------------
print("V2: refinement a=4 h=0.005 (first 50 zeros) ...", flush=True)
x5, h5, Q5, M5, b5 = E16.build(4.0, 0.005)
cp5, _ = E16.solve_v(Q5, M5, b5[+1.0], LAM, len(x5))
zeros5 = locate_zeros(cp5, x5, h5)
K5 = weights_for(4.0, 0.005, zeros5[:50], x5)
x01, _, _, _, _ = E16.build(4.0, H_MAIN)
K4 = weights_for(4.0, H_MAIN, zeros5[:50], x01) # same z's, h=0.01
v2_rel = float(np.max(np.abs(K5 - K4) / np.abs(K5)))
print(f" V2 max rel dev K(h=0.005) vs K(h=0.01): {v2_rel:.2e}",
flush=True)
# ---- O4: convergence trend --------------------------------------
avals = np.array(A_LIST)
dvals = np.array([report["per_a"][f"{a:g}"]["O3_weak_metric"]
for a in A_LIST])
o4 = {"a": list(avals), "d_a": list(dvals),
"monotone_decreasing": bool(np.all(np.diff(dvals) < 0))}
checks = {
"V0_schur_vs_solve_v": bool(v0_max < 1e-8),
"V1_weights_positive": bool(v1_ok),
"V2_refinement": bool(v2_rel < 5e-3),
"V3_lattice_and_z1law": bool(v3_ok),
}
print("checks:", checks, flush=True)
import csv as csvmod
with open(CSV, "w", newline="") as f:
w = csvmod.writer(f)
w.writerow(["a", "k", "z_k", "w_k"])
for a, k, zz, ww in rows:
w.writerow([f"{a:g}", k, f"{zz:.12f}", f"{ww:.10e}"])
meta = {
"experiment": "E-022",
"task": "2.10 (D-035 D2): spectral-measure convergence",
"script": "research/numerics/scripts/E-022-spectral-measure.py",
"parameters": {"a_list": A_LIST, "h": H_MAIN, "lam": LAM,
"z_max": Z_MAX, "z_metric": Z_METRIC,
"sigma_bump": SIGMA_BUMP, "n_grid": N_GRID},
"checks": checks,
"key_values": {**report["per_a"], "O4_trend": o4,
"V0_max_dev": v0_max, "V2_rel": v2_rel},
"elapsed_seconds": round(time.time() - t0, 1),
"timestamp_utc": datetime.now(timezone.utc).isoformat(),
}
JSON.write_text(json.dumps(meta, indent=2))
print(f"wrote {CSV.name}, {JSON.name}; elapsed "
f"{meta['elapsed_seconds']}s", flush=True)
return 0 if all(checks.values()) else 1
if __name__ == "__main__":
sys.exit(main())