E-022b-valley-analysis.py
Experiments: E-022b · script updated 08-19-2026
E-022b-valley.csv
— 87.2 KB, updated 08-19-2026
| # | a | z | logK |
|---|---|---|---|
| 3502 | 10 | 51.000 | 2.992744 |
| 3503 | 10 | 51.050 | 2.994277 |
| 3504 | 10 | 51.100 | 2.992108 |
| 3505 | 10 | 51.150 | 2.987714 |
| 3506 | 10 | 51.200 | 2.984243 |
| 3507 | 10 | 51.250 | 2.984101 |
| 3508 | 10 | 51.300 | 2.987134 |
| 3509 | 10 | 51.350 | 2.990860 |
| 3510 | 10 | 51.400 | 2.992519 |
| 3511 | 10 | 51.450 | 2.991231 |
| 3512 | 10 | 51.500 | 2.988598 |
| 3513 | 10 | 51.550 | 2.987304 |
| 3514 | 10 | 51.600 | 2.988762 |
| 3515 | 10 | 51.650 | 2.991773 |
| 3516 | 10 | 51.700 | 2.993462 |
| 3517 | 10 | 51.750 | 2.991788 |
| 3518 | 10 | 51.800 | 2.987541 |
| 3519 | 10 | 51.850 | 2.984038 |
| 3520 | 10 | 51.900 | 2.984441 |
| 3521 | 10 | 51.950 | 2.988740 |
| 3522 | 10 | 52.000 | 2.993231 |
| 3523 | 10 | 52.050 | 2.993386 |
| 3524 | 10 | 52.100 | 2.987874 |
| 3525 | 10 | 52.150 | 2.980394 |
| 3526 | 10 | 52.200 | 2.977244 |
| 3527 | 10 | 52.250 | 2.981684 |
| 3528 | 10 | 52.300 | 2.989788 |
| 3529 | 10 | 52.350 | 2.992444 |
| 3530 | 10 | 52.400 | 2.982727 |
| 3531 | 10 | 52.450 | 2.963213 |
| 3532 | 10 | 52.500 | 2.947414 |
| 3533 | 10 | 52.550 | 2.950822 |
| 3534 | 10 | 52.600 | 2.974177 |
| 3535 | 10 | 52.650 | 2.993978 |
| 3536 | 10 | 52.700 | 2.969666 |
| 3537 | 10 | 52.750 | 2.855274 |
| 3538 | 10 | 52.800 | 2.600684 |
| 3539 | 10 | 52.850 | 2.138188 |
| 3540 | 10 | 52.900 | 1.352273 |
| 3541 | 10 | 52.950 | 0.191121 |
| 3542 | 10 | 53.000 | 0.405254 |
| 3543 | 10 | 53.050 | 1.531246 |
| 3544 | 10 | 53.100 | 2.244609 |
| 3545 | 10 | 53.150 | 2.661331 |
| 3546 | 10 | 53.200 | 2.885373 |
| 3547 | 10 | 53.250 | 2.979368 |
| 3548 | 10 | 53.300 | 2.992104 |
| 3549 | 10 | 53.350 | 2.969056 |
| 3550 | 10 | 53.400 | 2.948603 |
| 3551 | 10 | 53.450 | 2.949765 |
| 3552 | 10 | 53.500 | 2.967744 |
| 3553 | 10 | 53.550 | 2.986102 |
| 3554 | 10 | 53.600 | 2.992950 |
| 3555 | 10 | 53.650 | 2.987892 |
| 3556 | 10 | 53.700 | 2.979149 |
| 3557 | 10 | 53.750 | 2.975706 |
| 3558 | 10 | 53.800 | 2.980372 |
| 3559 | 10 | 53.850 | 2.988849 |
| 3560 | 10 | 53.900 | 2.994622 |
| 3561 | 10 | 53.950 | 2.994456 |
| 3562 | 10 | 54.000 | 2.990167 |
| 3563 | 10 | 54.050 | 2.986270 |
| 3564 | 10 | 54.100 | 2.985938 |
| 3565 | 10 | 54.150 | 2.988636 |
| 3566 | 10 | 54.200 | 2.991232 |
| 3567 | 10 | 54.250 | 2.991144 |
| 3568 | 10 | 54.300 | 2.988602 |
| 3569 | 10 | 54.350 | 2.986252 |
| 3570 | 10 | 54.400 | 2.986668 |
| 3571 | 10 | 54.450 | 2.989967 |
| 3572 | 10 | 54.500 | 2.993646 |
| 3573 | 10 | 54.550 | 2.994729 |
| 3574 | 10 | 54.600 | 2.992267 |
| 3575 | 10 | 54.650 | 2.988151 |
| 3576 | 10 | 54.700 | 2.985605 |
| 3577 | 10 | 54.750 | 2.986542 |
| 3578 | 10 | 54.800 | 2.989999 |
| 3579 | 10 | 54.850 | 2.993019 |
| 3580 | 10 | 54.900 | 2.993188 |
| 3581 | 10 | 54.950 | 2.990639 |
| 3582 | 10 | 55.000 | 2.987889 |
| 3583 | 10 | 55.050 | 2.987610 |
| 3584 | 10 | 55.100 | 2.990167 |
| 3585 | 10 | 55.150 | 2.993151 |
| 3586 | 10 | 55.200 | 2.993460 |
| 3587 | 10 | 55.250 | 2.990164 |
| 3588 | 10 | 55.300 | 2.985652 |
| 3589 | 10 | 55.350 | 2.983883 |
| 3590 | 10 | 55.400 | 2.986841 |
| 3591 | 10 | 55.450 | 2.992259 |
| 3592 | 10 | 55.500 | 2.995052 |
| 3593 | 10 | 55.550 | 2.991548 |
| 3594 | 10 | 55.600 | 2.983089 |
| 3595 | 10 | 55.650 | 2.975843 |
| 3596 | 10 | 55.700 | 2.976058 |
| 3597 | 10 | 55.750 | 2.983907 |
| 3598 | 10 | 55.800 | 2.991842 |
| 3599 | 10 | 55.850 | 2.990013 |
| 3600 | 10 | 55.900 | 2.974833 |
| 3601 | 10 | 55.950 | 2.954400 |
| 3602 | 10 | 56.000 | 2.945346 |
| 3603 | 10 | 56.050 | 2.958792 |
| 3604 | 10 | 56.100 | 2.984373 |
| 3605 | 10 | 56.150 | 2.988716 |
| 3606 | 10 | 56.200 | 2.927341 |
| 3607 | 10 | 56.250 | 2.752736 |
| 3608 | 10 | 56.300 | 2.408861 |
| 3609 | 10 | 56.350 | 1.809545 |
| 3610 | 10 | 56.400 | 0.815081 |
| 3611 | 10 | 56.450 | -0.039585 |
| 3612 | 10 | 56.500 | 0.992788 |
| 3613 | 10 | 56.550 | 1.919591 |
| 3614 | 10 | 56.600 | 2.472493 |
| 3615 | 10 | 56.650 | 2.786464 |
| 3616 | 10 | 56.700 | 2.941088 |
| 3617 | 10 | 56.750 | 2.990175 |
| 3618 | 10 | 56.800 | 2.980658 |
| 3619 | 10 | 56.850 | 2.955893 |
| 3620 | 10 | 56.900 | 2.946258 |
| 3621 | 10 | 56.950 | 2.958457 |
| 3622 | 10 | 57.000 | 2.979643 |
| 3623 | 10 | 57.050 | 2.993848 |
| 3624 | 10 | 57.100 | 2.994426 |
| 3625 | 10 | 57.150 | 2.985790 |
| 3626 | 10 | 57.200 | 2.977593 |
| 3627 | 10 | 57.250 | 2.976686 |
| 3628 | 10 | 57.300 | 2.982575 |
| 3629 | 10 | 57.350 | 2.989449 |
| 3630 | 10 | 57.400 | 2.991905 |
| 3631 | 10 | 57.450 | 2.989055 |
| 3632 | 10 | 57.500 | 2.984422 |
| 3633 | 10 | 57.550 | 2.982555 |
| 3634 | 10 | 57.600 | 2.985252 |
| 3635 | 10 | 57.650 | 2.990392 |
| 3636 | 10 | 57.700 | 2.994024 |
| 3637 | 10 | 57.750 | 2.993615 |
| 3638 | 10 | 57.800 | 2.989850 |
| 3639 | 10 | 57.850 | 2.985885 |
| 3640 | 10 | 57.900 | 2.984799 |
| 3641 | 10 | 57.950 | 2.987169 |
| 3642 | 10 | 58.000 | 2.990661 |
| 3643 | 10 | 58.050 | 2.991914 |
| 3644 | 10 | 58.100 | 2.989187 |
| 3645 | 10 | 58.150 | 2.983845 |
| 3646 | 10 | 58.200 | 2.979593 |
| 3647 | 10 | 58.250 | 2.979805 |
| 3648 | 10 | 58.300 | 2.984759 |
| 3649 | 10 | 58.350 | 2.991049 |
| 3650 | 10 | 58.400 | 2.993926 |
| 3651 | 10 | 58.450 | 2.990893 |
| 3652 | 10 | 58.500 | 2.983916 |
| 3653 | 10 | 58.550 | 2.978396 |
| 3654 | 10 | 58.600 | 2.978954 |
| 3655 | 10 | 58.650 | 2.984884 |
| 3656 | 10 | 58.700 | 2.989573 |
| 3657 | 10 | 58.750 | 2.985308 |
| 3658 | 10 | 58.800 | 2.970252 |
| 3659 | 10 | 58.850 | 2.952557 |
| 3660 | 10 | 58.900 | 2.946916 |
| 3661 | 10 | 58.950 | 2.961883 |
| 3662 | 10 | 59.000 | 2.986270 |
| 3663 | 10 | 59.050 | 2.988184 |
| 3664 | 10 | 59.100 | 2.925237 |
| 3665 | 10 | 59.150 | 2.751284 |
| 3666 | 10 | 59.200 | 2.410954 |
| 3667 | 10 | 59.250 | 1.818693 |
| 3668 | 10 | 59.300 | 0.834458 |
| 3669 | 10 | 59.350 | -0.043694 |
| 3670 | 10 | 59.400 | 0.975456 |
| 3671 | 10 | 59.450 | 1.912938 |
| 3672 | 10 | 59.500 | 2.472307 |
| 3673 | 10 | 59.550 | 2.788950 |
| 3674 | 10 | 59.600 | 2.943031 |
| 3675 | 10 | 59.650 | 2.989229 |
| 3676 | 10 | 59.700 | 2.976421 |
| 3677 | 10 | 59.750 | 2.950589 |
| 3678 | 10 | 59.800 | 2.943049 |
| 3679 | 10 | 59.850 | 2.957892 |
| 3680 | 10 | 59.900 | 2.978382 |
| 3681 | 10 | 59.950 | 2.987377 |
| 3682 | 12 | 14.000 | 2.720692 |
| 3683 | 12 | 14.050 | 2.063612 |
| 3684 | 12 | 14.100 | 0.816017 |
| 3685 | 12 | 14.150 | 0.195998 |
| 3686 | 12 | 14.200 | 1.667207 |
| 3687 | 12 | 14.250 | 2.514760 |
| 3688 | 12 | 14.300 | 2.947872 |
| 3689 | 12 | 14.350 | 3.136153 |
| 3690 | 12 | 14.400 | 3.177500 |
| 3691 | 12 | 14.450 | 3.153484 |
| 3692 | 12 | 14.500 | 3.131875 |
| 3693 | 12 | 14.550 | 3.140799 |
| 3694 | 12 | 14.600 | 3.164328 |
| 3695 | 12 | 14.650 | 3.177027 |
| 3696 | 12 | 14.700 | 3.172667 |
| 3697 | 12 | 14.750 | 3.163494 |
| 3698 | 12 | 14.800 | 3.162629 |
| 3699 | 12 | 14.850 | 3.170271 |
| 3700 | 12 | 14.900 | 3.177020 |
| 3701 | 12 | 14.950 | 3.176608 |
| 3702 | 12 | 15.000 | 3.171857 |
| 3703 | 12 | 15.050 | 3.169577 |
| 3704 | 12 | 15.100 | 3.172247 |
| 3705 | 12 | 15.150 | 3.176155 |
| 3706 | 12 | 15.200 | 3.176905 |
| 3707 | 12 | 15.250 | 3.174548 |
| 3708 | 12 | 15.300 | 3.172725 |
| 3709 | 12 | 15.350 | 3.173877 |
| 3710 | 12 | 15.400 | 3.176571 |
| 3711 | 12 | 15.450 | 3.177741 |
| 3712 | 12 | 15.500 | 3.176455 |
| 3713 | 12 | 15.550 | 3.174673 |
| 3714 | 12 | 15.600 | 3.174583 |
| 3715 | 12 | 15.650 | 3.176064 |
| 3716 | 12 | 15.700 | 3.177180 |
| 3717 | 12 | 15.750 | 3.176731 |
| 3718 | 12 | 15.800 | 3.175559 |
| 3719 | 12 | 15.850 | 3.175296 |
| 3720 | 12 | 15.900 | 3.176314 |
| 3721 | 12 | 15.950 | 3.177402 |
| 3722 | 12 | 16.000 | 3.177358 |
| 3723 | 12 | 16.050 | 3.176396 |
| 3724 | 12 | 16.100 | 3.175751 |
| 3725 | 12 | 16.150 | 3.176147 |
| 3726 | 12 | 16.200 | 3.177022 |
| 3727 | 12 | 16.250 | 3.177347 |
| 3728 | 12 | 16.300 | 3.176871 |
| 3729 | 12 | 16.350 | 3.176311 |
| 3730 | 12 | 16.400 | 3.176381 |
| 3731 | 12 | 16.450 | 3.176947 |
| 3732 | 12 | 16.500 | 3.177283 |
| 3733 | 12 | 16.550 | 3.177009 |
| 3734 | 12 | 16.600 | 3.176528 |
| 3735 | 12 | 16.650 | 3.176478 |
| 3736 | 12 | 16.700 | 3.176944 |
| 3737 | 12 | 16.750 | 3.177376 |
| 3738 | 12 | 16.800 | 3.177270 |
| 3739 | 12 | 16.850 | 3.176759 |
| 3740 | 12 | 16.900 | 3.176432 |
| 3741 | 12 | 16.950 | 3.176639 |
| 3742 | 12 | 17.000 | 3.177121 |
| 3743 | 12 | 17.050 | 3.177351 |
| 3744 | 12 | 17.100 | 3.177143 |
| 3745 | 12 | 17.150 | 3.176825 |
| 3746 | 12 | 17.200 | 3.176811 |
| 3747 | 12 | 17.250 | 3.177112 |
| 3748 | 12 | 17.300 | 3.177346 |
| 3749 | 12 | 17.350 | 3.177210 |
| 3750 | 12 | 17.400 | 3.176833 |
| 3751 | 12 | 17.450 | 3.176628 |
| 3752 | 12 | 17.500 | 3.176807 |
| 3753 | 12 | 17.550 | 3.177139 |
| 3754 | 12 | 17.600 | 3.177227 |
| 3755 | 12 | 17.650 | 3.176975 |
| 3756 | 12 | 17.700 | 3.176701 |
| 3757 | 12 | 17.750 | 3.176767 |
| 3758 | 12 | 17.800 | 3.177136 |
| 3759 | 12 | 17.850 | 3.177406 |
| 3760 | 12 | 17.900 | 3.177268 |
| 3761 | 12 | 17.950 | 3.176885 |
| 3762 | 12 | 18.000 | 3.176700 |
| 3763 | 12 | 18.050 | 3.176900 |
| 3764 | 12 | 18.100 | 3.177178 |
| 3765 | 12 | 18.150 | 3.177100 |
| 3766 | 12 | 18.200 | 3.176680 |
| 3767 | 12 | 18.250 | 3.176417 |
| 3768 | 12 | 18.300 | 3.176709 |
| 3769 | 12 | 18.350 | 3.177304 |
| 3770 | 12 | 18.400 | 3.177523 |
| 3771 | 12 | 18.450 | 3.177047 |
| 3772 | 12 | 18.500 | 3.176349 |
| 3773 | 12 | 18.550 | 3.176189 |
| 3774 | 12 | 18.600 | 3.176720 |
| 3775 | 12 | 18.650 | 3.177284 |
| 3776 | 12 | 18.700 | 3.177202 |
| 3777 | 12 | 18.750 | 3.176620 |
| 3778 | 12 | 18.800 | 3.176330 |
| 3779 | 12 | 18.850 | 3.176734 |
| 3780 | 12 | 18.900 | 3.177252 |
| 3781 | 12 | 18.950 | 3.177013 |
| 3782 | 12 | 19.000 | 3.176036 |
| 3783 | 12 | 19.050 | 3.175383 |
| 3784 | 12 | 19.100 | 3.175918 |
| 3785 | 12 | 19.150 | 3.177131 |
| 3786 | 12 | 19.200 | 3.177596 |
| 3787 | 12 | 19.250 | 3.176676 |
| 3788 | 12 | 19.300 | 3.175389 |
| 3789 | 12 | 19.350 | 3.175250 |
| 3790 | 12 | 19.400 | 3.176353 |
| 3791 | 12 | 19.450 | 3.177154 |
| 3792 | 12 | 19.500 | 3.176398 |
| 3793 | 12 | 19.550 | 3.174859 |
| 3794 | 12 | 19.600 | 3.174530 |
| 3795 | 12 | 19.650 | 3.176013 |
| 3796 | 12 | 19.700 | 3.177408 |
| 3797 | 12 | 19.750 | 3.176497 |
| 3798 | 12 | 19.800 | 3.173744 |
| 3799 | 12 | 19.850 | 3.172205 |
| 3800 | 12 | 19.900 | 3.173873 |
| 3801 | 12 | 19.950 | 3.176752 |
| 3802 | 12 | 20.000 | 3.176850 |
| 3803 | 12 | 20.050 | 3.173231 |
| 3804 | 12 | 20.100 | 3.169877 |
| 3805 | 12 | 20.150 | 3.171195 |
| 3806 | 12 | 20.200 | 3.175821 |
| 3807 | 12 | 20.250 | 3.177090 |
| 3808 | 12 | 20.300 | 3.171043 |
| 3809 | 12 | 20.350 | 3.162796 |
| 3810 | 12 | 20.400 | 3.162216 |
| 3811 | 12 | 20.450 | 3.171079 |
| 3812 | 12 | 20.500 | 3.177380 |
| 3813 | 12 | 20.550 | 3.167328 |
| 3814 | 12 | 20.600 | 3.143907 |
| 3815 | 12 | 20.650 | 3.131142 |
| 3816 | 12 | 20.700 | 3.148979 |
| 3817 | 12 | 20.750 | 3.176141 |
| 3818 | 12 | 20.800 | 3.148399 |
| 3819 | 12 | 20.850 | 2.985073 |
| 3820 | 12 | 20.900 | 2.592271 |
| 3821 | 12 | 20.950 | 1.816014 |
| 3822 | 12 | 21.000 | 0.399378 |
| 3823 | 12 | 21.050 | 0.593288 |
| 3824 | 12 | 21.100 | 1.935950 |
| 3825 | 12 | 21.150 | 2.654024 |
| 3826 | 12 | 21.200 | 3.013476 |
| 3827 | 12 | 21.250 | 3.156465 |
| 3828 | 12 | 21.300 | 3.173905 |
| 3829 | 12 | 21.350 | 3.145258 |
| 3830 | 12 | 21.400 | 3.130887 |
| 3831 | 12 | 21.450 | 3.146345 |
| 3832 | 12 | 21.500 | 3.169318 |
| 3833 | 12 | 21.550 | 3.177474 |
| 3834 | 12 | 21.600 | 3.170134 |
| 3835 | 12 | 21.650 | 3.161711 |
| 3836 | 12 | 21.700 | 3.163167 |
| 3837 | 12 | 21.750 | 3.171620 |
| 3838 | 12 | 21.800 | 3.177202 |
| 3839 | 12 | 21.850 | 3.175451 |
| 3840 | 12 | 21.900 | 3.170704 |
| 3841 | 12 | 21.950 | 3.169472 |
| 3842 | 12 | 22.000 | 3.172851 |
| 3843 | 12 | 22.050 | 3.176428 |
| 3844 | 12 | 22.100 | 3.176360 |
| 3845 | 12 | 22.150 | 3.173600 |
| 3846 | 12 | 22.200 | 3.172025 |
| 3847 | 12 | 22.250 | 3.173586 |
| 3848 | 12 | 22.300 | 3.176345 |
| 3849 | 12 | 22.350 | 3.177236 |
| 3850 | 12 | 22.400 | 3.175685 |
| 3851 | 12 | 22.450 | 3.173935 |
| 3852 | 12 | 22.500 | 3.174163 |
| 3853 | 12 | 22.550 | 3.176011 |
| 3854 | 12 | 22.600 | 3.177263 |
| 3855 | 12 | 22.650 | 3.176544 |
| 3856 | 12 | 22.700 | 3.174792 |
| 3857 | 12 | 22.750 | 3.174017 |
| 3858 | 12 | 22.800 | 3.174987 |
| 3859 | 12 | 22.850 | 3.176488 |
| 3860 | 12 | 22.900 | 3.176861 |
| 3861 | 12 | 22.950 | 3.175895 |
| 3862 | 12 | 23.000 | 3.174946 |
| 3863 | 12 | 23.050 | 3.175271 |
| 3864 | 12 | 23.100 | 3.176526 |
| 3865 | 12 | 23.150 | 3.177173 |
| 3866 | 12 | 23.200 | 3.176303 |
| 3867 | 12 | 23.250 | 3.174768 |
| 3868 | 12 | 23.300 | 3.174277 |
| 3869 | 12 | 23.350 | 3.175400 |
| 3870 | 12 | 23.400 | 3.176795 |
| 3871 | 12 | 23.450 | 3.176691 |
| 3872 | 12 | 23.500 | 3.175009 |
| 3873 | 12 | 23.550 | 3.173618 |
| 3874 | 12 | 23.600 | 3.174210 |
| 3875 | 12 | 23.650 | 3.176145 |
| 3876 | 12 | 23.700 | 3.176989 |
| 3877 | 12 | 23.750 | 3.175412 |
| 3878 | 12 | 23.800 | 3.173044 |
| 3879 | 12 | 23.850 | 3.172786 |
| 3880 | 12 | 23.900 | 3.175126 |
| 3881 | 12 | 23.950 | 3.177028 |
| 3882 | 12 | 24.000 | 3.175350 |
| 3883 | 12 | 24.050 | 3.171078 |
| 3884 | 12 | 24.100 | 3.168955 |
| 3885 | 12 | 24.150 | 3.171877 |
| 3886 | 12 | 24.200 | 3.176377 |
| 3887 | 12 | 24.250 | 3.175784 |
| 3888 | 12 | 24.300 | 3.168509 |
| 3889 | 12 | 24.350 | 3.161741 |
| 3890 | 12 | 24.400 | 3.164166 |
| 3891 | 12 | 24.450 | 3.173755 |
| 3892 | 12 | 24.500 | 3.176615 |
| 3893 | 12 | 24.550 | 3.161946 |
| 3894 | 12 | 24.600 | 3.138466 |
| 3895 | 12 | 24.650 | 3.132303 |
| 3896 | 12 | 24.700 | 3.156115 |
| 3897 | 12 | 24.750 | 3.177160 |
| 3898 | 12 | 24.800 | 3.125736 |
| 3899 | 12 | 24.850 | 2.919854 |
| 3900 | 12 | 24.900 | 2.458624 |
| 3901 | 12 | 24.950 | 1.561172 |
| 3902 | 12 | 25.000 | 0.085895 |
| 3903 | 12 | 25.050 | 0.956112 |
| 3904 | 12 | 25.100 | 2.139755 |
| 3905 | 12 | 25.150 | 2.759665 |
| 3906 | 12 | 25.200 | 3.061271 |
| 3907 | 12 | 25.250 | 3.168583 |
| 3908 | 12 | 25.300 | 3.168689 |
| 3909 | 12 | 25.350 | 3.139129 |
| 3910 | 12 | 25.400 | 3.132107 |
| 3911 | 12 | 25.450 | 3.151933 |
| 3912 | 12 | 25.500 | 3.172660 |
| 3913 | 12 | 25.550 | 3.176342 |
| 3914 | 12 | 25.600 | 3.167484 |
| 3915 | 12 | 25.650 | 3.161382 |
| 3916 | 12 | 25.700 | 3.165551 |
| 3917 | 12 | 25.750 | 3.173898 |
| 3918 | 12 | 25.800 | 3.177102 |
| 3919 | 12 | 25.850 | 3.173635 |
| 3920 | 12 | 25.900 | 3.169593 |
| 3921 | 12 | 25.950 | 3.170314 |
| 3922 | 12 | 26.000 | 3.174497 |
| 3923 | 12 | 26.050 | 3.177045 |
| 3924 | 12 | 26.100 | 3.175675 |
| 3925 | 12 | 26.150 | 3.173017 |
| 3926 | 12 | 26.200 | 3.172729 |
| 3927 | 12 | 26.250 | 3.175044 |
| 3928 | 12 | 26.300 | 3.177036 |
| 3929 | 12 | 26.350 | 3.176573 |
| 3930 | 12 | 26.400 | 3.174705 |
| 3931 | 12 | 26.450 | 3.173958 |
| 3932 | 12 | 26.500 | 3.175126 |
| 3933 | 12 | 26.550 | 3.176577 |
| 3934 | 12 | 26.600 | 3.176598 |
| 3935 | 12 | 26.650 | 3.175506 |
| 3936 | 12 | 26.700 | 3.175018 |
| 3937 | 12 | 26.750 | 3.175947 |
| 3938 | 12 | 26.800 | 3.177239 |
| 3939 | 12 | 26.850 | 3.177417 |
| 3940 | 12 | 26.900 | 3.176407 |
| 3941 | 12 | 26.950 | 3.175481 |
| 3942 | 12 | 27.000 | 3.175570 |
| 3943 | 12 | 27.050 | 3.176188 |
| 3944 | 12 | 27.100 | 3.176254 |
| 3945 | 12 | 27.150 | 3.175606 |
| 3946 | 12 | 27.200 | 3.175213 |
| 3947 | 12 | 27.250 | 3.175890 |
| 3948 | 12 | 27.300 | 3.177200 |
| 3949 | 12 | 27.350 | 3.177953 |
| 3950 | 12 | 27.400 | 3.177593 |
| 3951 | 12 | 27.450 | 3.176737 |
| 3952 | 12 | 27.500 | 3.176300 |
| 3953 | 12 | 27.550 | 3.176392 |
| 3954 | 12 | 27.600 | 3.176383 |
| 3955 | 12 | 27.650 | 3.175899 |
| 3956 | 12 | 27.700 | 3.175375 |
| 3957 | 12 | 27.750 | 3.175471 |
| 3958 | 12 | 27.800 | 3.176172 |
| 3959 | 12 | 27.850 | 3.176810 |
| 3960 | 12 | 27.900 | 3.176922 |
| 3961 | 12 | 27.950 | 3.176767 |
| 3962 | 12 | 28.000 | 3.176843 |
| 3963 | 12 | 28.050 | 3.177108 |
| 3964 | 12 | 28.100 | 3.177024 |
| 3965 | 12 | 28.150 | 3.176393 |
| 3966 | 12 | 28.200 | 3.175779 |
| 3967 | 12 | 28.250 | 3.175848 |
| 3968 | 12 | 28.300 | 3.176434 |
| 3969 | 12 | 28.350 | 3.176649 |
| 3970 | 12 | 28.400 | 3.176030 |
| 3971 | 12 | 28.450 | 3.175240 |
| 3972 | 12 | 28.500 | 3.175307 |
| 3973 | 12 | 28.550 | 3.176254 |
| 3974 | 12 | 28.600 | 3.176929 |
| 3975 | 12 | 28.650 | 3.176413 |
| 3976 | 12 | 28.700 | 3.175261 |
| 3977 | 12 | 28.750 | 3.174910 |
| 3978 | 12 | 28.800 | 3.175850 |
| 3979 | 12 | 28.850 | 3.176887 |
| 3980 | 12 | 28.900 | 3.176611 |
| 3981 | 12 | 28.950 | 3.175269 |
| 3982 | 12 | 29.000 | 3.174542 |
| 3983 | 12 | 29.050 | 3.175300 |
| 3984 | 12 | 29.100 | 3.176210 |
| 3985 | 12 | 29.150 | 3.175331 |
| 3986 | 12 | 29.200 | 3.172910 |
| 3987 | 12 | 29.250 | 3.171653 |
| 3988 | 12 | 29.300 | 3.173512 |
| 3989 | 12 | 29.350 | 3.176725 |
| 3990 | 12 | 29.400 | 3.177344 |
| 3991 | 12 | 29.450 | 3.174048 |
| 3992 | 12 | 29.500 | 3.170375 |
| 3993 | 12 | 29.550 | 3.170835 |
| 3994 | 12 | 29.600 | 3.174770 |
| 3995 | 12 | 29.650 | 3.176084 |
| 3996 | 12 | 29.700 | 3.170576 |
| 3997 | 12 | 29.750 | 3.162543 |
| 3998 | 12 | 29.800 | 3.161441 |
| 3999 | 12 | 29.850 | 3.169713 |
| 4000 | 12 | 29.900 | 3.176360 |
| 4001 | 12 | 29.950 | 3.167580 |
E-022b-valley.json
— 3.5 KB, updated 08-19-2026
JSON sidecar (click to expand)
{
"experiment": "E-022b",
"task": "2.10 analysis: K-diagonal valleys + mass concentration",
"script": "research/numerics/scripts/E-022b-valley-analysis.py",
"checks": {
"V1_valleys_at_gamma": true,
"V2_mass_concentrated": true,
"V4_fit_quality": true
},
"key_values": {
"4": {
"valley_depth": 2.1593140478568413,
"logK_at_gamma": -0.106956845297883,
"logK_at_midpoints": 2.0523572025589583,
"mass_frac_pm0.1": 0.6338714893637662,
"uniform_expectation": 0.09000000000000001,
"mass_ratio_vs_uniform": 7.043016548486291,
"within_bin_meanlogw": {
"z10-60_d0.0-0.1": 0.05321233524569066,
"z10-60_d0.3-0.7": -1.7997896503200193,
"z120-200_d0.0-0.1": 0.10247759965464488,
"z120-200_d0.3-0.7": -1.7570525979064509
},
"elapsed_s": 2.9
},
"6": {
"valley_depth": 2.5087271936533595,
"logK_at_gamma": -0.04029578260580941,
"logK_at_midpoints": 2.46843141104755,
"mass_frac_pm0.1": 0.6986826134175042,
"uniform_expectation": 0.09000000000000001,
"mass_ratio_vs_uniform": 7.7631401490833785,
"within_bin_meanlogw": {
"z10-60_d0.0-0.1": -0.10145611105454076,
"z10-60_d0.3-0.7": -2.4097253102207548,
"z120-200_d0.0-0.1": 0.029192545882919238,
"z120-200_d0.3-0.7": -2.314439077156247
},
"elapsed_s": 5.1
},
"8": {
"valley_depth": 2.7352201581877043,
"logK_at_gamma": 0.030554703235580436,
"logK_at_midpoints": 2.7657748614232847,
"mass_frac_pm0.1": 0.7251109123178877,
"uniform_expectation": 0.09000000000000001,
"mass_ratio_vs_uniform": 8.056787914643197,
"within_bin_meanlogw": {
"z10-60_d0.0-0.1": -0.1389960979715335,
"z10-60_d0.3-0.7": -2.7392603482112916,
"z120-200_d0.0-0.1": -0.20043183472111312,
"z120-200_d0.3-0.7": -2.6451890375288283
},
"elapsed_s": 7.9
},
"10": {
"valley_depth": 2.8706885758089333,
"logK_at_gamma": 0.11948603922925684,
"logK_at_midpoints": 2.9901746150381903,
"mass_frac_pm0.1": 0.7251715332604941,
"uniform_expectation": 0.09000000000000001,
"mass_ratio_vs_uniform": 8.057461480672156,
"within_bin_meanlogw": {
"z10-60_d0.0-0.1": -0.07371951844373904,
"z10-60_d0.3-0.7": -2.974563705268562,
"z120-200_d0.0-0.1": -0.2233480705431757,
"z120-200_d0.3-0.7": -2.8788847145178686
},
"elapsed_s": 11.4
},
"12": {
"valley_depth": 2.9442229398281423,
"logK_at_gamma": 0.22834844487190686,
"logK_at_midpoints": 3.172571384700049,
"mass_frac_pm0.1": 0.7241062961289328,
"uniform_expectation": 0.09000000000000001,
"mass_ratio_vs_uniform": 8.045625512543698,
"within_bin_meanlogw": {
"z10-60_d0.0-0.1": -0.1831905054381875,
"z10-60_d0.3-0.7": -3.1605455546413452,
"z120-200_d0.0-0.1": -0.35321115246295404,
"z120-200_d0.3-0.7": -3.0663074224107776
},
"elapsed_s": 15.5
},
"V4_saturation_fit": {
"Delta_inf": 3.3338697242432738,
"c": 4.760242352939846,
"max_resid": 0.03176880509994007
},
"valley_depths": {
"4.0": 2.1593140478568413,
"6.0": 2.5087271936533595,
"8.0": 2.7352201581877043,
"10.0": 2.8706885758089333,
"12.0": 2.9442229398281423
}
},
"elapsed_seconds": 59.7,
"timestamp_utc": "2026-08-19T17:37:47.138364+00:00"
}
Source code
Python script (click to expand)
"""E-022b — task 2.10 analysis stage: reproducing-kernel valley structure
and gamma-mass concentration (post-hoc analysis of E-022).
E-022 found the coarse weak metric flat (O3) but a persistent mass
elevation near the true zeros. This script resolves the mechanism:
K_a(z,z) := Re(b_z^H v), v the bordered (L^2_0) Galerkin solution of
T_a v = e^{-izx} — the diagonal of the model-space reproducing kernel.
Measurements (a in {4,6,8,10,12}, theta=pi):
V1. valley depth: Delta(a) = mean log K at gamma-gap midpoints minus
mean log K at gammas, z-grid step 0.05 in [14,60).
V2. mass concentration: fraction of the E-022 spectral mass within
+/-0.1 of a true zero (vs uniform-lattice expectation).
V3. artifact control: mean log w vs distance-to-nearest-gamma WITHIN
z-bins (controls the gamma-density/weight-trend confound that
naive O5 fails — shifted-gamma null test showed the raw O5
elevation is mostly distributional).
V4. saturation model: Delta(a) ~ Delta_inf - c/a fit.
Outputs: research/numerics/data/E-022b-valley.csv (+ .json)
"""
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
REPO = Path(__file__).resolve().parents[3]
DATA = REPO / "research" / "numerics" / "data"
CSV = DATA / "E-022b-valley.csv"
JSON = DATA / "E-022b-valley.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
LAM = E16.LAM_SHIFT
A_LIST = (4.0, 6.0, 8.0, 10.0, 12.0)
XN = E16.XN
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 make_K1(a):
x, h, Q, M, _b = E16.build(a, H)
n = Q.shape[0]
mc = np.zeros(n)
mc[0] = 2 * h / 3
mc[1] = h / 6
tc = Q[:, 0] - LAM * mc
u1 = scipy.linalg.solve_toeplitz((tc, tc), np.ones(n))
s1 = u1.sum()
def K1(z):
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
return float(np.real(np.conj(bz) @ v))
return K1
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()
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_all = np.array([float(mp.zetazero(k).imag)
for k in range(1, 201)])
gam = gam_all[gam_all <= 280]
# E-022 weights
import csv as csvmod
data = {}
with open(DATA / "E-022-spectral-measure.csv") as f:
for r in csvmod.DictReader(f):
data.setdefault(float(r["a"]), []).append(
(float(r["z_k"]), float(r["w_k"])))
zgrid = np.arange(14.0, 60.0, 0.05)
gsel = gam_all[(gam_all >= 14) & (gam_all < 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)
per_a = {}
grid_rows = []
for a in A_LIST:
ta = time.time()
K1 = make_K1(a)
lg = np.array([np.log(K1(z)) for z in zgrid])
dip = float(lg[idxm].mean() - lg[idxg].mean())
# mass fraction within +-0.1 of gamma (full window to 280)
z = np.array([p[0] for p in data[a]])
w = np.array([p[1] for p in data[a]])
m = z <= 280
zm, wm = z[m], w[m]
idx = np.clip(np.searchsorted(gam, zm), 1, len(gam) - 1)
d = np.minimum(np.abs(zm - gam[idx - 1]), np.abs(zm - gam[idx]))
frac = float(wm[d <= 0.1].sum() / wm.sum())
unif = float(0.2 * len(gam) / 280.0)
# V3: within-z-bin mean log w by distance bin
lw = np.log(wm)
bins = {}
for lo, hi in ((10, 60), (120, 200)):
sel = (zm >= lo) & (zm < hi)
for blo, bhi in ((0.0, 0.1), (0.3, 0.7)):
s2 = sel & (d >= blo) & (d < bhi)
if s2.sum() > 3:
bins[f"z{lo}-{hi}_d{blo}-{bhi}"] = float(lw[s2].mean())
per_a[f"{a:g}"] = {
"valley_depth": dip,
"logK_at_gamma": float(lg[idxg].mean()),
"logK_at_midpoints": float(lg[idxm].mean()),
"mass_frac_pm0.1": frac,
"uniform_expectation": unif,
"mass_ratio_vs_uniform": frac / unif,
"within_bin_meanlogw": bins,
"elapsed_s": round(time.time() - ta, 1),
}
print(f"a={a:g}: dip={dip:.4f}, massfrac={frac:.4f} "
f"({per_a[f'{a:g}']['elapsed_s']}s)", flush=True)
for zz, ll in zip(zgrid, lg):
grid_rows.append((a, zz, ll))
# V4: saturation fit Delta(a) = Dinf - c/a
av = np.array(A_LIST)
dv = np.array([per_a[f"{a:g}"]["valley_depth"] for a in A_LIST])
Afit = np.vstack([np.ones_like(av), -1.0 / av]).T
Dinf, c = np.linalg.lstsq(Afit, dv, rcond=None)[0]
resid = dv - (Dinf - c / av)
print(f"V4: Delta_inf = {Dinf:.3f}, c = {c:.3f}, "
f"max fit resid {np.abs(resid).max():.4f}", flush=True)
checks = {
"V1_valleys_at_gamma": bool(np.all(dv > 1.5)),
"V2_mass_concentrated": bool(np.all(
[per_a[f"{a:g}"]["mass_frac_pm0.1"] > 0.5 for a in A_LIST])),
"V4_fit_quality": bool(np.abs(resid).max() < 0.1),
}
with open(CSV, "w", newline="") as f:
wcsv = csvmod.writer(f)
wcsv.writerow(["a", "z", "logK"])
for a, zz, ll in grid_rows:
wcsv.writerow([f"{a:g}", f"{zz:.3f}", f"{ll:.6f}"])
meta = {
"experiment": "E-022b",
"task": "2.10 analysis: K-diagonal valleys + mass concentration",
"script": "research/numerics/scripts/E-022b-valley-analysis.py",
"checks": checks,
"key_values": {**per_a,
"V4_saturation_fit": {"Delta_inf": float(Dinf),
"c": float(c),
"max_resid": float(
np.abs(resid).max())},
"valley_depths": dict(zip([str(a) for a in av],
dv.tolist()))},
"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())