Morty0311/battery-tests-cfo-analysis
Battery-test CFO analysis This folder contains the all-packet CFO fingerprints, statistics, and plots for all ten Morty battery experiments (10% through 100%). Source H5 recordings were read without modification. The estimator reuses CSE237D_weyl\pipeline\parallel_h5_cfo_all_packets.py. Start with summary\all_packets\ALL_PACKETS_RESULTS.md for the consolidated index. Each experiment has: all_packets_cfo\packet_cfo_all_fingerprints.csv — every assigned packet.… See the full description on the dataset page: https://huggingface.co/datasets/Morty0311/battery-tests-cfo-analysis.
Battery-test CFO analysis
This folder contains the all-packet CFO fingerprints, statistics, and plots for all ten Morty battery experiments (10% through 100%). Source H5 recordings were read without modification. The estimator reuses CSE237D_weyl\pipeline\parallel_h5_cfo_all_packets.py.
Start with summary\all_packets\ALL_PACKETS_RESULTS.md for the consolidated index. Each experiment has:
all_packets_cfo\packet_cfo_all_fingerprints.csv— every assigned packet.all_packets_cfo\statistics— phone median, variance, MAD, percentiles, and statistical plots.all_packets_cfo\plots_segmented_mac— reference-style PNG and zoomable SVG.
The segmented plots use at most 2,000 evenly selected points per phone for readability; all CSV summaries and statistics still use every packet. PNG and SVG use the same sampled rows and similar small marker sizes. Every continuous x-axis is fixed at 0--40 minutes, so shorter recordings leave blank space. --shared-y means every phone panel has the same median-centered +/- X Hz range, while preserving each phone's distinct CFO center.
To rerun levels 20–100 with the satellite Conda environment:
C:\Users\15255\anaconda3\envs\satellite\python.exe .\run_remaining_battery_all_packets.pyTo rebuild and validate the consolidated index without recomputing CFO:
C:\Users\15255\anaconda3\envs\satellite\python.exe .\build_all_packet_battery_summary.pyThe preferred fingerprint is relative_cfo_hz: raw packet CFO minus the simultaneous cross-device median in a 120-second window. This reduces common receiver-oscillator drift.
Raw and EMA-calibrated plots
summary\raw_ema\RAW_EMA_RESULTS.md indexes raw and EMA-calibrated PNG/SVG plots for every level. The EMA workflow uses 10-second robust cross-device center observations and a causal 120-second EMA span, avoiding the hard two-minute boundaries in the original block calibration.
To regenerate raw and EMA outputs for all levels:
C:\Users\15255\anaconda3\envs\satellite\python.exe .\run_all_levels_raw_ema_plots.pyTo validate and rebuild their consolidated index:
C:\Users\15255\anaconda3\envs\satellite\python.exe .\build_raw_ema_index.pySmoother offline calibrations
summary\smoothers\SMOOTHER_RESULTS.md indexes centered 120-second moving average and Gaussian (sigma=60 s, truncated at +/-3 sigma) calibration plots for every level. These offline filters reduce the influence of a single new observation compared with the causal EMA.
C:\Users\15255\anaconda3\envs\satellite\python.exe .\run_all_levels_smoother_plots.py
C:\Users\15255\anaconda3\envs\satellite\python.exe .\build_smoother_index.py