You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Closes#18. CombineHarvester can now parse datacards that do not contain
"shape" directives, or that contain "FAKE" shape directives. When writing a
datacard, a bin will be given the "FAKE" shape directive if none of the
Observation and Process objects in that bin refer to a shape, RooDataHist or
RooAbsPdf.
In detail:
- New overload method `WriteDatacard(std::string const& name)` that can be
used when there is no shape information to write. If an object does
reference a shape then the method will throw. Also added to the python
interface.
- WriteDatacard would previously throw if the supplied TFile was not open.
As we now use a dummy TFile for counting-only datacards, this throw is
only triggered when there is a shape to write and the TFile is not open.
- The HistMapping class now has a boolean data member `is_fake`, this is
checked in the LoadShapes methods to avoid making any attempt to read from
a non-existent ROOT file.
- The LoadShapes methods also check at the beginning if the list of
HistMappings is empty, and if so return immediately, under the assumption
that must be a counting-only datacard.
With the added complication that some will use "FAKE" shape entries and some won't.
The text was updated successfully, but these errors were encountered: