Ejemplo n.º 1
0
logger.info('Create 1D dataset for Ostap Tutorial ')
# ============================================================================

from OstapTutor.TestVars1 import m_psi, m_D0

#
## create data set
#
varset = ROOT.RooArgSet(m_psi, m_D0)

#
## create model
#
import Ostap.FitModels as Models

jpsi = Models.Needham_pdf('N0', mass=m_psi, mean=3.096, sigma=0.013)
D0 = Models.Gauss_pdf('G0', mass=m_D0, mean=1.864, sigma=0.007)

bkg_jpsi = Models.Bkg_pdf('B01', mass=m_psi)
bkg_D0 = Models.Bkg_pdf('B02', mass=m_D0)
bkg_jpsi.tau.fix(-10)
bkg_D0.tau.fix(+5)

model = Models.Fit2D(signal_1=jpsi,
                     signal_2=D0,
                     bkg1=bkg_jpsi,
                     bkgA=bkg_jpsi,
                     bkg2=bkg_D0,
                     bkgB=bkg_D0)

model.ss.fix(5000)
Ejemplo n.º 2
0
    logger.warning('Fit is not perfect MIGRAD=%d QUAL=%d ' %
                   (result.status(), result.covQual()))
    print result
else:
    print 'Signal & Background are: ', result('S')[0], result('B')[0]
    print 'Mean   & Sigma      are: ', result('mean_Gauss')[0], result(
        'sigma_Gauss')[0]

models.append(model_cbds)

# =============================================================================
## Needham PDF
# =============================================================================
logger.info('Test Needham_pdf')
model_matt = Models.Fit1D(signal=Models.Needham_pdf(name='Matt',
                                                    mass=mass,
                                                    sigma=signal_gauss.sigma,
                                                    mean=signal_gauss.mean),
                          background=model_gauss.background)

with rooSilent():
    result, frame = model_matt.fitTo(dataset0)
    model_matt.signal.mean.release()
    model_matt.signal.sigma.release()
    result, frame = model_matt.fitTo(dataset0)
    result, frame = model_matt.fitTo(dataset0)

if 0 != result.status() or 3 != result.covQual():
    logger.warning('Fit is not perfect MIGRAD=%d QUAL=%d ' %
                   (result.status(), result.covQual()))
    print result
else:
Ejemplo n.º 3
0
logger.info('Create 1D dataset for Ostap Tutorial ')
# ============================================================================

from OstapTutor.TestVars1 import m_psi

#
## create data set
#
varset = ROOT.RooArgSet(m_psi)

#
## create model
#
import Ostap.FitModels as Models

signal = Models.Needham_pdf('N0', mass=m_psi)
bkg = Models.Bkg_pdf('B0', mass=m_psi)
bkg.tau.setVal(-10.0)

model = Models.Fit1D(signal=signal, background=bkg)

model.s.setVal(10000)
model.B.setVal(5000)

data = model.pdf.generate(varset, 15000)

# ============================================================================
if '__main__' == __name__:

    import Ostap.Line
    logger.info(__file__ + '\n' + Ostap.Line.line)