Current task: —

E-025-lambda-flow.py

Experiments: E-025 · script updated 08-19-2026

E-025-lambda-flow.csv — 384.1 KB, updated 08-19-2026

← prev page 20 of 34 · 500/page · 16560 rows next →
# alambda_tagzlogK
9502 8 0.99 29.000 6.325138
9503 8 0.99 29.050 6.316701
9504 8 0.99 29.100 6.310629
9505 8 0.99 29.150 6.309078
9506 8 0.99 29.200 6.312227
9507 8 0.99 29.250 6.318329
9508 8 0.99 29.300 6.324802
9509 8 0.99 29.350 6.329628
9510 8 0.99 29.400 6.332210
9511 8 0.99 29.450 6.333204
9512 8 0.99 29.500 6.333469
9513 8 0.99 29.550 6.332854
9514 8 0.99 29.600 6.329710
9515 8 0.99 29.650 6.321717
9516 8 0.99 29.700 6.307764
9517 8 0.99 29.750 6.289956
9518 8 0.99 29.800 6.274393
9519 8 0.99 29.850 6.269344
9520 8 0.99 29.900 6.280433
9521 8 0.99 29.950 6.305101
9522 8 0.99 30.000 6.330489
9523 8 0.99 30.050 6.336170
9524 8 0.99 30.100 6.298487
9525 8 0.99 30.150 6.192512
9526 8 0.99 30.200 5.989848
9527 8 0.99 30.250 5.650826
9528 8 0.99 30.300 5.103795
9529 8 0.99 30.350 4.173197
9530 8 0.99 30.400 2.122146
9531 8 0.99 30.450 2.138646
9532 8 0.99 30.500 4.175943
9533 8 0.99 30.550 5.101483
9534 8 0.99 30.600 5.645192
9535 8 0.99 30.650 5.981846
9536 8 0.99 30.700 6.183101
9537 8 0.99 30.750 6.288890
9538 8 0.99 30.800 6.327976
9539 8 0.99 30.850 6.325544
9540 8 0.99 30.900 6.305066
9541 8 0.99 30.950 6.286059
9542 8 0.99 31.000 6.279884
9543 8 0.99 31.050 6.287672
9544 8 0.99 31.100 6.303057
9545 8 0.99 31.150 6.317776
9546 8 0.99 31.200 6.326189
9547 8 0.99 31.250 6.326935
9548 8 0.99 31.300 6.322199
9549 8 0.99 31.350 6.315812
9550 8 0.99 31.400 6.311227
9551 8 0.99 31.450 6.310202
9552 8 0.99 31.500 6.312596
9553 8 0.99 31.550 6.317005
9554 8 0.99 31.600 6.321630
9555 8 0.99 31.650 6.324870
9556 8 0.99 31.700 6.325593
9557 8 0.99 31.750 6.323304
9558 8 0.99 31.800 6.318375
9559 8 0.99 31.850 6.312278
9560 8 0.99 31.900 6.307443
9561 8 0.99 31.950 6.306439
9562 8 0.99 32.000 6.310574
9563 8 0.99 32.050 6.318632
9564 8 0.99 32.100 6.326745
9565 8 0.99 32.150 6.329814
9566 8 0.99 32.200 6.323966
9567 8 0.99 32.250 6.309008
9568 8 0.99 32.300 6.289770
9569 8 0.99 32.350 6.275120
9570 8 0.99 32.400 6.273730
9571 8 0.99 32.450 6.287708
9572 8 0.99 32.500 6.308251
9573 8 0.99 32.550 6.316724
9574 8 0.99 32.600 6.289307
9575 8 0.99 32.650 6.200409
9576 8 0.99 32.700 6.021923
9577 8 0.99 32.750 5.716987
9578 8 0.99 32.800 5.223197
9579 8 0.99 32.850 4.398643
9580 8 0.99 32.900 2.732196
9581 8 0.99 32.950 1.288578
9582 8 0.99 33.000 3.892866
9583 8 0.99 33.050 4.945594
9584 8 0.99 33.100 5.547985
9585 8 0.99 33.150 5.920628
9586 8 0.99 33.200 6.147179
9587 8 0.99 33.250 6.271765
9588 8 0.99 33.300 6.324643
9589 8 0.99 33.350 6.331405
9590 8 0.99 33.400 6.315697
9591 8 0.99 33.450 6.297627
9592 8 0.99 33.500 6.289787
9593 8 0.99 33.550 6.294734
9594 8 0.99 33.600 6.307054
9595 8 0.99 33.650 6.318773
9596 8 0.99 33.700 6.324258
9597 8 0.99 33.750 6.322327
9598 8 0.99 33.800 6.315696
9599 8 0.99 33.850 6.308829
9600 8 0.99 33.900 6.305410
9601 8 0.99 33.950 6.306667
9602 8 0.99 34.000 6.311348
9603 8 0.99 34.050 6.317065
9604 8 0.99 34.100 6.321912
9605 8 0.99 34.150 6.325353
9606 8 0.99 34.200 6.328005
9607 8 0.99 34.250 6.330667
9608 8 0.99 34.300 6.333325
9609 8 0.99 34.350 6.334823
9610 8 0.99 34.400 6.333432
9611 8 0.99 34.450 6.327983
9612 8 0.99 34.500 6.318920
9613 8 0.99 34.550 6.308660
9614 8 0.99 34.600 6.300961
9615 8 0.99 34.650 6.299398
9616 8 0.99 34.700 6.305644
9617 8 0.99 34.750 6.318491
9618 8 0.99 34.800 6.334270
9619 8 0.99 34.850 6.348354
9620 8 0.99 34.900 6.356877
9621 8 0.99 34.950 6.357888
9622 8 0.99 35.000 6.351693
9623 8 0.99 35.050 6.340462
9624 8 0.99 35.100 6.327358
9625 8 0.99 35.150 6.315525
9626 8 0.99 35.200 6.307280
9627 8 0.99 35.250 6.303748
9628 8 0.99 35.300 6.304966
9629 8 0.99 35.350 6.310200
9630 8 0.99 35.400 6.318233
9631 8 0.99 35.450 6.327500
9632 8 0.99 35.500 6.336187
9633 8 0.99 35.550 6.342442
9634 8 0.99 35.600 6.344773
9635 8 0.99 35.650 6.342513
9636 8 0.99 35.700 6.336134
9637 8 0.99 35.750 6.327216
9638 8 0.99 35.800 6.317956
9639 8 0.99 35.850 6.310385
9640 8 0.99 35.900 6.305641
9641 8 0.99 35.950 6.303733
9642 8 0.99 36.000 6.303941
9643 8 0.99 36.050 6.305621
9644 8 0.99 36.100 6.308832
9645 8 0.99 36.150 6.314338
9646 8 0.99 36.200 6.322851
9647 8 0.99 36.250 6.333945
9648 8 0.99 36.300 6.345375
9649 8 0.99 36.350 6.353401
9650 8 0.99 36.400 6.354123
9651 8 0.99 36.450 6.345254
9652 8 0.99 36.500 6.327620
9653 8 0.99 36.550 6.305699
9654 8 0.99 36.600 6.286587
9655 8 0.99 36.650 6.277203
9656 8 0.99 36.700 6.280701
9657 8 0.99 36.750 6.294427
9658 8 0.99 36.800 6.311157
9659 8 0.99 36.850 6.322901
9660 8 0.99 36.900 6.324881
9661 8 0.99 36.950 6.317842
9662 8 0.99 37.000 6.307785
9663 8 0.99 37.050 6.302657
9664 8 0.99 37.100 6.306608
9665 8 0.99 37.150 6.314779
9666 8 0.99 37.200 6.312264
9667 8 0.99 37.250 6.277264
9668 8 0.99 37.300 6.184534
9669 8 0.99 37.350 6.005489
9670 8 0.99 37.400 5.702777
9671 8 0.99 37.450 5.214194
9672 8 0.99 37.500 4.400469
9673 8 0.99 37.550 2.769439
9674 8 0.99 37.600 1.164085
9675 8 0.99 37.650 3.839146
9676 8 0.99 37.700 4.906804
9677 8 0.99 37.750 5.515315
9678 8 0.99 37.800 5.891224
9679 8 0.99 37.850 6.119960
9680 8 0.99 37.900 6.246653
9681 8 0.99 37.950 6.302415
9682 8 0.99 38.000 6.313525
9683 8 0.99 38.050 6.303798
9684 8 0.99 38.100 6.292553
9685 8 0.99 38.150 6.290685
9686 8 0.99 38.200 6.298977
9687 8 0.99 38.250 6.311183
9688 8 0.99 38.300 6.319795
9689 8 0.99 38.350 6.320630
9690 8 0.99 38.400 6.314413
9691 8 0.99 38.450 6.305663
9692 8 0.99 38.500 6.299927
9693 8 0.99 38.550 6.300759
9694 8 0.99 38.600 6.308040
9695 8 0.99 38.650 6.318518
9696 8 0.99 38.700 6.327927
9697 8 0.99 38.750 6.333145
9698 8 0.99 38.800 6.333282
9699 8 0.99 38.850 6.329501
9700 8 0.99 38.900 6.324000
9701 8 0.99 38.950 6.318832
9702 8 0.99 39.000 6.315165
9703 8 0.99 39.050 6.313255
9704 8 0.99 39.100 6.312925
9705 8 0.99 39.150 6.314047
9706 8 0.99 39.200 6.316636
9707 8 0.99 39.250 6.320561
9708 8 0.99 39.300 6.325190
9709 8 0.99 39.350 6.329375
9710 8 0.99 39.400 6.331885
9711 8 0.99 39.450 6.332044
9712 8 0.99 39.500 6.330161
9713 8 0.99 39.550 6.327394
9714 8 0.99 39.600 6.325065
9715 8 0.99 39.650 6.323799
9716 8 0.99 39.700 6.323078
9717 8 0.99 39.750 6.321585
9718 8 0.99 39.800 6.318217
9719 8 0.99 39.850 6.313112
9720 8 0.99 39.900 6.308001
9721 8 0.99 39.950 6.305422
9722 8 0.99 40.000 6.307071
9723 8 0.99 40.050 6.312242
9724 8 0.99 40.100 6.317569
9725 8 0.99 40.150 6.318537
9726 8 0.99 40.200 6.312070
9727 8 0.99 40.250 6.298907
9728 8 0.99 40.300 6.284447
9729 8 0.99 40.350 6.276881
9730 8 0.99 40.400 6.282320
9731 8 0.99 40.450 6.299045
9732 8 0.99 40.500 6.314996
9733 8 0.99 40.550 6.310151
9734 8 0.99 40.600 6.260758
9735 8 0.99 40.650 6.141298
9736 8 0.99 40.700 5.922125
9737 8 0.99 40.750 5.560877
9738 8 0.99 40.800 4.978879
9739 8 0.99 40.850 3.974721
9740 8 0.99 40.900 1.612534
9741 8 0.99 40.950 2.497368
9742 8 0.99 41.000 4.287873
9743 8 0.99 41.050 5.150646
9744 8 0.99 41.100 5.666336
9745 8 0.99 41.150 5.988275
9746 8 0.99 41.200 6.182074
9747 8 0.99 41.250 6.285212
9748 8 0.99 41.300 6.324882
9749 8 0.99 41.350 6.324602
9750 8 0.99 41.400 6.305805
9751 8 0.99 41.450 6.286032
9752 8 0.99 41.500 6.275703
9753 8 0.99 41.550 6.276657
9754 8 0.99 41.600 6.284443
9755 8 0.99 41.650 6.292925
9756 8 0.99 41.700 6.298153
9757 8 0.99 41.750 6.299824
9758 8 0.99 41.800 6.300485
9759 8 0.99 41.850 6.303409
9760 8 0.99 41.900 6.310301
9761 8 0.99 41.950 6.320039
9762 8 0.99 42.000 6.329046
9763 8 0.99 42.050 6.332958
9764 8 0.99 42.100 6.328640
9765 8 0.99 42.150 6.315745
9766 8 0.99 42.200 6.297381
9767 8 0.99 42.250 6.279597
9768 8 0.99 42.300 6.269444
9769 8 0.99 42.350 6.271926
9770 8 0.99 42.400 6.287208
9771 8 0.99 42.450 6.309993
9772 8 0.99 42.500 6.331641
9773 8 0.99 42.550 6.343745
9774 8 0.99 42.600 6.341409
9775 8 0.99 42.650 6.325314
9776 8 0.99 42.700 6.302183
9777 8 0.99 42.750 6.282841
9778 8 0.99 42.800 6.277084
9779 8 0.99 42.850 6.286839
9780 8 0.99 42.900 6.302173
9781 8 0.99 42.950 6.303248
9782 8 0.99 43.000 6.265449
9783 8 0.99 43.050 6.162578
9784 8 0.99 43.100 5.965449
9785 8 0.99 43.150 5.634520
9786 8 0.99 43.200 5.100047
9787 8 0.99 43.250 4.194623
9788 8 0.99 43.300 2.242566
9789 8 0.99 43.350 1.951049
9790 8 0.99 43.400 4.087512
9791 8 0.99 43.450 5.037423
9792 8 0.99 43.500 5.592449
9793 8 0.99 43.550 5.936177
9794 8 0.99 43.600 6.143093
9795 8 0.99 43.650 6.254667
9796 8 0.99 43.700 6.300751
9797 8 0.99 43.750 6.307072
9798 8 0.99 43.800 6.296539
9799 8 0.99 43.850 6.286598
9800 8 0.99 43.900 6.285621
9801 8 0.99 43.950 6.292456
9802 8 0.99 44.000 6.300579
9803 8 0.99 44.050 6.303938
9804 8 0.99 44.100 6.300875
9805 8 0.99 44.150 6.294764
9806 8 0.99 44.200 6.291741
9807 8 0.99 44.250 6.296819
9808 8 0.99 44.300 6.310542
9809 8 0.99 44.350 6.328377
9810 8 0.99 44.400 6.343125
9811 8 0.99 44.450 6.348488
9812 8 0.99 44.500 6.341798
9813 8 0.99 44.550 6.325061
9814 8 0.99 44.600 6.304279
9815 8 0.99 44.650 6.287220
9816 8 0.99 44.700 6.280193
9817 8 0.99 44.750 6.285285
9818 8 0.99 44.800 6.299713
9819 8 0.99 44.850 6.317613
9820 8 0.99 44.900 6.332851
9821 8 0.99 44.950 6.341176
9822 8 0.99 45.000 6.341050
9823 8 0.99 45.050 6.333396
9824 8 0.99 45.100 6.320795
9825 8 0.99 45.150 6.306587
9826 8 0.99 45.200 6.294155
9827 8 0.99 45.250 6.286451
9828 8 0.99 45.300 6.285630
9829 8 0.99 45.350 6.292628
9830 8 0.99 45.400 6.306702
9831 8 0.99 45.450 6.325215
9832 8 0.99 45.500 6.343993
9833 8 0.99 45.550 6.358295
9834 8 0.99 45.600 6.364132
9835 8 0.99 45.650 6.359503
9836 8 0.99 45.700 6.345231
9837 8 0.99 45.750 6.325107
9838 8 0.99 45.800 6.305087
9839 8 0.99 45.850 6.291434
9840 8 0.99 45.900 6.288255
9841 8 0.99 45.950 6.295668
9842 8 0.99 46.000 6.309774
9843 8 0.99 46.050 6.324482
9844 8 0.99 46.100 6.334029
9845 8 0.99 46.150 6.334963
9846 8 0.99 46.200 6.327043
9847 8 0.99 46.250 6.313104
9848 8 0.99 46.300 6.298043
9849 8 0.99 46.350 6.287152
9850 8 0.99 46.400 6.284274
9851 8 0.99 46.450 6.290485
9852 8 0.99 46.500 6.303911
9853 8 0.99 46.550 6.320629
9854 8 0.99 46.600 6.336051
9855 8 0.99 46.650 6.346130
9856 8 0.99 46.700 6.348156
9857 8 0.99 46.750 6.341224
9858 8 0.99 46.800 6.326550
9859 8 0.99 46.850 6.307635
9860 8 0.99 46.900 6.289969
9861 8 0.99 46.950 6.279848
9862 8 0.99 47.000 6.282135
9863 8 0.99 47.050 6.297769
9864 8 0.99 47.100 6.322551
9865 8 0.99 47.150 6.348288
9866 8 0.99 47.200 6.365735
9867 8 0.99 47.250 6.367851
9868 8 0.99 47.300 6.352341
9869 8 0.99 47.350 6.323123
9870 8 0.99 47.400 6.290146
9871 8 0.99 47.450 6.266277
9872 8 0.99 47.500 6.260613
9873 8 0.99 47.550 6.271240
9874 8 0.99 47.600 6.283123
9875 8 0.99 47.650 6.272486
9876 8 0.99 47.700 6.212516
9877 8 0.99 47.750 6.075213
9878 8 0.99 47.800 5.827696
9879 8 0.99 47.850 5.420736
9880 8 0.99 47.900 4.756262
9881 8 0.99 47.950 3.552880
9882 8 0.99 48.000 0.264102
9883 8 0.99 48.050 3.156210
9884 8 0.99 48.100 4.558505
9885 8 0.99 48.150 5.295072
9886 8 0.99 48.200 5.741935
9887 8 0.99 48.250 6.017892
9888 8 0.99 48.300 6.179750
9889 8 0.99 48.350 6.263718
9890 8 0.99 48.400 6.298310
9891 8 0.99 48.450 6.307721
9892 8 0.99 48.500 6.310249
9893 8 0.99 48.550 6.315169
9894 8 0.99 48.600 6.322247
9895 8 0.99 48.650 6.325664
9896 8 0.99 48.700 6.319947
9897 8 0.99 48.750 6.304333
9898 8 0.99 48.800 6.283831
9899 8 0.99 48.850 6.266831
9900 8 0.99 48.900 6.260248
9901 8 0.99 48.950 6.265041
9902 8 0.99 49.000 6.275588
9903 8 0.99 49.050 6.283550
9904 8 0.99 49.100 6.283269
9905 8 0.99 49.150 6.275339
9906 8 0.99 49.200 6.266577
9907 8 0.99 49.250 6.265793
9908 8 0.99 49.300 6.276587
9909 8 0.99 49.350 6.291600
9910 8 0.99 49.400 6.292552
9911 8 0.99 49.450 6.254834
9912 8 0.99 49.500 6.151284
9913 8 0.99 49.550 5.951367
9914 8 0.99 49.600 5.613723
9915 8 0.99 49.650 5.064962
9916 8 0.99 49.700 4.125353
9917 8 0.99 49.750 2.029672
9918 8 0.99 49.800 2.193082
9919 8 0.99 49.850 4.182616
9920 8 0.99 49.900 5.096320
9921 8 0.99 49.950 5.634595
9922 8 0.99 50.000 5.968677
9923 8 0.99 50.050 6.169639
9924 8 0.99 50.100 6.277515
9925 8 0.99 50.150 6.321196
9926 8 0.99 50.200 6.325547
9927 8 0.99 50.250 6.312794
9928 8 0.99 50.300 6.300221
9929 8 0.99 50.350 6.296705
9930 8 0.99 50.400 6.301837
9931 8 0.99 50.450 6.309324
9932 8 0.99 50.500 6.312409
9933 8 0.99 50.550 6.308021
9934 8 0.99 50.600 6.298203
9935 8 0.99 50.650 6.288958
9936 8 0.99 50.700 6.287161
9937 8 0.99 50.750 6.296790
9938 8 0.99 50.800 6.316493
9939 8 0.99 50.850 6.340049
9940 8 0.99 50.900 6.359180
9941 8 0.99 50.950 6.366818
9942 8 0.99 51.000 6.359351
9943 8 0.99 51.050 6.337600
9944 8 0.99 51.100 6.306705
9945 8 0.99 51.150 6.274933
9946 8 0.99 51.200 6.251217
9947 8 0.99 51.250 6.241904
9948 8 0.99 51.300 6.248220
9949 8 0.99 51.350 6.266152
9950 8 0.99 51.400 6.288779
9951 8 0.99 51.450 6.309372
9952 8 0.99 51.500 6.323552
9953 8 0.99 51.550 6.329946
9954 8 0.99 51.600 6.329644
9955 8 0.99 51.650 6.325031
9956 8 0.99 51.700 6.318560
9957 8 0.99 51.750 6.312005
9958 8 0.99 51.800 6.306422
9959 8 0.99 51.850 6.302655
9960 8 0.99 51.900 6.301788
9961 8 0.99 51.950 6.304993
9962 8 0.99 52.000 6.312620
9963 8 0.99 52.050 6.323110
9964 8 0.99 52.100 6.332617
9965 8 0.99 52.150 6.335951
9966 8 0.99 52.200 6.328638
9967 8 0.99 52.250 6.309351
9968 8 0.99 52.300 6.281841
9969 8 0.99 52.350 6.255242
9970 8 0.99 52.400 6.241266
9971 8 0.99 52.450 6.247816
9972 8 0.99 52.500 6.272177
9973 8 0.99 52.550 6.299255
9974 8 0.99 52.600 6.305978
9975 8 0.99 52.650 6.266879
9976 8 0.99 52.700 6.156095
9977 8 0.99 52.750 5.944529
9978 8 0.99 52.800 5.590997
9979 8 0.99 52.850 5.019169
9980 8 0.99 52.900 4.035135
9981 8 0.99 52.950 1.759982
9982 8 0.99 53.000 2.416492
9983 8 0.99 53.050 4.265121
9984 8 0.99 53.100 5.142058
9985 8 0.99 53.150 5.662707
9986 8 0.99 53.200 5.985467
9987 8 0.99 53.250 6.177287
9988 8 0.99 53.300 6.276178
9989 8 0.99 53.350 6.309855
9990 8 0.99 53.400 6.302738
9991 8 0.99 53.450 6.277676
9992 8 0.99 53.500 6.253838
9993 8 0.99 53.550 6.242812
9994 8 0.99 53.600 6.246707
9995 8 0.99 53.650 6.260716
9996 8 0.99 53.700 6.278318
9997 8 0.99 53.750 6.295269
9998 8 0.99 53.800 6.310538
9999 8 0.99 53.850 6.324780
10000 8 0.99 53.900 6.338033
10001 8 0.99 53.950 6.348320

