Repository navigation
Conversation
Second half of M3: the binning arithmetic now comes from the shared record layer, and ekplot keeps the drawing. This is a bug fix as well as a deduplication. The bin edges were built here, and the upper limit was computed as exp(ceil(log(max(X)))) -- a power of e, where the whole scheme is bins per decade. That limit can land below the longest interval, and np.histogram then drops the tail of the distribution without saying so. Across 400 randomly drawn exponential samples the top edge fell below max(X) in 119 of them. __exponential_scale_factor stays. It looked like a third copy of HJCFIT's ideal_pdf_scale_factor and is a different quantity: this one normalises an exponential mixture already fitted to the data, HJCFIT's renormalises an ideal pdf onto the resolved intervals from the Q-matrix survival. prepare_xlog_hist keeps its signature and its list return type, so callers and notebooks are unaffected. dcio is declared in install_requires. It is not on PyPI yet, so a source install needs `pip install git+https://github.com/DCPROGS/dcio` first; the comment says so. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
Second half of M3: the binning arithmetic comes from the shared record layer,
ekplotkeeps the drawing. Depends on DCPROGS/dcio#3.This is a bug fix, not only a deduplication
The bin edges were built here, and the upper limit was computed as
exp(ceil(log(max(X))))— a power of e, where the whole scheme is bins perdecade. That limit can land below the longest interval, and
np.histogramthen drops the tail of the distribution without saying so.Across 400 randomly drawn exponential samples the top edge fell below
max(X)in 119 of them. On
glyr_experimental.scnit happens not to bite, which ispresumably how it survived.
What stays
__exponential_scale_factorlooked like a third copy of HJCFIT'sideal_pdf_scale_factorand is a different quantity — this one normalises anexponential mixture already fitted to these data, HJCFIT's renormalises an
ideal pdf onto the resolved intervals from the Q-matrix survival. Both stay
where they are, and the docstring now says why.
prepare_xlog_histkeeps its signature and its list return type, so callersand notebooks are unaffected.
Dependency
dciois declared ininstall_requires. It is not on PyPI yet, so a sourceinstall needs
pip install git+https://github.com/DCPROGS/dciofirst — thecomment in
setup.pysays so. That constraint goes away when dcio ispublished.
Tests
6 new, including a regression that checks every interval is counted and
asserts the sample still exercises the old bug. 36 passing.
🤖 Generated with Claude Code