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 13 of 34 · 500/page · 16560 rows next →
# alambda_tagzlogK
6002 8 -1 38.000 2.766836
6003 8 -1 38.050 2.750256
6004 8 -1 38.100 2.732468
6005 8 -1 38.150 2.725771
6006 8 -1 38.200 2.732398
6007 8 -1 38.250 2.746622
6008 8 -1 38.300 2.760269
6009 8 -1 38.350 2.767630
6010 8 -1 38.400 2.767512
6011 8 -1 38.450 2.762608
6012 8 -1 38.500 2.757275
6013 8 -1 38.550 2.754998
6014 8 -1 38.600 2.756762
6015 8 -1 38.650 2.761083
6016 8 -1 38.700 2.765397
6017 8 -1 38.750 2.767706
6018 8 -1 38.800 2.767520
6019 8 -1 38.850 2.765754
6020 8 -1 38.900 2.763898
6021 8 -1 38.950 2.763048
6022 8 -1 39.000 2.763393
6023 8 -1 39.050 2.764370
6024 8 -1 39.100 2.765250
6025 8 -1 39.150 2.765673
6026 8 -1 39.200 2.765777
6027 8 -1 39.250 2.765907
6028 8 -1 39.300 2.766199
6029 8 -1 39.350 2.766393
6030 8 -1 39.400 2.766051
6031 8 -1 39.450 2.765005
6032 8 -1 39.500 2.763664
6033 8 -1 39.550 2.762889
6034 8 -1 39.600 2.763412
6035 8 -1 39.650 2.765179
6036 8 -1 39.700 2.767118
6037 8 -1 39.750 2.767632
6038 8 -1 39.800 2.765601
6039 8 -1 39.850 2.761328
6040 8 -1 39.900 2.756743
6041 8 -1 39.950 2.754534
6042 8 -1 40.000 2.756455
6043 8 -1 40.050 2.761795
6044 8 -1 40.100 2.767157
6045 8 -1 40.150 2.768004
6046 8 -1 40.200 2.761253
6047 8 -1 40.250 2.747653
6048 8 -1 40.300 2.732660
6049 8 -1 40.350 2.724632
6050 8 -1 40.400 2.730004
6051 8 -1 40.450 2.747508
6052 8 -1 40.500 2.765570
6053 8 -1 40.550 2.764698
6054 8 -1 40.600 2.721948
6055 8 -1 40.650 2.613438
6056 8 -1 40.700 2.413306
6057 8 -1 40.750 2.089115
6058 8 -1 40.800 1.594007
6059 8 -1 40.850 0.868723
6060 8 -1 40.900 0.050605
6061 8 -1 40.950 0.222783
6062 8 -1 41.000 1.073100
6063 8 -1 41.050 1.735031
6064 8 -1 41.100 2.180922
6065 8 -1 41.150 2.470319
6066 8 -1 41.200 2.645624
6067 8 -1 41.250 2.736765
6068 8 -1 41.300 2.768314
6069 8 -1 41.350 2.763239
6070 8 -1 41.400 2.743340
6071 8 -1 41.450 2.726515
6072 8 -1 41.500 2.722661
6073 8 -1 41.550 2.731959
6074 8 -1 41.600 2.747705
6075 8 -1 41.650 2.761675
6076 8 -1 41.700 2.768433
6077 8 -1 41.750 2.766993
6078 8 -1 41.800 2.760228
6079 8 -1 41.850 2.752929
6080 8 -1 41.900 2.749364
6081 8 -1 41.950 2.751334
6082 8 -1 42.000 2.757576
6083 8 -1 42.050 2.764720
6084 8 -1 42.100 2.769116
6085 8 -1 42.150 2.768546
6086 8 -1 42.200 2.763185
6087 8 -1 42.250 2.755560
6088 8 -1 42.300 2.749492
6089 8 -1 42.350 2.748298
6090 8 -1 42.400 2.752944
6091 8 -1 42.450 2.761202
6092 8 -1 42.500 2.768429
6093 8 -1 42.550 2.769690
6094 8 -1 42.600 2.762260
6095 8 -1 42.650 2.747523
6096 8 -1 42.700 2.731401
6097 8 -1 42.750 2.722422
6098 8 -1 42.800 2.727123
6099 8 -1 42.850 2.744632
6100 8 -1 42.900 2.764171
6101 8 -1 42.950 2.767198
6102 8 -1 43.000 2.731625
6103 8 -1 43.050 2.634369
6104 8 -1 43.100 2.450619
6105 8 -1 43.150 2.149773
6106 8 -1 43.200 1.688063
6107 8 -1 43.250 1.005556
6108 8 -1 43.300 0.159240
6109 8 -1 43.350 0.101609
6110 8 -1 43.400 0.938601
6111 8 -1 43.450 1.643280
6112 8 -1 43.500 2.122024
6113 8 -1 43.550 2.434615
6114 8 -1 43.600 2.626275
6115 8 -1 43.650 2.728518
6116 8 -1 43.700 2.766813
6117 8 -1 43.750 2.764949
6118 8 -1 43.800 2.745831
6119 8 -1 43.850 2.728712
6120 8 -1 43.900 2.724583
6121 8 -1 43.950 2.733939
6122 8 -1 44.000 2.749710
6123 8 -1 44.050 2.763257
6124 8 -1 44.100 2.769215
6125 8 -1 44.150 2.767210
6126 8 -1 44.200 2.760866
6127 8 -1 44.250 2.755244
6128 8 -1 44.300 2.753989
6129 8 -1 44.350 2.757598
6130 8 -1 44.400 2.763687
6131 8 -1 44.450 2.768815
6132 8 -1 44.500 2.770547
6133 8 -1 44.550 2.768602
6134 8 -1 44.600 2.764703
6135 8 -1 44.650 2.761405
6136 8 -1 44.700 2.760615
6137 8 -1 44.750 2.762610
6138 8 -1 44.800 2.766086
6139 8 -1 44.850 2.769092
6140 8 -1 44.900 2.770190
6141 8 -1 44.950 2.769168
6142 8 -1 45.000 2.766997
6143 8 -1 45.050 2.765140
6144 8 -1 45.100 2.764666
6145 8 -1 45.150 2.765675
6146 8 -1 45.200 2.767353
6147 8 -1 45.250 2.768572
6148 8 -1 45.300 2.768613
6149 8 -1 45.350 2.767584
6150 8 -1 45.400 2.766308
6151 8 -1 45.450 2.765777
6152 8 -1 45.500 2.766513
6153 8 -1 45.550 2.768222
6154 8 -1 45.600 2.769960
6155 8 -1 45.650 2.770703
6156 8 -1 45.700 2.769951
6157 8 -1 45.750 2.768040
6158 8 -1 45.800 2.765965
6159 8 -1 45.850 2.764828
6160 8 -1 45.900 2.765198
6161 8 -1 45.950 2.766784
6162 8 -1 46.000 2.768603
6163 8 -1 46.050 2.769560
6164 8 -1 46.100 2.769074
6165 8 -1 46.150 2.767412
6166 8 -1 46.200 2.765530
6167 8 -1 46.250 2.764507
6168 8 -1 46.300 2.764886
6169 8 -1 46.350 2.766329
6170 8 -1 46.400 2.767804
6171 8 -1 46.450 2.768217
6172 8 -1 46.500 2.767112
6173 8 -1 46.550 2.765013
6174 8 -1 46.600 2.763179
6175 8 -1 46.650 2.762853
6176 8 -1 46.700 2.764412
6177 8 -1 46.750 2.766959
6178 8 -1 46.800 2.768708
6179 8 -1 46.850 2.767984
6180 8 -1 46.900 2.764332
6181 8 -1 46.950 2.759069
6182 8 -1 47.000 2.754859
6183 8 -1 47.050 2.754308
6184 8 -1 47.100 2.758218
6185 8 -1 47.150 2.764593
6186 8 -1 47.200 2.769250
6187 8 -1 47.250 2.767877
6188 8 -1 47.300 2.758559
6189 8 -1 47.350 2.743615
6190 8 -1 47.400 2.729629
6191 8 -1 47.450 2.724756
6192 8 -1 47.500 2.733518
6193 8 -1 47.550 2.751805
6194 8 -1 47.600 2.765769
6195 8 -1 47.650 2.755006
6196 8 -1 47.700 2.696550
6197 8 -1 47.750 2.566361
6198 8 -1 47.800 2.337328
6199 8 -1 47.850 1.973757
6200 8 -1 47.900 1.423272
6201 8 -1 47.950 0.635021
6202 8 -1 48.000 -0.051971
6203 8 -1 48.050 0.452013
6204 8 -1 48.100 1.280730
6205 8 -1 48.150 1.877975
6206 8 -1 48.200 2.274645
6207 8 -1 48.250 2.526980
6208 8 -1 48.300 2.673707
6209 8 -1 48.350 2.743669
6210 8 -1 48.400 2.761984
6211 8 -1 48.450 2.752409
6212 8 -1 48.500 2.735935
6213 8 -1 48.550 2.726738
6214 8 -1 48.600 2.729075
6215 8 -1 48.650 2.738771
6216 8 -1 48.700 2.748650
6217 8 -1 48.750 2.753830
6218 8 -1 48.800 2.753929
6219 8 -1 48.850 2.751974
6220 8 -1 48.900 2.751359
6221 8 -1 48.950 2.752955
6222 8 -1 49.000 2.754367
6223 8 -1 49.050 2.751879
6224 8 -1 49.100 2.743722
6225 8 -1 49.150 2.732472
6226 8 -1 49.200 2.724756
6227 8 -1 49.250 2.727419
6228 8 -1 49.300 2.741529
6229 8 -1 49.350 2.758236
6230 8 -1 49.400 2.759640
6231 8 -1 49.450 2.722999
6232 8 -1 49.500 2.623991
6233 8 -1 49.550 2.436504
6234 8 -1 49.600 2.128617
6235 8 -1 49.650 1.654995
6236 8 -1 49.700 0.955312
6237 8 -1 49.750 0.113925
6238 8 -1 49.800 0.146671
6239 8 -1 49.850 0.992793
6240 8 -1 49.900 1.679625
6241 8 -1 49.950 2.143923
6242 8 -1 50.000 2.446158
6243 8 -1 50.050 2.630728
6244 8 -1 50.100 2.728686
6245 8 -1 50.150 2.765146
6246 8 -1 50.200 2.763321
6247 8 -1 50.250 2.745158
6248 8 -1 50.300 2.728782
6249 8 -1 50.350 2.724476
6250 8 -1 50.400 2.732885
6251 8 -1 50.450 2.747710
6252 8 -1 50.500 2.761014
6253 8 -1 50.550 2.767559
6254 8 -1 50.600 2.766488
6255 8 -1 50.650 2.760668
6256 8 -1 50.700 2.754645
6257 8 -1 50.750 2.752207
6258 8 -1 50.800 2.754629
6259 8 -1 50.850 2.760410
6260 8 -1 50.900 2.766470
6261 8 -1 50.950 2.769925
6262 8 -1 51.000 2.769455
6263 8 -1 51.050 2.765742
6264 8 -1 51.100 2.760960
6265 8 -1 51.150 2.757624
6266 8 -1 51.200 2.757326
6267 8 -1 51.250 2.759997
6268 8 -1 51.300 2.764046
6269 8 -1 51.350 2.767271
6270 8 -1 51.400 2.768022
6271 8 -1 51.450 2.766028
6272 8 -1 51.500 2.762521
6273 8 -1 51.550 2.759598
6274 8 -1 51.600 2.759085
6275 8 -1 51.650 2.761459
6276 8 -1 51.700 2.765459
6277 8 -1 51.750 2.768688
6278 8 -1 51.800 2.768902
6279 8 -1 51.850 2.765323
6280 8 -1 51.900 2.759299
6281 8 -1 51.950 2.753869
6282 8 -1 52.000 2.752243
6283 8 -1 52.050 2.755806
6284 8 -1 52.100 2.762851
6285 8 -1 52.150 2.769021
6286 8 -1 52.200 2.769393
6287 8 -1 52.250 2.761205
6288 8 -1 52.300 2.745976
6289 8 -1 52.350 2.729962
6290 8 -1 52.400 2.721945
6291 8 -1 52.450 2.728187
6292 8 -1 52.500 2.746848
6293 8 -1 52.550 2.765873
6294 8 -1 52.600 2.765719
6295 8 -1 52.650 2.723777
6296 8 -1 52.700 2.616666
6297 8 -1 52.750 2.419061
6298 8 -1 52.800 2.099133
6299 8 -1 52.850 1.610788
6300 8 -1 52.900 0.894528
6301 8 -1 52.950 0.069342
6302 8 -1 53.000 0.197418
6303 8 -1 53.050 1.047938
6304 8 -1 53.100 1.719214
6305 8 -1 53.150 2.172258
6306 8 -1 53.200 2.466538
6307 8 -1 53.250 2.644807
6308 8 -1 53.300 2.737227
6309 8 -1 53.350 2.768694
6310 8 -1 53.400 2.762786
6311 8 -1 53.450 2.742189
6312 8 -1 53.500 2.725582
6313 8 -1 53.550 2.722965
6314 8 -1 53.600 2.733779
6315 8 -1 53.650 2.750311
6316 8 -1 53.700 2.763831
6317 8 -1 53.750 2.769260
6318 8 -1 53.800 2.766652
6319 8 -1 53.850 2.760010
6320 8 -1 53.900 2.754569
6321 8 -1 53.950 2.753851
6322 8 -1 54.000 2.757987
6323 8 -1 54.050 2.764176
6324 8 -1 54.100 2.768741
6325 8 -1 54.150 2.769347
6326 8 -1 54.200 2.766140
6327 8 -1 54.250 2.761437
6328 8 -1 54.300 2.758258
6329 8 -1 54.350 2.758541
6330 8 -1 54.400 2.762057
6331 8 -1 54.450 2.766669
6332 8 -1 54.500 2.769711
6333 8 -1 54.550 2.769545
6334 8 -1 54.600 2.766448
6335 8 -1 54.650 2.762380
6336 8 -1 54.700 2.759815
6337 8 -1 54.750 2.760268
6338 8 -1 54.800 2.763383
6339 8 -1 54.850 2.767187
6340 8 -1 54.900 2.769314
6341 8 -1 54.950 2.768440
6342 8 -1 55.000 2.765077
6343 8 -1 55.050 2.761304
6344 8 -1 55.100 2.759538
6345 8 -1 55.150 2.760991
6346 8 -1 55.200 2.764795
6347 8 -1 55.250 2.768417
6348 8 -1 55.300 2.769166
6349 8 -1 55.350 2.765889
6350 8 -1 55.400 2.759880
6351 8 -1 55.450 2.754403
6352 8 -1 55.500 2.752876
6353 8 -1 55.550 2.756555
6354 8 -1 55.600 2.763245
6355 8 -1 55.650 2.768103
6356 8 -1 55.700 2.766239
6357 8 -1 55.750 2.755733
6358 8 -1 55.800 2.739615
6359 8 -1 55.850 2.725569
6360 8 -1 55.900 2.722431
6361 8 -1 55.950 2.734130
6362 8 -1 56.000 2.754649
6363 8 -1 56.050 2.767900
6364 8 -1 56.100 2.751935
6365 8 -1 56.150 2.683088
6366 8 -1 56.200 2.536923
6367 8 -1 56.250 2.285491
6368 8 -1 56.300 1.891084
6369 8 -1 56.350 1.298583
6370 8 -1 56.400 0.474714
6371 8 -1 56.450 -0.055971
6372 8 -1 56.500 0.607176
6373 8 -1 56.550 1.399477
6374 8 -1 56.600 1.955899
6375 8 -1 56.650 2.324624
6376 8 -1 56.700 2.558211
6377 8 -1 56.750 2.692453
6378 8 -1 56.800 2.754306
6379 8 -1 56.850 2.767453
6380 8 -1 56.900 2.754464
6381 8 -1 56.950 2.735604
6382 8 -1 57.000 2.725122
6383 8 -1 57.050 2.728007
6384 8 -1 57.100 2.740633
6385 8 -1 57.150 2.755292
6386 8 -1 57.200 2.765270
6387 8 -1 57.250 2.767698
6388 8 -1 57.300 2.763785
6389 8 -1 57.350 2.757309
6390 8 -1 57.400 2.752371
6391 8 -1 57.450 2.751448
6392 8 -1 57.500 2.754560
6393 8 -1 57.550 2.759798
6394 8 -1 57.600 2.764651
6395 8 -1 57.650 2.767258
6396 8 -1 57.700 2.767045
6397 8 -1 57.750 2.764665
6398 8 -1 57.800 2.761481
6399 8 -1 57.850 2.758926
6400 8 -1 57.900 2.757963
6401 8 -1 57.950 2.758802
6402 8 -1 58.000 2.760880
6403 8 -1 58.050 2.763077
6404 8 -1 58.100 2.764119
6405 8 -1 58.150 2.763084
6406 8 -1 58.200 2.759906
6407 8 -1 58.250 2.755630
6408 8 -1 58.300 2.752204
6409 8 -1 58.350 2.751671
6410 8 -1 58.400 2.754985
6411 8 -1 58.450 2.761061
6412 8 -1 58.500 2.766775
6413 8 -1 58.550 2.768138
6414 8 -1 58.600 2.762273
6415 8 -1 58.650 2.749344
6416 8 -1 58.700 2.733579
6417 8 -1 58.750 2.722371
6418 8 -1 58.800 2.722833
6419 8 -1 58.850 2.736708
6420 8 -1 58.900 2.756751
6421 8 -1 58.950 2.767254
6422 8 -1 59.000 2.747669
6423 8 -1 59.050 2.675812
6424 8 -1 59.100 2.528320
6425 8 -1 59.150 2.277909
6426 8 -1 59.200 1.887366
6427 8 -1 59.250 1.302099
6428 8 -1 59.300 0.486897
6429 8 -1 59.350 -0.058491
6430 8 -1 59.400 0.589399
6431 8 -1 59.450 1.388766
6432 8 -1 59.500 1.953083
6433 8 -1 59.550 2.327429
6434 8 -1 59.600 2.563774
6435 8 -1 59.650 2.697467
6436 8 -1 59.700 2.755379
6437 8 -1 59.750 2.762061
6438 8 -1 59.800 2.742423
6439 8 -1 59.850 2.720145
6440 8 -1 59.900 2.711953
6441 8 -1 59.950 2.721935
6442 8 0 14.000 11.064946
6443 8 0 14.050 10.081700
6444 8 0 14.100 8.226529
6445 8 0 14.150 6.507726
6446 8 0 14.200 9.334770
6447 8 0 14.250 10.399279
6448 8 0 14.300 11.046396
6449 8 0 14.350 11.491306
6450 8 0 14.400 11.801807
6451 8 0 14.450 12.001334
6452 8 0 14.500 12.094395
6453 8 0 14.550 12.073303
6454 8 0 14.600 11.915782
6455 8 0 14.650 11.569289
6456 8 0 14.700 10.880208
6457 8 0 14.750 8.573076
6458 8 0 14.800 -690.775528
6459 8 0 14.850 -690.775528
6460 8 0 14.900 10.155397
6461 8 0 14.950 11.601194
6462 8 0 15.000 12.325112
6463 8 0 15.050 12.799436
6464 8 0 15.100 13.133842
6465 8 0 15.150 13.376376
6466 8 0 15.200 13.555569
6467 8 0 15.250 13.692410
6468 8 0 15.300 13.804599
6469 8 0 15.350 13.907522
6470 8 0 15.400 14.013210
6471 8 0 15.450 14.128462
6472 8 0 15.500 14.253689
6473 8 0 15.550 14.383653
6474 8 0 15.600 14.509757
6475 8 0 15.650 14.622570
6476 8 0 15.700 14.713493
6477 8 0 15.750 14.775415
6478 8 0 15.800 14.802681
6479 8 0 15.850 14.790783
6480 8 0 15.900 14.736059
6481 8 0 15.950 14.635524
6482 8 0 16.000 14.487024
6483 8 0 16.050 14.289911
6484 8 0 16.100 14.046895
6485 8 0 16.150 13.767890
6486 8 0 16.200 13.477017
6487 8 0 16.250 13.219715
6488 8 0 16.300 13.055256
6489 8 0 16.350 13.018901
6490 8 0 16.400 13.090125
6491 8 0 16.450 13.216389
6492 8 0 16.500 13.353457
6493 8 0 16.550 13.476302
6494 8 0 16.600 13.571966
6495 8 0 16.650 13.631495
6496 8 0 16.700 13.645074
6497 8 0 16.750 13.598969
6498 8 0 16.800 13.471453
6499 8 0 16.850 13.221952
6500 8 0 16.900 12.748802
6501 8 0 16.950 11.544897

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