E-025-lambda-flow.json — 9.2 KB, updated 08-19-2026

JSON sidecar (click to expand)
{
  "experiment": "E-025",
  "task": "2.13: lambda-flow numerics (ground-state channel)",
  "script": "research/numerics/scripts/E-025-lambda-flow.py",
  "parameters": {
    "a_list": [
      4.0,
      8.0,
      12.0
    ],
    "ladder_rel": [
      0.0,
      0.5,
      0.9,
      0.99,
      0.999
    ],
    "z_max": 300.0
  },
  "checks": {
    "V1_lambda_a_positive_law": false,
    "V2_baseline_matches_E022": true,
    "V3_solve_residuals": false,
    "V4_sister_reported": true
  },
  "key_values": {
    "4": {
      "lambda_a": 5.147476282756457e-11,
      "lambda_law_ratio": 3.783885052191424e-08,
      "sister_corr": -0.2997460393487147,
      "sister_crossings": 57,
      "sister_cross_err": 16.71385138849778,
      "ladder": {
        "-1": {
          "lambda": -1.0,
          "Delta": 2.1593140478568413,
          "floor": -0.106956845297883,
          "plateau": 2.0523572025589583,
          "z1_times_a": 4.504293602793437,
          "n_zeros": 381,
          "lock_metric": 0.10068828882668726,
          "residual": 48.3075476074236,
          "mass_pm0.1": 116.6477713523963,
          "solve_resid": 1.588314368200427e-16
        },
        "0": {
          "lambda": 0.0,
          "Delta": 6.988266234191322,
          "floor": 4.4061523727558125,
          "plateau": 11.394418606947134,
          "z1_times_a": 6.9816622297266715,
          "n_zeros": 381,
          "lock_metric": 7.623144158814413e-05,
          "residual": 10.718615266368445,
          "mass_pm0.1": 127.66723750632949,
          "solve_resid": 5.831210378871265e-10
        },
        "0.5": {
          "lambda": 2.5737381413782287e-11,
          "Delta": 6.988147390288639,
          "floor": 4.40643861356427,
          "plateau": 11.39458600385291,
          "z1_times_a": 7.529134813217906,
          "n_zeros": 381,
          "lock_metric": 7.612992319993416e-05,
          "residual": 10.708784969160092,
          "mass_pm0.1": 127.66507880386828,
          "solve_resid": 2.2679633796708461e-07
        },
        "0.9": {
          "lambda": 4.632728654480812e-11,
          "Delta": 6.987816911690756,
          "floor": 4.407352992396391,
          "plateau": 11.395169904087147,
          "z1_times_a": 8.199973337356482,
          "n_zeros": 381,
          "lock_metric": 7.609529464864893e-05,
          "residual": 10.693566680716287,
          "mass_pm0.1": 127.66305186152309,
          "solve_resid": 5.74001354100028e-08
        },
        "0.99": {
          "lambda": 5.096001519928893e-11,
          "Delta": 6.985923725722728,
          "floor": 4.413501470282933,
          "plateau": 11.39942519600566,
          "z1_times_a": 8.385279853786248,
          "n_zeros": 381,
          "lock_metric": 7.613585558613195e-05,
          "residual": 10.687862236134379,
          "mass_pm0.1": 127.66303788362372,
          "solve_resid": 7.885784848149343e-08
        },
        "0.999": {
          "lambda": 5.142328806473701e-11,
          "Delta": 6.981356415160433,
          "floor": 4.428696114419206,
          "plateau": 11.41005252957964,
          "z1_times_a": 8.40265274248596,
          "n_zeros": 381,
          "lock_metric": 7.614180518407809e-05,
          "residual": 10.687276136059936,
          "mass_pm0.1": 127.66306304014373,
          "solve_resid": 4.3024270231059637e-07
        }
      }
    },
    "8": {
      "lambda_a": -0.028701446327309428,
      "lambda_law_ratio": -15509.255243545844,
      "sister_corr": 0.00255772313467671,
      "sister_crossings": 118,
      "sister_cross_err": 18.633851388497806,
      "ladder": {
        "-1": {
          "lambda": -1.0,
          "Delta": 2.7352201581877043,
          "floor": 0.030554703235580436,
          "plateau": 2.7657748614232847,
          "z1_times_a": 4.496810102477515,
          "n_zeros": 763,
          "lock_metric": 0.057829797607063305,
          "residual": 58.651149793527864,
          "mass_pm0.1": 133.51693635274552,
          "solve_resid": 3.0889933849343203e-16
        },
        "0": {
          "lambda": -0.0,
          "Delta": -33.528034311582985,
          "floor": -423.8211920422485,
          "plateau": -457.3492263538315,
          "z1_times_a": 1.8093924166647792,
          "n_zeros": 548,
          "lock_metric": 0.0003714172395450807,
          "residual": 11.144052463580522,
          "mass_pm0.1": 127.82233169936302,
          "solve_resid": 0.00020060867988680158
        },
        "0.5": {
          "lambda": -0.014350723163654714,
          "Delta": 5.2473962964853165,
          "floor": 1.7336013999547513,
          "plateau": 6.980997696440068,
          "z1_times_a": 4.498199381863492,
          "n_zeros": 755,
          "lock_metric": 0.0013619017100949234,
          "residual": 12.052748449542477,
          "mass_pm0.1": 127.6918385778458,
          "solve_resid": 6.867617904061254e-13
        },
        "0.9": {
          "lambda": -0.025831301694578486,
          "Delta": 5.070963483079262,
          "floor": 1.333969497055245,
          "plateau": 6.4049329801345065,
          "z1_times_a": 4.497946694779682,
          "n_zeros": 761,
          "lock_metric": 0.0030658627341504153,
          "residual": 13.166729243282433,
          "mass_pm0.1": 127.88295027859101,
          "solve_resid": 1.2366600020318642e-13
        },
        "0.99": {
          "lambda": -0.028414431864036332,
          "Delta": 5.037993177808347,
          "floor": 1.272757105974604,
          "plateau": 6.3107502837829506,
          "z1_times_a": 4.5002419528288815,
          "n_zeros": 761,
          "lock_metric": 0.0018016901302855674,
          "residual": 12.566089279144094,
          "mass_pm0.1": 127.72782983544735,
          "solve_resid": 2.3651958714205305e-14
        },
        "0.999": {
          "lambda": -0.028672744880982117,
          "Delta": 5.034476634521893,
          "floor": 1.2679657032940865,
          "plateau": 6.30244233781598,
          "z1_times_a": 4.495276414486893,
          "n_zeros": 762,
          "lock_metric": 0.0026471749147504637,
          "residual": 12.710218865379431,
          "mass_pm0.1": 127.70661909585449,
          "solve_resid": 1.413266823421088e-14
        }
      }
    },
    "12": {
      "lambda_a": -0.0682789599667037,
      "lambda_law_ratio": -27121745.659492664,
      "sister_corr": -0.014045368106618201,
      "sister_crossings": 137,
      "sister_cross_err": 18.87885138849781,
      "ladder": {
        "-1": {
          "lambda": -1.0,
          "Delta": 2.9442229398281423,
          "floor": 0.22834844487190686,
          "plateau": 3.172571384700049,
          "z1_times_a": 4.495304974166888,
          "n_zeros": 1145,
          "lock_metric": 0.032106115361490564,
          "residual": 57.59425795470206,
          "mass_pm0.1": 133.31147006008132,
          "solve_resid": 5.565591099499078e-16
        },
        "0": {
          "lambda": -0.0,
          "Delta": 145.87233394077197,
          "floor": -369.5573776739587,
          "plateau": -223.68504373318672,
          "z1_times_a": 47.08983339916813,
          "n_zeros": 788,
          "lock_metric": 0.11988236920414796,
          "residual": 10.704038663232183,
          "mass_pm0.1": 126.78597572681957,
          "solve_resid": 0.00035380049050859374
        },
        "0.5": {
          "lambda": -0.03413947998335185,
          "Delta": 4.517541168837466,
          "floor": 2.012961451365246,
          "plateau": 6.530502620202712,
          "z1_times_a": 4.495602611843745,
          "n_zeros": 1127,
          "lock_metric": 0.0016805564393911263,
          "residual": 12.576655387504829,
          "mass_pm0.1": 127.80026124326591,
          "solve_resid": 2.361326934047527e-10
        },
        "0.9": {
          "lambda": -0.06145106397003333,
          "Delta": 4.373132705161369,
          "floor": 1.5778486637685551,
          "plateau": 5.9509813689299245,
          "z1_times_a": 4.4955360310205545,
          "n_zeros": 1141,
          "lock_metric": 0.002769088717484152,
          "residual": 14.752940107360544,
          "mass_pm0.1": 128.0191898119376,
          "solve_resid": 3.98328418223779e-14
        },
        "0.99": {
          "lambda": -0.06759617036703666,
          "Delta": 4.345367791047291,
          "floor": 1.511240245787921,
          "plateau": 5.856608036835212,
          "z1_times_a": 4.495571310035841,
          "n_zeros": 1143,
          "lock_metric": 0.0030508525265727083,
          "residual": 15.875746711965263,
          "mass_pm0.1": 128.06515694909066,
          "solve_resid": 2.4872731506462405e-14
        },
        "0.999": {
          "lambda": -0.068210681006737,
          "Delta": 4.342626921736709,
          "floor": 1.505160225931791,
          "plateau": 5.847787147668501,
          "z1_times_a": 4.495984857538869,
          "n_zeros": 1144,
          "lock_metric": 0.003716572174764971,
          "residual": 15.417387806155247,
          "mass_pm0.1": 128.0996751837004,
          "solve_resid": 6.800740851599709e-15
        }
      }
    }
  },
  "elapsed_seconds": 307.2,
  "timestamp_utc": "2026-08-19T18:39:23.796254+00:00"
}

