Redmer Alexander Bertens | 30 Jun 16:42 2015

Fwd: bug with plotting TH2D combined with TF2

Dear experts, a colleague (not subscribed to roottalk)  has encountered 
a strange plotting issue.
I send this message to the list for him - any insight would be greatly 

Hi root-experts,

When trying to plot a TH2D and an TF2 in the same plot, I unfortunately
run into some problems. I've abstracted the problems into a simple
example macro that shows my problem.

I'd like to draw the histogram using the E1 option, and than use SURF
option for the flat function at value 0.5. However, as you can see,
doing this (the bug2 function), results in the function being plotted at
0.3 instead (independent of the value given to the function).

I've asked Redmer and he posed an alternative, which is coupling the
function to the plot and than drawing it. For the E1 option, however,
this doesn't work (it won't draw the function). For the LEGO option, it
does work but it still plots the function with the value 0.5 at 0.52,
which is significantly off.

I hope someone might know where this strange behaviour comes from and/or
how to avoid it.


Attachment (Example.root): application/octet-stream, 59 KiB
(Continue reading)

Adrian Sevcenco | 30 Jun 13:12 2015

ifndef guard for CINT for root5 and root6

Hi! Is there a way to protect something against CINT from root5 and not from ROOT6?
i know about __CINT__ but is this applied only for ROOT5?

Thank you!

Attachment (smime.p7s): application/pkcs7-signature, 3074 bytes
Corey Reed | 30 Jun 03:54 2015



I would like to find the X value for which a single-valued TGraph 
crosses a particular Y value. (Or, equivalently, the X value for which 
the TGraph crosses Y within a certain x range.)

I thought TGraph::Zero would be the way to do this (by creating a copy 
of the TGraph and subtracting Y off of every point and then calling Zero).

But as far as I can see, this function either doesn't do anything or 
else it needs to be called multiple times by the user (in some 
non-obvious manner).

Is there any way to do this?

I would assume the TGraph would use its Eval function to extrapolate 
between points.


- Corey

Colin Bernet | 29 Jun 09:19 2015

PyROOT: TypeError: unknown type can not be converted from memory

Dear root team, 

I would like to report a bug that might be affecting PyROOT. 

The bug occurs in the CMSSW 745 environment on lxplus. 
The ROOT version is the one distributed in the CMSSW_7_4_5 release, that is
ROOT 6.02/05      

I verified that the bug also occurs in the most recent release CMSSW_7_5_0_pre6 (ROOT 6), 
and does not occur in CMSSW_5_3_28_patch1 (ROOT 5).

To reproduce it, please initialize the CMS environment: 

export SCRAM_ARCH=slc6_amd64_gcc491
scram project CMSSW CMSSW_7_4_5
cd CMSSW_7_4_5/src

and run the following script: 

python /afs/

it should fail with: 

Loading FW Lite setup.
event 0
130 6.26224756241
(Continue reading)

Marc Escalier | 28 Jun 16:39 2015

RE: is there a bug with RooDataSet ?

thank you Gordon

i spent one day to find my bug yesterday, until i discovered that the 
bug was not from me, but from RooDataSet/RooRealVar.

The problem is that it seems that this limit length is not documented.

But this is very important that i would be documented by the authors.

Let's see if there are comments from authors.

  On Sun, 28 Jun 2015, Gordon T. Watts wrote:

> Hi,
> yes. Different versions have different limit lengths. Very painful when the names are automatically
generated. I had to
> start hanging which made debugging alot more complicated.
>     Cheers,
>         Gordon
> ________________________________________________________________________________________________________________________
> From: Marc Escalier
> Sent: ‎6/‎27/‎2015 7:47 PM
> To: roottalk <at>
> Subject: is there a bug with RooDataSet ?
> Hello,
(Continue reading)

Marc Escalier | 27 Jun 19:47 2015

is there a bug with RooDataSet ?


it seems that there is a bug with RooDataSet.

-->It seems that there is a undocumented 60 characters limitation to the 
variable for the weight, in a RooDataSet.

-->Do you agree ?

Thank you

Here is a attached minimum reproducible program (with the tree), that shows the bug.

