-
Notifications
You must be signed in to change notification settings - Fork 421
Fix a bug in python/tool_base/FastScan.py #1182
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
WalkthroughMove free function combineCreateNLL into class scope as Combine::combineCreateNLL and update all call sites. Add Combine header and register Combine in ROOT dictionary. Update Python FastScan to call ROOT.Combine.combineCreateNLL, create per-parameter canvases, and save per-parameter PDFs. Add CVMFS FastScan CI step and bump CI ROOT/gcc entries. Changes
Sequence Diagram(s)sequenceDiagram
participant Caller as C++ caller (e.g. MultiDimFit)
participant Combine as Combine::combineCreateNLL
participant Roo as RooFit (pdf/data)
Caller->>Combine: Combine::combineCreateNLL(pdf, data, constraints, offset)
Combine->>Roo: build NLL from pdf + data (+constraints)
Roo-->>Combine: RooAbsReal* (NLL)
Combine-->>Caller: unique_ptr<RooAbsReal>
rect rgba(208,240,192,0.6)
Note right of Combine: Static member now used across call sites
end
sequenceDiagram
participant FastScan as FastScan.py
participant ROOT as ROOT bindings
FastScan->>ROOT: for each parameter: canv_name = "par_<name>"
FastScan->>ROOT: ROOT.TCanvas(canv_name, canv_name)
FastScan->>ROOT: ROOT.Combine.combineCreateNLL(pdf, data)
FastScan->>ROOT: canv.Print("%s.pdf%s" % (self.args.output, extra))
rect rgba(224,235,255,0.6)
Note right of FastScan: Per-parameter canvases and namespaced NLL call
end
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Possibly related PRs
Poem
Pre-merge checks and finishing touches❌ Failed checks (2 warnings)
✅ Passed checks (1 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report❌ Patch coverage is
❌ Your patch status has failed because the patch coverage (13.88%) is below the target coverage (98.00%). You can increase the patch coverage or adjust the target coverage. Additional details and impacted files@@ Coverage Diff @@
## main #1182 +/- ##
=======================================
Coverage 22.25% 22.25%
=======================================
Files 195 195
Lines 26154 26160 +6
Branches 3883 3884 +1
=======================================
+ Hits 5820 5822 +2
- Misses 20334 20338 +4
🚀 New features to boost your workflow:
|
Updated the root version for Python 3.10 in CI workflow.
|
Not sure what is happening in ROOT 6.32 build from Conda, other Conda versions, LCG_106 with ROOT 6.32 seem to be working, as well as CMSSW |
Fixes issue reported https://cms-talk.web.cern.ch/t/combinecreatenll-not-properly-integrated-with-pyroot-on-with-combine-v10-2-0-onwards/137088
Summary by CodeRabbit
New Features
Tests
Refactor
Chores