Source code

Python script (click to expand)
"""E-025 — task 2.13: lambda-flow numerics (D-042 §3, Suzuki's lever).

At fixed lambda = -1 the family D_{a,theta} equilibrates at the
consolidation boundary (linear-K law, D-042). The remaining channel:
lambda -> lambda_a^- (bottom of the Weil-form spectrum, lambda_a ~
e^{-1.65a}), where T_a(lambda) = Q - lambda M becomes near-singular
and the ground state v_a dominates — the regime of Suzuki's sister
conjecture (1.2) (c_a v^_a -> xi(1/2+iz) = Xi(z)).

Mechanism being tested: as lambda -> lambda_a^-, the deficiency
vectors v_pm(lambda) ~ v_a/(lambda_a - lambda), so the zeros of
W(a,theta;.) flow toward the zeros of v^_a; if v^_a ~ Xi, those are
the gamma's => locking.

Per a in {4, 8, 12}:
  A. lambda_a and ground state v_a: smallest generalized eigenpair of
     the pencil (Q, M) restricted to the mean-zero subspace (QR
     projection, dense eigh; n <= 2400).
  B. sister-conjecture observable: v^_a(z) = hat_FT * sum e^{izx} v_a
     on z-grid; correlation of Re v^_a with Xi(z) (flint xi), zero
     crossings vs the first gammas.
  C. lambda ladder: lambda/lambda_a in {-1(abs), 0, 0.5, 0.9, 0.99,
     0.999}:  K_lambda(z,z) on z-grid in [14,60] (valley depth
     Delta(lambda), floor, plateau); zeros of W (theta=pi) ->
     LOCKING metric: mean over first 20 gammas of dist(gamma, nearest
     W-zero)/(pi/2a) (1.0 = chance level); residual mass R(lambda).

Checks:
  V1. lambda_a positive and consistent with the e^{-1.65a} law
      (order of magnitude; D-017/D-019).
  V2. lambda=-1 baseline reproduces E-022: z1*a in [4.3,4.7],
      Delta within 0.05 of E-022b valley depth.
  V3. Levinson residuals sane at all ladder rungs
      (|T v - b|/|b| < 1e-6 except possibly the 0.999 rung, reported).
  V4. sister observable reported (correlation v^_a vs Xi).

Outputs: research/numerics/data/E-025-lambda-flow.csv (+ .json)
"""
import importlib.util
import json
import sys
import time
from datetime import datetime, timezone
from pathlib import Path