-if i use the variable that has 61 characters for the variable weight : it does 
not work

[switch first block to : "if (0) {
and second block to : if (1) {

-if i use the block with 61 characters for the variable weight : it does not 

[switch first block to : "if (1) {
and second block to : if (0) {
(Continue reading)

Suvayu Ali | 25 Jun 15:48 2015

ROOT 5 build failure with CMake


When I updated my ROOT from v5-34-00-patches (0ea8e1e6 to 5bddd6de) I
ran in to this problem:

[  0%] Building CXX object cint/cint/CMakeFiles/Cint_static.dir/src/dict/libstrm.cxx.o
In file included from /opt/root/cint/cint/src/dict/libstrm.h:37:0,
                 from /opt/root/cint/cint/src/dict/libstrm.cxx:14:
/opt/root/cint/cint/lib/stream/iostrm.h:24:22: fatal error: iostream.h: No such file or directory
compilation terminated.
cint/cint/CMakeFiles/Cint_static.dir/build.make:1779: recipe for target
'cint/cint/CMakeFiles/Cint_static.dir/src/dict/libstrm.cxx.o' failed
make[2]: *** [cint/cint/CMakeFiles/Cint_static.dir/src/dict/libstrm.cxx.o] Error 1
CMakeFiles/Makefile2:389: recipe for target 'cint/cint/CMakeFiles/Cint_static.dir/all' failed

Reverting to the old commit does not fix the problem either.  Maybe
cmake is caching something somewhere.  It doesn't help that I'm not very
familiar with cmake.

Is this a bug?  How can I get a working ROOT 5 compilation for now?




Open source is the future. It sets us free.

Adrian Sevcenco | 25 Jun 14:20 2015

CPack :: usage of os-release (error)

Hi! When running cmake i have this message :
Making include/compiledata.h
cat: /etc/os-release: No such file or directory

which it would seem to come from :
cmake/modules/RootCPack.cmake:    execute_process(COMMAND cat

It seems that centos 6 does not have this file and i am not sure how
portable is to take information from os-release ...
Isn't it safer to use lsb_release ? (and request as dependency the
lsb_release package?)
Then, one can use the following:
lsb_release -is
lsb_release -rs
lsb_release -ds

As far i know this package and the outputs are the same over a large
spectrum of distros ...


Attachment (smime.p7s): application/pkcs7-signature, 3074 bytes
Axel Naumann | 24 Jun 16:49 2015

ROOT patch 6.02/12 has been released

Dear ROOT users,

We are pleased to announce the ROOT patch release version 6.02/12, git
tag v6-02-12. For what has changed and downloads see the announcement at

Best regards,
Axel on behalf of the ROOT team

Joosep Pata | 23 Jun 09:59 2015

root 6 TMVAGui

Hi experts,

In root 6.04/00, what is the recommended way to run TMVAGui? There is also the same question on the root forum
without answer for one week...


> import ROOT
> g = ROOT.TMVA.TMVAGui(“TMVA.root")

returns immediately without producing a GUI loop.

Attachment (smime.p7s): application/pkcs7-signature, 7444 bytes
Strahinja Lukić | 18 Jun 14:51 2015

User-defined minimization objective function

Dear all,

I need basic help with using the "U" option of the TH1::Fit(...) function to use a user-defined minimization objective function.

In the online Root reference I read the following:

Changing the fitting objective function
To specify a User defined fitting function, specify option "U" and
     call the following functions:
     where MyFittingFunction is of type:
     extern void MyFittingFunction(Int_t &npar, Double_t *gin, Double_t &f, Double_t *u, Int_t flag);

Could someone please explain the meaning of the parameters submitted to the user-defined extern void MyFittingFunction(...)?

npar seems obvious. The remaining parameters are unclear. I would expect that the function should at least have access to the histogram data and the model function, but I don't see a pointer to a TF1 object among the parameters.

Thanks in advance,
-- -------------------------------------- Strahinja Lukić HEP Group Vinča Institute of Nuclear Sciences P.O. Box 522 11001 Belgrade, Serbia +381 11 3408 286 slukic <at> --------------------------------------