ScaleProcesses

This action scales the yields of certain processes in a workspace by an arbitrary factor.

The Action scales all (matching) RooDataHist instances in a workspace. Note: This has been tested to work by scaling the input histograms when building the workspace and "unscaling" them on a workspace level using this implementation. Behavior on (partially) unbinned fits has not been tested (yet).

Usage:

+ScaleProcesses{
  +NameOfWorkspace {
    <pdf = "nameOfPdfToEdit"> #defaults to "simPdf"
    +someProcess{
      <name = "expression*ToMatch", scale = 2.0, invert=false> 
      #scale all processes with names matching the expression given as 
      #'name' by the given scaling factor. If 'invert' is true, yields
      #are scaled by 1/'scale' instead (default is false).
    }
    +otherProcess {
      <scale = 1.5> 
      #if 'name' is not specified, the name of the folder is used (here:
      # "otherProcess")
    }
  }
}

The process name is matched against the name of the relevant RooDataHist instances. If their names are not known, try printing a workspace in cling (root shell): ws->Print("t")