import flint
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-025-lambda-flow.csv"
JSON = DATA / "E-025-lambda-flow.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 = E16.H_MAIN
LAM0 = E16.LAM_SHIFT          # -1.0 baseline
A_LIST = [4.0, 8.0, 12.0]
LADDER_REL = [0.0, 0.5, 0.9, 0.99, 0.999]   # x lambda_a (plus lam=-1)
Z_MAX = 300.0
Z_METRIC = 280.0
N_GRID = 40000
XN = E16.XN
mp.mp.dps = 40


def collect_t_points(a, h):
    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 xi_real(z):
    """Xi(z) = xi(1/2 - i z) via flint (real on R)."""
    flint.ctx.prec = 120
    out = np.empty(len(z))
    for i, zz in enumerate(z):
        s = flint.acb(0.5, -float(zz))
        val = (0.5 * s * (s - 1) * flint.acb.pi() ** (-s / 2)
               * (s / 2).gamma() * s.zeta())
        out[i] = float(val.real)
    return out


def locate_zeros_pi(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 = E16.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)


def ground_state(Q, M):
    """Smallest generalized eigenpair of (Q, M) on the mean-zero
    subspace (E-009 route: QR projection)."""
    n = Q.shape[0]
    Z = np.linalg.qr(np.ones((n, 1)), mode="complete")[0][:, 1:]
    Qp = Z.T @ Q @ Z
    Mp = Z.T @ M @ Z
    evals, evecs = scipy.linalg.eigh(Qp, Mp)
    lam_a = float(evals[0])
    v = Z @ evecs[:, 0]
    return lam_a, v


