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 |
|---|---|---|---|
| 4002 | 12 | 30.000 | 3.145037 |
| 4003 | 12 | 30.050 | 3.131404 |
| 4004 | 12 | 30.100 | 3.147447 |
| 4005 | 12 | 30.150 | 3.174893 |
| 4006 | 12 | 30.200 | 3.151820 |
| 4007 | 12 | 30.250 | 2.998322 |
| 4008 | 12 | 30.300 | 2.621922 |
| 4009 | 12 | 30.350 | 1.874341 |
| 4010 | 12 | 30.400 | 0.491399 |
| 4011 | 12 | 30.450 | 0.499651 |
| 4012 | 12 | 30.500 | 1.879553 |
| 4013 | 12 | 30.550 | 2.624615 |
| 4014 | 12 | 30.600 | 2.999321 |
| 4015 | 12 | 30.650 | 3.151521 |
| 4016 | 12 | 30.700 | 3.173819 |
| 4017 | 12 | 30.750 | 3.146401 |
| 4018 | 12 | 30.800 | 3.131007 |
| 4019 | 12 | 30.850 | 3.145130 |
| 4020 | 12 | 30.900 | 3.167553 |
| 4021 | 12 | 30.950 | 3.175965 |
| 4022 | 12 | 31.000 | 3.169301 |
| 4023 | 12 | 31.050 | 3.161424 |
| 4024 | 12 | 31.100 | 3.162740 |
| 4025 | 12 | 31.150 | 3.170383 |
| 4026 | 12 | 31.200 | 3.175302 |
| 4027 | 12 | 31.250 | 3.173911 |
| 4028 | 12 | 31.300 | 3.170361 |
| 4029 | 12 | 31.350 | 3.169759 |
| 4030 | 12 | 31.400 | 3.172101 |
| 4031 | 12 | 31.450 | 3.173778 |
| 4032 | 12 | 31.500 | 3.173064 |
| 4033 | 12 | 31.550 | 3.171892 |
| 4034 | 12 | 31.600 | 3.172460 |
| 4035 | 12 | 31.650 | 3.174008 |
| 4036 | 12 | 31.700 | 3.174208 |
| 4037 | 12 | 31.750 | 3.172754 |
| 4038 | 12 | 31.800 | 3.171831 |
| 4039 | 12 | 31.850 | 3.172769 |
| 4040 | 12 | 31.900 | 3.173803 |
| 4041 | 12 | 31.950 | 3.172542 |
| 4042 | 12 | 32.000 | 3.169917 |
| 4043 | 12 | 32.050 | 3.169652 |
| 4044 | 12 | 32.100 | 3.172946 |
| 4045 | 12 | 32.150 | 3.175467 |
| 4046 | 12 | 32.200 | 3.172084 |
| 4047 | 12 | 32.250 | 3.164440 |
| 4048 | 12 | 32.300 | 3.161118 |
| 4049 | 12 | 32.350 | 3.167257 |
| 4050 | 12 | 32.400 | 3.175075 |
| 4051 | 12 | 32.450 | 3.170082 |
| 4052 | 12 | 32.500 | 3.149192 |
| 4053 | 12 | 32.550 | 3.131197 |
| 4054 | 12 | 32.600 | 3.140634 |
| 4055 | 12 | 32.650 | 3.169730 |
| 4056 | 12 | 32.700 | 3.163739 |
| 4057 | 12 | 32.750 | 3.044362 |
| 4058 | 12 | 32.800 | 2.722992 |
| 4059 | 12 | 32.850 | 2.069277 |
| 4060 | 12 | 32.900 | 0.826807 |
| 4061 | 12 | 32.950 | 0.186703 |
| 4062 | 12 | 33.000 | 1.659061 |
| 4063 | 12 | 33.050 | 2.509913 |
| 4064 | 12 | 33.100 | 2.944626 |
| 4065 | 12 | 33.150 | 3.133812 |
| 4066 | 12 | 33.200 | 3.175814 |
| 4067 | 12 | 33.250 | 3.152386 |
| 4068 | 12 | 33.300 | 3.131271 |
| 4069 | 12 | 33.350 | 3.140486 |
| 4070 | 12 | 33.400 | 3.164147 |
| 4071 | 12 | 33.450 | 3.176968 |
| 4072 | 12 | 33.500 | 3.172737 |
| 4073 | 12 | 33.550 | 3.163499 |
| 4074 | 12 | 33.600 | 3.162178 |
| 4075 | 12 | 33.650 | 3.169109 |
| 4076 | 12 | 33.700 | 3.175362 |
| 4077 | 12 | 33.750 | 3.175071 |
| 4078 | 12 | 33.800 | 3.170993 |
| 4079 | 12 | 33.850 | 3.169393 |
| 4080 | 12 | 33.900 | 3.172189 |
| 4081 | 12 | 33.950 | 3.175641 |
| 4082 | 12 | 34.000 | 3.175843 |
| 4083 | 12 | 34.050 | 3.173332 |
| 4084 | 12 | 34.100 | 3.171769 |
| 4085 | 12 | 34.150 | 3.173215 |
| 4086 | 12 | 34.200 | 3.175960 |
| 4087 | 12 | 34.250 | 3.177084 |
| 4088 | 12 | 34.300 | 3.175985 |
| 4089 | 12 | 34.350 | 3.174621 |
| 4090 | 12 | 34.400 | 3.174758 |
| 4091 | 12 | 34.450 | 3.175883 |
| 4092 | 12 | 34.500 | 3.176216 |
| 4093 | 12 | 34.550 | 3.175126 |
| 4094 | 12 | 34.600 | 3.173841 |
| 4095 | 12 | 34.650 | 3.173801 |
| 4096 | 12 | 34.700 | 3.174948 |
| 4097 | 12 | 34.750 | 3.176039 |
| 4098 | 12 | 34.800 | 3.176325 |
| 4099 | 12 | 34.850 | 3.176305 |
| 4100 | 12 | 34.900 | 3.176733 |
| 4101 | 12 | 34.950 | 3.177409 |
| 4102 | 12 | 35.000 | 3.177426 |
| 4103 | 12 | 35.050 | 3.176479 |
| 4104 | 12 | 35.100 | 3.175403 |
| 4105 | 12 | 35.150 | 3.175151 |
| 4106 | 12 | 35.200 | 3.175572 |
| 4107 | 12 | 35.250 | 3.175659 |
| 4108 | 12 | 35.300 | 3.174974 |
| 4109 | 12 | 35.350 | 3.174363 |
| 4110 | 12 | 35.400 | 3.174918 |
| 4111 | 12 | 35.450 | 3.176461 |
| 4112 | 12 | 35.500 | 3.177567 |
| 4113 | 12 | 35.550 | 3.177222 |
| 4114 | 12 | 35.600 | 3.176040 |
| 4115 | 12 | 35.650 | 3.175488 |
| 4116 | 12 | 35.700 | 3.176024 |
| 4117 | 12 | 35.750 | 3.176550 |
| 4118 | 12 | 35.800 | 3.175925 |
| 4119 | 12 | 35.850 | 3.174590 |
| 4120 | 12 | 35.900 | 3.174101 |
| 4121 | 12 | 35.950 | 3.175050 |
| 4122 | 12 | 36.000 | 3.176080 |
| 4123 | 12 | 36.050 | 3.175515 |
| 4124 | 12 | 36.100 | 3.173678 |
| 4125 | 12 | 36.150 | 3.172826 |
| 4126 | 12 | 36.200 | 3.174424 |
| 4127 | 12 | 36.250 | 3.177033 |
| 4128 | 12 | 36.300 | 3.177760 |
| 4129 | 12 | 36.350 | 3.175768 |
| 4130 | 12 | 36.400 | 3.173494 |
| 4131 | 12 | 36.450 | 3.173704 |
| 4132 | 12 | 36.500 | 3.175732 |
| 4133 | 12 | 36.550 | 3.175950 |
| 4134 | 12 | 36.600 | 3.172462 |
| 4135 | 12 | 36.650 | 3.168280 |
| 4136 | 12 | 36.700 | 3.168322 |
| 4137 | 12 | 36.750 | 3.172906 |
| 4138 | 12 | 36.800 | 3.176106 |
| 4139 | 12 | 36.850 | 3.172452 |
| 4140 | 12 | 36.900 | 3.164634 |
| 4141 | 12 | 36.950 | 3.162155 |
| 4142 | 12 | 37.000 | 3.169682 |
| 4143 | 12 | 37.050 | 3.178125 |
| 4144 | 12 | 37.100 | 3.172365 |
| 4145 | 12 | 37.150 | 3.149824 |
| 4146 | 12 | 37.200 | 3.130298 |
| 4147 | 12 | 37.250 | 3.139090 |
| 4148 | 12 | 37.300 | 3.168618 |
| 4149 | 12 | 37.350 | 3.164127 |
| 4150 | 12 | 37.400 | 3.047601 |
| 4151 | 12 | 37.450 | 2.731289 |
| 4152 | 12 | 37.500 | 2.086993 |
| 4153 | 12 | 37.550 | 0.861567 |
| 4154 | 12 | 37.600 | 0.156624 |
| 4155 | 12 | 37.650 | 1.632096 |
| 4156 | 12 | 37.700 | 2.496311 |
| 4157 | 12 | 37.750 | 2.938872 |
| 4158 | 12 | 37.800 | 3.132728 |
| 4159 | 12 | 37.850 | 3.176666 |
| 4160 | 12 | 37.900 | 3.152729 |
| 4161 | 12 | 37.950 | 3.130028 |
| 4162 | 12 | 38.000 | 3.138509 |
| 4163 | 12 | 38.050 | 3.162814 |
| 4164 | 12 | 38.100 | 3.176757 |
| 4165 | 12 | 38.150 | 3.173278 |
| 4166 | 12 | 38.200 | 3.164298 |
| 4167 | 12 | 38.250 | 3.162949 |
| 4168 | 12 | 38.300 | 3.169535 |
| 4169 | 12 | 38.350 | 3.174975 |
| 4170 | 12 | 38.400 | 3.173715 |
| 4171 | 12 | 38.450 | 3.169310 |
| 4172 | 12 | 38.500 | 3.168467 |
| 4173 | 12 | 38.550 | 3.172468 |
| 4174 | 12 | 38.600 | 3.176423 |
| 4175 | 12 | 38.650 | 3.176066 |
| 4176 | 12 | 38.700 | 3.172776 |
| 4177 | 12 | 38.750 | 3.171239 |
| 4178 | 12 | 38.800 | 3.173421 |
| 4179 | 12 | 38.850 | 3.176484 |
| 4180 | 12 | 38.900 | 3.176790 |
| 4181 | 12 | 38.950 | 3.174391 |
| 4182 | 12 | 39.000 | 3.172542 |
| 4183 | 12 | 39.050 | 3.173354 |
| 4184 | 12 | 39.100 | 3.175309 |
| 4185 | 12 | 39.150 | 3.175634 |
| 4186 | 12 | 39.200 | 3.174078 |
| 4187 | 12 | 39.250 | 3.173096 |
| 4188 | 12 | 39.300 | 3.174379 |
| 4189 | 12 | 39.350 | 3.176435 |
| 4190 | 12 | 39.400 | 3.176536 |
| 4191 | 12 | 39.450 | 3.174429 |
| 4192 | 12 | 39.500 | 3.172836 |
| 4193 | 12 | 39.550 | 3.173908 |
| 4194 | 12 | 39.600 | 3.176196 |
| 4195 | 12 | 39.650 | 3.176380 |
| 4196 | 12 | 39.700 | 3.173702 |
| 4197 | 12 | 39.750 | 3.171287 |
| 4198 | 12 | 39.800 | 3.172236 |
| 4199 | 12 | 39.850 | 3.175253 |
| 4200 | 12 | 39.900 | 3.175898 |
| 4201 | 12 | 39.950 | 3.172420 |
| 4202 | 12 | 40.000 | 3.168692 |
| 4203 | 12 | 40.050 | 3.169716 |
| 4204 | 12 | 40.100 | 3.174489 |
| 4205 | 12 | 40.150 | 3.176019 |
| 4206 | 12 | 40.200 | 3.169961 |
| 4207 | 12 | 40.250 | 3.161653 |
| 4208 | 12 | 40.300 | 3.161456 |
| 4209 | 12 | 40.350 | 3.170945 |
| 4210 | 12 | 40.400 | 3.177219 |
| 4211 | 12 | 40.450 | 3.166137 |
| 4212 | 12 | 40.500 | 3.141705 |
| 4213 | 12 | 40.550 | 3.129409 |
| 4214 | 12 | 40.600 | 3.148655 |
| 4215 | 12 | 40.650 | 3.175076 |
| 4216 | 12 | 40.700 | 3.141714 |
| 4217 | 12 | 40.750 | 2.966652 |
| 4218 | 12 | 40.800 | 2.553984 |
| 4219 | 12 | 40.850 | 1.742690 |
| 4220 | 12 | 40.900 | 0.294585 |
| 4221 | 12 | 40.950 | 0.701160 |
| 4222 | 12 | 41.000 | 1.995723 |
| 4223 | 12 | 41.050 | 2.682863 |
| 4224 | 12 | 41.100 | 3.025125 |
| 4225 | 12 | 41.150 | 3.158421 |
| 4226 | 12 | 41.200 | 3.171603 |
| 4227 | 12 | 41.250 | 3.142618 |
| 4228 | 12 | 41.300 | 3.129511 |
| 4229 | 12 | 41.350 | 3.145871 |
| 4230 | 12 | 41.400 | 3.169129 |
| 4231 | 12 | 41.450 | 3.177359 |
| 4232 | 12 | 41.500 | 3.169737 |
| 4233 | 12 | 41.550 | 3.160345 |
| 4234 | 12 | 41.600 | 3.160595 |
| 4235 | 12 | 41.650 | 3.168600 |
| 4236 | 12 | 41.700 | 3.174709 |
| 4237 | 12 | 41.750 | 3.173526 |
| 4238 | 12 | 41.800 | 3.168513 |
| 4239 | 12 | 41.850 | 3.166684 |
| 4240 | 12 | 41.900 | 3.170538 |
| 4241 | 12 | 41.950 | 3.175910 |
| 4242 | 12 | 42.000 | 3.177203 |
| 4243 | 12 | 42.050 | 3.173421 |
| 4244 | 12 | 42.100 | 3.168874 |
| 4245 | 12 | 42.150 | 3.168371 |
| 4246 | 12 | 42.200 | 3.172009 |
| 4247 | 12 | 42.250 | 3.175149 |
| 4248 | 12 | 42.300 | 3.173639 |
| 4249 | 12 | 42.350 | 3.168612 |
| 4250 | 12 | 42.400 | 3.165677 |
| 4251 | 12 | 42.450 | 3.168717 |
| 4252 | 12 | 42.500 | 3.174750 |
| 4253 | 12 | 42.550 | 3.176470 |
| 4254 | 12 | 42.600 | 3.170541 |
| 4255 | 12 | 42.650 | 3.162629 |
| 4256 | 12 | 42.700 | 3.162238 |
| 4257 | 12 | 42.750 | 3.170631 |
| 4258 | 12 | 42.800 | 3.176138 |
| 4259 | 12 | 42.850 | 3.165650 |
| 4260 | 12 | 42.900 | 3.142011 |
| 4261 | 12 | 42.950 | 3.128445 |
| 4262 | 12 | 43.000 | 3.145468 |
| 4263 | 12 | 43.050 | 3.174708 |
| 4264 | 12 | 43.100 | 3.154956 |
| 4265 | 12 | 43.150 | 3.007570 |
| 4266 | 12 | 43.200 | 2.642121 |
| 4267 | 12 | 43.250 | 1.915272 |
| 4268 | 12 | 43.300 | 0.562154 |
| 4269 | 12 | 43.350 | 0.426723 |
| 4270 | 12 | 43.400 | 1.832239 |
| 4271 | 12 | 43.450 | 2.599781 |
| 4272 | 12 | 43.500 | 2.987645 |
| 4273 | 12 | 43.550 | 3.147623 |
| 4274 | 12 | 43.600 | 3.173236 |
| 4275 | 12 | 43.650 | 3.145582 |
| 4276 | 12 | 43.700 | 3.128967 |
| 4277 | 12 | 43.750 | 3.143488 |
| 4278 | 12 | 43.800 | 3.167777 |
| 4279 | 12 | 43.850 | 3.177550 |
| 4280 | 12 | 43.900 | 3.170627 |
| 4281 | 12 | 43.950 | 3.161675 |
| 4282 | 12 | 44.000 | 3.162655 |
| 4283 | 12 | 44.050 | 3.170877 |
| 4284 | 12 | 44.100 | 3.175882 |
| 4285 | 12 | 44.150 | 3.173130 |
| 4286 | 12 | 44.200 | 3.167878 |
| 4287 | 12 | 44.250 | 3.167512 |
| 4288 | 12 | 44.300 | 3.172731 |
| 4289 | 12 | 44.350 | 3.177774 |
| 4290 | 12 | 44.400 | 3.177950 |
| 4291 | 12 | 44.450 | 3.174547 |
| 4292 | 12 | 44.500 | 3.172242 |
| 4293 | 12 | 44.550 | 3.173207 |
| 4294 | 12 | 44.600 | 3.175158 |
| 4295 | 12 | 44.650 | 3.175036 |
| 4296 | 12 | 44.700 | 3.173002 |
| 4297 | 12 | 44.750 | 3.171900 |
| 4298 | 12 | 44.800 | 3.173415 |
| 4299 | 12 | 44.850 | 3.176002 |
| 4300 | 12 | 44.900 | 3.177008 |
| 4301 | 12 | 44.950 | 3.175960 |
| 4302 | 12 | 45.000 | 3.174855 |
| 4303 | 12 | 45.050 | 3.175365 |
| 4304 | 12 | 45.100 | 3.176674 |
| 4305 | 12 | 45.150 | 3.176656 |
| 4306 | 12 | 45.200 | 3.174718 |
| 4307 | 12 | 45.250 | 3.172656 |
| 4308 | 12 | 45.300 | 3.172523 |
| 4309 | 12 | 45.350 | 3.174240 |
| 4310 | 12 | 45.400 | 3.175920 |
| 4311 | 12 | 45.450 | 3.176312 |
| 4312 | 12 | 45.500 | 3.176134 |
| 4313 | 12 | 45.550 | 3.176729 |
| 4314 | 12 | 45.600 | 3.177950 |
| 4315 | 12 | 45.650 | 3.178186 |
| 4316 | 12 | 45.700 | 3.176524 |
| 4317 | 12 | 45.750 | 3.174223 |
| 4318 | 12 | 45.800 | 3.173437 |
| 4319 | 12 | 45.850 | 3.174647 |
| 4320 | 12 | 45.900 | 3.176041 |
| 4321 | 12 | 45.950 | 3.175747 |
| 4322 | 12 | 46.000 | 3.174174 |
| 4323 | 12 | 46.050 | 3.173525 |
| 4324 | 12 | 46.100 | 3.175030 |
| 4325 | 12 | 46.150 | 3.177287 |
| 4326 | 12 | 46.200 | 3.177854 |
| 4327 | 12 | 46.250 | 3.176103 |
| 4328 | 12 | 46.300 | 3.173848 |
| 4329 | 12 | 46.350 | 3.173047 |
| 4330 | 12 | 46.400 | 3.173531 |
| 4331 | 12 | 46.450 | 3.173675 |
| 4332 | 12 | 46.500 | 3.173027 |
| 4333 | 12 | 46.550 | 3.173204 |
| 4334 | 12 | 46.600 | 3.175575 |
| 4335 | 12 | 46.650 | 3.178654 |
| 4336 | 12 | 46.700 | 3.179074 |
| 4337 | 12 | 46.750 | 3.175523 |
| 4338 | 12 | 46.800 | 3.170939 |
| 4339 | 12 | 46.850 | 3.169726 |
| 4340 | 12 | 46.900 | 3.172601 |
| 4341 | 12 | 46.950 | 3.175433 |
| 4342 | 12 | 47.000 | 3.174146 |
| 4343 | 12 | 47.050 | 3.169990 |
| 4344 | 12 | 47.100 | 3.168517 |
| 4345 | 12 | 47.150 | 3.172561 |
| 4346 | 12 | 47.200 | 3.177588 |
| 4347 | 12 | 47.250 | 3.176332 |
| 4348 | 12 | 47.300 | 3.168070 |
| 4349 | 12 | 47.350 | 3.161327 |
| 4350 | 12 | 47.400 | 3.164585 |
| 4351 | 12 | 47.450 | 3.173870 |
| 4352 | 12 | 47.500 | 3.174150 |
| 4353 | 12 | 47.550 | 3.156375 |
| 4354 | 12 | 47.600 | 3.132815 |
| 4355 | 12 | 47.650 | 3.130741 |
| 4356 | 12 | 47.700 | 3.158029 |
| 4357 | 12 | 47.750 | 3.175233 |
| 4358 | 12 | 47.800 | 3.109961 |
| 4359 | 12 | 47.850 | 2.879792 |
| 4360 | 12 | 47.900 | 2.379791 |
| 4361 | 12 | 47.950 | 1.413898 |
| 4362 | 12 | 48.000 | -0.010812 |
| 4363 | 12 | 48.050 | 1.126859 |
| 4364 | 12 | 48.100 | 2.230070 |
| 4365 | 12 | 48.150 | 2.805370 |
| 4366 | 12 | 48.200 | 3.080029 |
| 4367 | 12 | 48.250 | 3.170118 |
| 4368 | 12 | 48.300 | 3.161478 |
| 4369 | 12 | 48.350 | 3.131705 |
| 4370 | 12 | 48.400 | 3.129676 |
| 4371 | 12 | 48.450 | 3.153552 |
| 4372 | 12 | 48.500 | 3.174239 |
| 4373 | 12 | 48.550 | 3.175442 |
| 4374 | 12 | 48.600 | 3.165221 |
| 4375 | 12 | 48.650 | 3.160440 |
| 4376 | 12 | 48.700 | 3.166141 |
| 4377 | 12 | 48.750 | 3.172564 |
| 4378 | 12 | 48.800 | 3.170424 |
| 4379 | 12 | 48.850 | 3.162857 |
| 4380 | 12 | 48.900 | 3.160566 |
| 4381 | 12 | 48.950 | 3.167246 |
| 4382 | 12 | 49.000 | 3.174210 |
| 4383 | 12 | 49.050 | 3.171663 |
| 4384 | 12 | 49.100 | 3.161828 |
| 4385 | 12 | 49.150 | 3.157314 |
| 4386 | 12 | 49.200 | 3.164744 |
| 4387 | 12 | 49.250 | 3.173416 |
| 4388 | 12 | 49.300 | 3.166562 |
| 4389 | 12 | 49.350 | 3.143744 |
| 4390 | 12 | 49.400 | 3.128591 |
| 4391 | 12 | 49.450 | 3.144196 |
| 4392 | 12 | 49.500 | 3.172396 |
| 4393 | 12 | 49.550 | 3.149097 |
| 4394 | 12 | 49.600 | 2.992623 |
| 4395 | 12 | 49.650 | 2.609625 |
| 4396 | 12 | 49.700 | 1.850291 |
| 4397 | 12 | 49.750 | 0.454896 |
| 4398 | 12 | 49.800 | 0.531723 |
| 4399 | 12 | 49.850 | 1.894624 |
| 4400 | 12 | 49.900 | 2.629196 |
| 4401 | 12 | 49.950 | 2.999484 |
| 4402 | 12 | 50.000 | 3.150612 |
| 4403 | 12 | 50.050 | 3.173408 |
| 4404 | 12 | 50.100 | 3.146217 |
| 4405 | 12 | 50.150 | 3.129914 |
| 4406 | 12 | 50.200 | 3.143194 |
| 4407 | 12 | 50.250 | 3.166270 |
| 4408 | 12 | 50.300 | 3.176337 |
| 4409 | 12 | 50.350 | 3.170573 |
| 4410 | 12 | 50.400 | 3.161963 |
| 4411 | 12 | 50.450 | 3.162076 |
| 4412 | 12 | 50.500 | 3.169645 |
| 4413 | 12 | 50.550 | 3.175321 |
| 4414 | 12 | 50.600 | 3.173709 |
| 4415 | 12 | 50.650 | 3.168298 |
| 4416 | 12 | 50.700 | 3.166169 |
| 4417 | 12 | 50.750 | 3.169834 |
| 4418 | 12 | 50.800 | 3.175262 |
| 4419 | 12 | 50.850 | 3.177267 |
| 4420 | 12 | 50.900 | 3.175120 |
| 4421 | 12 | 50.950 | 3.172507 |
| 4422 | 12 | 51.000 | 3.172827 |
| 4423 | 12 | 51.050 | 3.175380 |
| 4424 | 12 | 51.100 | 3.176546 |
| 4425 | 12 | 51.150 | 3.174141 |
| 4426 | 12 | 51.200 | 3.169928 |
| 4427 | 12 | 51.250 | 3.167762 |
| 4428 | 12 | 51.300 | 3.169511 |
| 4429 | 12 | 51.350 | 3.173212 |
| 4430 | 12 | 51.400 | 3.175403 |
| 4431 | 12 | 51.450 | 3.174812 |
| 4432 | 12 | 51.500 | 3.173348 |
| 4433 | 12 | 51.550 | 3.173496 |
| 4434 | 12 | 51.600 | 3.175201 |
| 4435 | 12 | 51.650 | 3.175957 |
| 4436 | 12 | 51.700 | 3.174073 |
| 4437 | 12 | 51.750 | 3.171155 |
| 4438 | 12 | 51.800 | 3.170559 |
| 4439 | 12 | 51.850 | 3.173212 |
| 4440 | 12 | 51.900 | 3.175905 |
| 4441 | 12 | 51.950 | 3.174795 |
| 4442 | 12 | 52.000 | 3.170377 |
| 4443 | 12 | 52.050 | 3.167771 |
| 4444 | 12 | 52.100 | 3.170862 |
| 4445 | 12 | 52.150 | 3.176584 |
| 4446 | 12 | 52.200 | 3.177246 |
| 4447 | 12 | 52.250 | 3.169540 |
| 4448 | 12 | 52.300 | 3.160098 |
| 4449 | 12 | 52.350 | 3.159549 |
| 4450 | 12 | 52.400 | 3.168945 |
| 4451 | 12 | 52.450 | 3.175187 |
| 4452 | 12 | 52.500 | 3.164512 |
| 4453 | 12 | 52.550 | 3.141074 |
| 4454 | 12 | 52.600 | 3.129724 |
| 4455 | 12 | 52.650 | 3.149245 |
| 4456 | 12 | 52.700 | 3.175961 |
| 4457 | 12 | 52.750 | 3.144445 |
| 4458 | 12 | 52.800 | 2.974063 |
| 4459 | 12 | 52.850 | 2.570379 |
| 4460 | 12 | 52.900 | 1.776105 |
| 4461 | 12 | 52.950 | 0.343549 |
| 4462 | 12 | 53.000 | 0.647809 |
| 4463 | 12 | 53.050 | 1.965284 |
| 4464 | 12 | 53.100 | 2.667501 |
| 4465 | 12 | 53.150 | 3.018376 |
| 4466 | 12 | 53.200 | 3.156690 |
| 4467 | 12 | 53.250 | 3.172312 |
| 4468 | 12 | 53.300 | 3.143897 |
| 4469 | 12 | 53.350 | 3.130309 |
| 4470 | 12 | 53.400 | 3.145697 |
| 4471 | 12 | 53.450 | 3.167712 |
| 4472 | 12 | 53.500 | 3.174923 |
| 4473 | 12 | 53.550 | 3.167374 |
| 4474 | 12 | 53.600 | 3.159463 |
| 4475 | 12 | 53.650 | 3.161524 |
| 4476 | 12 | 53.700 | 3.170108 |
| 4477 | 12 | 53.750 | 3.175355 |
| 4478 | 12 | 53.800 | 3.173291 |
| 4479 | 12 | 53.850 | 3.168815 |
| 4480 | 12 | 53.900 | 3.168675 |
| 4481 | 12 | 53.950 | 3.173640 |
| 4482 | 12 | 54.000 | 3.178501 |
| 4483 | 12 | 54.050 | 3.178557 |
| 4484 | 12 | 54.100 | 3.174364 |
| 4485 | 12 | 54.150 | 3.170291 |
| 4486 | 12 | 54.200 | 3.169545 |
| 4487 | 12 | 54.250 | 3.171378 |
| 4488 | 12 | 54.300 | 3.172991 |
| 4489 | 12 | 54.350 | 3.173093 |
| 4490 | 12 | 54.400 | 3.172900 |
| 4491 | 12 | 54.450 | 3.174003 |
| 4492 | 12 | 54.500 | 3.176031 |
| 4493 | 12 | 54.550 | 3.176903 |
| 4494 | 12 | 54.600 | 3.175247 |
| 4495 | 12 | 54.650 | 3.172144 |
| 4496 | 12 | 54.700 | 3.170262 |
| 4497 | 12 | 54.750 | 3.171197 |
| 4498 | 12 | 54.800 | 3.173834 |
| 4499 | 12 | 54.850 | 3.175513 |
| 4500 | 12 | 54.900 | 3.174828 |
| 4501 | 12 | 54.950 | 3.173069 |
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())