ma.reconstructDecay(decayString='K_S0:RD -> pi+:all pi-:all', cut='0.3 < M < 0.7', path=my_path) ma.vertexKFit(list_name='K_S0:RD', conf_level=0.0, path=my_path) ma.reconstructDecay(decayString='Lambda0:RD -> p+:all pi-:all', cut='0.9 < M < 1.3', path=my_path) ma.vertexKFit(list_name='Lambda0:RD', conf_level=0.0, path=my_path) # another possibility is to use default functions # for V0s they are defined in analysis/scripts/stdV0s.py # e.g. stdKshorts(): # - takes all V0 candidates, performs vertex fit, and fills 'K_S0:all' ParticleList # a cut on the candidates mass is applied, too stdv.stdKshorts(path=my_path) stdv.stdLambdas(path=my_path) # print contents of the DataStore after loading Particles ma.printDataStore(path=my_path) # print out the contents of each ParticleList ma.printList(list_name='K_S0:V0', full=False, path=my_path) ma.printList(list_name='Lambda0:V0', full=False, path=my_path) ma.printList(list_name='K_S0:RD', full=False, path=my_path) ma.printList(list_name='Lambda0:RD', full=False, path=my_path) ma.printList(list_name='K_S0:all', full=False, path=my_path) ma.printList(list_name='Lambda0:all', full=False, path=my_path)
defaultOutputFoldername = "." outputFilename = defaultOutputFoldername + '/' + defaultOutputFilename for arg in sys.argv: print(arg) if len(sys.argv)==2: inputFilename = sys.argv[1] if len(sys.argv)==3: inputFilename = sys.argv[1] outputFilename = sys.argv[2] use_central_database("GT_gen_prod_003.11_release-00-09-01-FEI-a") # load input ROOT file2 add_beamparameters(analysis_main,'Y4S') inputMdst('default', inputFilename) #stdMu('all') stdKshorts() stdK('95eff') stdPhotons('loose') stdPi0s() stdPi('all') #applyCuts('gamma:loose','1.4 < E < 4') vertexKFit('K_S0:all',0.0) reconstructDecay('rho+:signal -> pi+:all pi0:veryLoose','0.7 < M < 0.9') reconstructDecay('D0:signal -> K-:95eff pi+:all',' 1.8< M < 1.9') reconstructDecay('D*0:signal -> D0:signal pi0:veryLoose', '1.9 < M < 2.1') oldMask = ('oldMask', 'useCMSFrame(p)<=3.2', 'p >= 0.05 and useCMSFrame(p)<=3.2') define the "cleaner" mask eclCut = '[E > 0.062 and abs(clusterTiming) < 18 and clusterReg==1] or \ [E>0.060 and abs(clusterTiming) < 20 and clusterReg==2] or \
main = b2.Path() # load input data from mdst/udst file filedirectory = '/gpfs/group/belle2/users/seemac/Kstll/signal/BtoKstjpsi/kst0jpsi' ma.inputMdstList( environmentType='default', filelist=[ f'{filedirectory}/mdst_000001_prod00012871_task10020000001.root' ], path=main) # fill final state particle lists impactcut = 'abs(d0)<2.0 and abs(z0)<5.0 ' ma.fillParticleList(decayString='e+:uncorrected', cut=impactcut + ' and electronID > 0.5', path=main) stdV0s.stdKshorts(path=main) # apply Bremsstrahlung correction to electrons variables.addAlias("goodFWDGamma", "passesCut(clusterReg == 1 and clusterE > 0.075)") variables.addAlias("goodBRLGamma", "passesCut(clusterReg == 2 and clusterE > 0.05)") variables.addAlias("goodBWDGamma", "passesCut(clusterReg == 3 and clusterE > 0.1)") variables.addAlias('goodGamma', 'passesCut(goodFWDGamma or goodBRLGamma or goodBWDGamma)') ma.fillParticleList('gamma:brems', 'goodGamma', path=main) ma.correctBrems('e+:corrected', 'e+:uncorrected', 'gamma:brems', path=main) variables.addAlias('isBremsCorrected', 'extraInfo(bremsCorrected)') # combine final state particles to form composite particles