def main() -> int:
    if JSON.exists() and "--force" not in sys.argv:
        print(f"cached: {JSON} (use --force to recompute)")
        return 0
    t0 = time.time()

    print("backend: load E-022 cache ...", flush=True)
    tq = np.concatenate([collect_t_points(a, H) for a in A_LIST])
    be = PrimeBackendV2(tq)
    be.load_cache(DATA / "E-022-backend-cache.npz")
    E16._BUILD.clear()
    E16.prime_sum_vec = be.prime_sum

    mp.mp.dps = 30
    gam = np.array([float(mp.zetazero(k).imag) for k in range(1, 201)])
    gam = gam[gam <= Z_METRIC]

    zgrid = np.arange(14.0, 60.0, 0.05)
    gsel = gam[(gam >= 14) & (gam < 60)]
    mids = (gsel[:-1] + gsel[1:]) / 2
    idxg = np.round((gsel - 14) / 0.05).astype(int)
    idxm = np.round((mids - 14) / 0.05).astype(int)
    XI = xi_real(zgrid)

    rows = []
    report = {"per_a": {}}
    v1_ok = v2_ok = v3_ok = True
    e022b_dip = {4.0: 2.1593, 8.0: 2.7352, 12.0: 2.9442}

    for a in A_LIST:
        ta = time.time()
        x, h, Q, M, b = E16.build(a, H)
        n = len(x)

        # A: ground state
        lam_a, v_a = ground_state(Q, M)
        if not (lam_a > 0):
            v1_ok = False
        law = np.exp(-1.65 * a)
        print(f"a={a:g}: lambda_a = {lam_a:.3e} (e^-1.65a = {law:.1e})",
              flush=True)

        # B: sister-conjecture observable
        E = np.exp(1j * np.outer(zgrid, x))
        vhat = E16.hat_FT(zgrid, h) * (E @ v_a)
        rv = vhat.real
        ca = float(np.dot(rv, XI) / np.dot(rv, rv))
        corr = float(np.corrcoef(rv, XI)[0, 1])
        # zero crossings of Re v^_a on grid
        sc = np.flatnonzero(np.sign(rv[:-1]) * np.sign(rv[1:]) < 0)
        cross = zgrid[sc]
        ncr = min(10, len(cross), len(gsel))
        xerr = float(np.mean(np.abs(cross[:ncr] - gsel[:ncr]))) \
            if ncr else float("nan")
        print(f"  sister: corr(v^,Xi) = {corr:+.4f}, {len(cross)} "
              f"crossings, mean |cross-gamma| (first {ncr}) = {xerr:.3f}",
              flush=True)

        per = {"lambda_a": lam_a, "lambda_law_ratio": lam_a / law,
               "sister_corr": corr, "sister_crossings": int(len(cross)),
               "sister_cross_err": xerr, "ladder": {}}

        # C: lambda ladder
        for tag, lam in ([("-1", LAM0)]
                         + [(f"{r:g}", r * lam_a) for r in LADDER_REL]):
            tc = Q[:, 0] - lam * (np.r_[2 * h / 3, h / 6,
                                        np.zeros(max(n - 2, 0))])
            u1 = scipy.linalg.solve_toeplitz((tc, tc), np.ones(n))
            s1 = u1.sum()
            T_dense = None  # built lazily for residual spot-checks

            def K1(z, _tc=tc, _u1=u1, _s1=s1, _chk=False):
                bz = E16.hat_FT(np.array([z]), h)[0] * np.exp(-1j * z * x)
                u0 = scipy.linalg.solve_toeplitz((_tc, _tc), bz)
                v = u0 - (u0.sum() / _s1) * _u1
                kv = float(np.real(np.conj(bz) @ v))
                if _chk:
                    Tm = scipy.linalg.toeplitz(_tc)
                    rs = float(np.max(np.abs(
                        Tm @ v + (u0.sum() / _s1) * np.ones(n) - bz))
                        / max(1.0, float(np.max(np.abs(bz)))))
                    return kv, rs
                return kv, 0.0

            lg = np.empty(len(zgrid))
            resmax = 0.0
            for i, zz in enumerate(zgrid):
                kv, rs = K1(zz, _chk=(i % 100 == 0))
                lg[i] = np.log(max(kv, 1e-300))
                resmax = max(resmax, rs)
            if resmax > 1e-6:
                v3_ok = False
            dip = float(lg[idxm].mean() - lg[idxg].mean())
            floor = float(lg[idxg].mean())
            plate = float(lg[idxm].mean())

            # zeros of W (theta=pi) at this lambda (Schur form,
            # validated 3.6e-14 in E-022)
            u0p = scipy.linalg.solve_toeplitz((tc, tc), b[+1.0])
            cp = u0p - (u0p.sum() / s1) * u1
            zeros = locate_zeros_pi(cp, x, h)
            zm = zeros[zeros <= Z_METRIC]
            # locking: mean normalized distance of first 20 gammas
            d20 = []
            for g in gam[:20]:
                d20.append(np.min(np.abs(zm - g)))
            lock = float(np.mean(d20) / (np.pi / (2 * a)))
            # weights & residual
            ws = np.array([1.0 / K1(z)[0] for z in zm])
            near_idx = np.array([np.argmin(np.abs(zm - g)) for g in gam])
            resid = float(ws.sum() - ws[near_idx].sum())
            m01 = float(ws[np.minimum.reduce([
                np.abs(zm - g) for g in gam]).reshape(-1) <= 0.1].sum()) \
                if len(zm) else 0.0

            per["ladder"][tag] = {
                "lambda": lam, "Delta": dip, "floor": floor,
                "plateau": plate, "z1_times_a": float(zeros[0] * a),
                "n_zeros": int(len(zeros)),
                "lock_metric": lock, "residual": resid,
                "mass_pm0.1": m01, "solve_resid": resmax,
            }
            print(f"  lam={tag}*lam_a ({lam:.3e}): Delta={dip:.3f}, "
                  f"z1a={zeros[0] * a:.3f}, lock={lock:.3f}, "
                  f"resid={resid:.1f}, K-resid={resmax:.1e}", flush=True)
            for zz, ll in zip(zgrid, lg):
                rows.append((a, tag, zz, ll))

        # V2: baseline checks (lambda = -1)
        base = per["ladder"]["-1"]
        if not (4.3 < base["z1_times_a"] < 4.7):
            v2_ok = False
        if abs(base["Delta"] - e022b_dip[a]) > 0.05:
            v2_ok = False
        report["per_a"][f"{a:g}"] = per
        print(f"a={a:g} done ({time.time() - ta:.0f}s)", flush=True)

    checks = {"V1_lambda_a_positive_law": v1_ok,
              "V2_baseline_matches_E022": v2_ok,
              "V3_solve_residuals": v3_ok,
              "V4_sister_reported": True}

    import csv as csvmod
    with open(CSV, "w", newline="") as f:
        w = csvmod.writer(f)
        w.writerow(["a", "lambda_tag", "z", "logK"])
        for a, tag, zz, ll in rows:
            w.writerow([f"{a:g}", tag, f"{zz:.3f}", f"{ll:.6f}"])

    meta = {
        "experiment": "E-025",
        "task": "2.13: lambda-flow numerics (ground-state channel)",
        "script": "research/numerics/scripts/E-025-lambda-flow.py",
        "parameters": {"a_list": A_LIST, "ladder_rel": LADDER_REL,
                       "z_max": Z_MAX},
        "checks": checks,
        "key_values": report["per_a"],
        "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())