Nexus: line-crossing distribution method and implementation - #6224
Merged
Merged
Conversation
prckent
reviewed
Sep 12, 2026
prckent
left a comment
Contributor
There was a problem hiding this comment.
LGTM but conflicts need to be fixed
ye-luo
self-requested a review
September 12, 2026 02:48
# Conflicts: # nexus/nexus/statistics.py # nexus/nexus/tests/test_statistics.py
Contributor
Author
|
@prckent should be ready now |
Contributor
|
@ye-luo Any particular reason you requested to review? |
Contributor
|
I put my review request on the wrong PR. |
ye-luo
removed their request for review
September 14, 2026 15:56
Contributor
|
Test this please |
prckent
approved these changes
Sep 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds line-crossing-distribution utilities for time series (i.e. Monte Carlo trace data). These are not user-facing.
The line-crossing distribution is intended to robustly identify an equilibrium value in a noisy trace that may contain wild outliers or later long-term departures from equilibrium behavior. It represents each adjacent pair of values in the trace as an interval, then counts how often those intervals cross each possible value. The distribution peak estimates the value most consistently crossed by the series, making it less sensitive than other methods, including median estimation. A near-term use case is to identify whether and how a QMC run (particularly DMC) fails.
These contributions comprise an intermediate step to replacing
QmcpackAnalyzer.I developed the LCD method/algorithm and wrote all the code. Documentation, tests, input hardening, and optimization were performed with GPT-5.6 Terra medium.