Пример #1
0
        if normdefinitionDict.has_key('comment'):
            commentStr = normdefinitionDict['comment']

        if options.action == 'create':
            (revision_id, branch_id) = revisionDML.branchInfoByName(
                dbsession.nominalSchema(), 'NORM')
            branchinfo = (revision_id, 'NORM')
            (normrev_id, normentry_id,
             normdata_id) = normDML.createNorm(dbsession.nominalSchema(),
                                               normname,
                                               lumitype,
                                               istypedefault,
                                               branchinfo,
                                               comment=commentStr)
        else:
            normdata_id = normDML.normIdByName(dbsession.nominalSchema(),
                                               normname)
        for normvalueDict in normvalues:
            if not normvalueDict.has_key(
                    'corrector') or not normvalueDict['corrector']:
                raise RuntimeError(
                    'parameter corrector is required for create/insert action')
            if not normvalueDict.has_key(
                    'since') or not normvalueDict['since']:
                raise RuntimeError(
                    'parameter since is required for create/insert action')
            correctorStr = normvalueDict['corrector']
            sincerun = int(normvalueDict['since'])
            if options.firstsince:
                if sincerun < int(options.firstsince):
                    continue
            amodetag = normvalueDict['amodetag']
Пример #2
0
        sys.exit(13)
    ###############################################################
    # check normtag and get norm values if required
    ###############################################################
    normname='NONE'
    normid=0
    normvalueDict={}
    if not options.withoutNorm:
        normname=options.normtag
        if not normname:
            normmap=normDML.normIdByType(session.nominalSchema(),lumitype='PIXEL',defaultonly=True)
            if len(normmap):
                normname=normmap.keys()[0]
                normid=normmap[normname]
        else:
            normid=normDML.normIdByName(session.nominalSchema(),normname)
        if not normid:
            raise RuntimeError('[ERROR] cannot resolve norm/correction')
            sys.exit(12)
        normvalueDict=normDML.normValueById(session.nominalSchema(),normid) #{since:[corrector(0),{paramname:paramvalue}(1),amodetag(2),egev(3),comment(4)]}
    session.transaction().commit()
    lumiReport.toScreenHeader(thiscmmd,datatagname,normname,workingversion,updateversion,'PIXEL',toFile=options.headerfile)

    ##################
    # ls level       #
    ##################
    session.transaction().start(True)
    GrunsummaryData=lumiCalcAPI.runsummaryMap(session.nominalSchema(),irunlsdict,dataidmap,lumitype='PIXEL')
    if options.action == 'overview':
       result=lumiCalcAPI.lumiForIds(session.nominalSchema(),irunlsdict,dataidmap,runsummaryMap=GrunsummaryData,beamstatusfilter=None,timeFilter=timeFilter,normmap=normvalueDict,lumitype='PIXEL')
       lumiReport.toScreenOverview(result,iresults,options.scalefactor,irunlsdict=irunlsdict,noWarning=noWarning,toFile=options.outputfile)
Пример #3
0
    else:
        dataidmap=revisionDML.dataIdsByTagName(session.nominalSchema(),datatagname,runlist=runlist,withcomment=False)

    #
    # check normtag and get norm values if required
    #
    normname='NONE'
    normid=0
    normvalueDict={}
    if not options.withoutNorm:
        normname=options.normtag
        if not normname:
            normmap=normDML.normIdByType(session.nominalSchema(),lumitype='HF',defaultonly=True)
            if len(normmap):
                normname=normmap.keys()[0]
                normid=normmap[normname]
        else:
            normid=normDML.normIdByName(session.nominalSchema(),normname)
        if not normid:
            raise RuntimeError('[ERROR] cannot resolve norm/correction')
            sys.exit(-1)
        normvalueDict=normDML.normValueById(session.nominalSchema(),normid) #{since:[corrector(0),{paramname:paramvalue}(1),amodetag(2),egev(3),comment(4)]}
    session.transaction().commit()
    for fillnum in fillstoprocess:# process per fill
        session.transaction().start(True)
        filldata=getSpecificLumi(session.nominalSchema(),fillnum,options.inputdir,dataidmap,normvalueDict,xingMinLum=options.xingMinLum,amodetag=options.amodetag,bxAlgo=options.bxAlgo)
        specificlumiTofile(fillnum,filldata,options.outputdir)
        session.transaction().commit()


Пример #4
0
 else:
     if 'lumitype' in normdefinitionDict and normdefinitionDict['lumitype']:
         lumitype=normdefinitionDict['lumitype']
 istypedefault=0
 if 'istypedefault' in normdefinitionDict and normdefinitionDict['istypedefault']:
     istypedefault=int(normdefinitionDict['istypedefault'])
 commentStr=''
 if 'comment' in normdefinitionDict:
     commentStr=normdefinitionDict['comment']
     
 if options.action=='create':
     (revision_id,branch_id)=revisionDML.branchInfoByName(dbsession.nominalSchema(),'NORM')
     branchinfo=(revision_id,'NORM')
     (normrev_id,normentry_id,normdata_id)=normDML.createNorm(dbsession.nominalSchema(),normname,lumitype,istypedefault,branchinfo,comment=commentStr)
 else:
     normdata_id=normDML.normIdByName(dbsession.nominalSchema(),normname)
 for normvalueDict in normvalues:
     if 'corrector' not in normvalueDict or not normvalueDict['corrector']:
         raise RuntimeError('parameter corrector is required for create/insert action')
     if 'since' not in normvalueDict or not normvalueDict['since']:
         raise RuntimeError('parameter since is required for create/insert action')
     correctorStr=normvalueDict['corrector']
     sincerun=int(normvalueDict['since'])
     if options.firstsince:
         if sincerun<int(options.firstsince):
             continue
     amodetag=normvalueDict['amodetag']
     egev=int(normvalueDict['egev'])
     detailcomment=normvalueDict['comment']
     (correctorname,parameterlist)=CommonUtil.parselumicorrector(correctorStr)
     parameterDict={}