I’m attempting to implement a simultaneous fit of the mass and lifetime of j/psis as a precursor to fitting the j/psi polarization accounting for the non-prompt fraction in the polarization distributions. I use various parts of the (mass,c-tau) plane to fit regions enriched in prompt, nonprompt and background simultaneously to get the mass/lifetime distribution of prompt j/psis.

To describe the lifetime distribution I’m using a gaussian with per-event scaling of the standard deviation, requiring that the scaling factor be a conditional parameter for the prompt, non-prompt and background lifetime descriptions.

For some reason, when performing the convolution in the RooDecay and even for the RooGaussModel itself, RooFit attempts to integrate over the c-tau error. As far as I know this is wrong behavior and I have tried many workarounds with limited or no success. At best the fit converges only sometimes, and right now I have it setup such that the RooGaussModel forces a flat integral over the conditional parameter, but this isn’t the right way to do it either. No matter what I try, on some level RooFit always tries to integrate over the conditional observable, and I am completely stumped.

You can find the code here: cmssw.cvs.cern.ch/cgi-bin/cmssw. … iew=markup

Thanks in advance!