[Rivet] CMS analysis of dijet ratios at large rapdities

Vadim Oreshkin Vadim.Oreshkin at cern.ch
Tue Oct 9 18:54:03 BST 2012


Dear Hendrik,

I completely agree with your remarks. I should have investigated ROOT more attentively.
I will make the needed modifications and will ask Albert Knutsson to update the CVS.

Best regards,
Vadim.
________________________________________
From: Vadim Oreshkin [vadimoreshkin at gmail.com]
Sent:
To: Vadim Oreshkin <Vadim.Oreshkin at cern.ch<mailto:Vadim.Oreshkin at cern.ch>>
Cc: Albert Knutsson <albert.knutsson at desy.de<mailto:albert.knutsson at desy.de>>, "vadimoreshkin at gmail.com<mailto:vadimoreshkin at gmail.com>" <vadimoreshkin at gmail.com<mailto:vadimoreshkin at gmail.com>>, "victor.murzin" <Victor.Murzin at pnpi.spb.ru<mailto:Victor.Murzin at pnpi.spb.ru>>, Vladimir Gavrilov <Vladimir.Gavrilov at cern.ch<mailto:Vladimir.Gavrilov at cern.ch>>, Grigory Safronov <Grigory.Safronov at cern.ch<mailto:Grigory.Safronov at cern.ch>>, "victor.t.kim at gmail.com<mailto:victor.t.kim at gmail.com>" <victor.t.kim at gmail.com<mailto:victor.t.kim at gmail.com>>, Hannes Jung <hannes.jung at cern.ch<mailto:hannes.jung at cern.ch>>, Grzegorz Brona <grzegorz.brona at cern.ch<mailto:grzegorz.brona at cern.ch>>, rivet <rivet at projects.hepforge.org<mailto:rivet at projects.hepforge.org>>


Dear Vadim,

thanks a lot for your prompt reply. May I ask you for some more
clarification on a few details, please?

Thus spake Vadim Oreshkin (Vadim.Oreshkin at cern.ch<mailto:Vadim.Oreshkin at cern.ch>):

>> - In the main error formula "sqrt( ((1.-2.*w)*e1*e1 + w*w*e2*e2 )/(b2*b2))"
>>   the errors appear in fourth power, while in the ROOT version they
>>   don't.
>
> [...] For the current version of ROOT it should be
> http://root.cern.ch/root/html/src/TH1.cxx.html#2746.
>
> [... motivation for your error handling, never questioned that ...]
>
> For weighted versions of histograms we use a more complicated formula,
> which we borrowed from ROOT:
> http://root.cern.ch/phpBB3/viewtopic.php?f=3&t=3753
>
>   fSumw2.fArray[bin] = TMath::Abs( ( (1-2*w)*e1*e1 + w*w*e2*e2 )/(b2*b2) );

I think I need to clarify my question. In the ROOT implementation e1 and
e2 are the errors on the bin content:

  Double_t e1 = h1->GetBinError(bin);
  Double_t e2 = h2->GetBinError(bin);

In your implementation, e1 and e2 are the *squared* errors:

  double e1 = pow(h2.binError(i),2);
  double e2 = pow(h1.binError(i),2);

I was wondering what the reasion for this additional square was.

> - At the end you divide the error by a factor of 2.
>
> We divide by 2, because ROOT and Rivet use different conventions for
> storing errors. Rivet setErrorPlus,setErrorMinus store the value
> given by the argument as a pair assymmetric errors, while in ROOT we
> store single value of an error.

Nevertheless, the ROOT errors are plus/minus errors, too. In fact,
GetBinErrorLow and GetBinErrorUp will return GetBinError for the kNormal
and sumw2 cases. Your factor of 1/2 is not needed.

Cheers,

   Hendrik

--
If your dreams don't scare you, then you are not dreaming big enough.



More information about the Rivet mailing list