def DoSubmission_ZtautauScale(pdfname,pdfnumber,workingdir): """ Create MC@NLO input cards and batch submission scripts to generate Z->tau+tau events with 2x and 0.5x ren/fac scale variations using PDF 'pdfname','pdfnumber' which will run under 'workingdir'. """ command = common.MCNLO_workdir+'/Linux/ztautauNLO_EXE_LHAPDF' fname = 'ztautau.mcatnlo.7TeV.'+pdfname subdir = 'ztautau.'+pdfnumber fnamebase = fname + '.bases' event_fname = fname + '.events' input_fname = fname + '.input' log_fname = fname + '.log' bsub_fname = fname + '.bsub' sub_fname = common.PBS_workdir+fname+'.scale.suball.sh' fout = open(sub_fname,'w') fren=[0.5,1,2] ffac=[0.5,1,2] for f1 in fren: for f2 in ffac: tag = 'fr'+str(f1).replace('0.5','5')+'ff'+str(f2).replace('0.5','5') thissubdir= subdir+'.'+tag randomnumber = random.randint(0,100000) common.checkAndMkdir(workingdir+'/'+thissubdir) CreateZtautauGenInputScale(workingdir+'/'+thissubdir+'/'+input_fname+'.'+tag,fnamebase+tag,event_fname+'.'+tag,pdfnumber,str(200000),str(randomnumber),str(f1),str(f2)) CreateScript(common.PBS_workdir+bsub_fname+'.'+tag+'.sh', input_fname+'.'+tag, log_fname+'.'+tag+'.txt', command, workingdir, thissubdir) fout.write('qsub -q short '+bsub_fname+'.'+tag+'.sh\n') fout.write('sleep 0.2\n') fout.close()
fout.close() if __name__=="__main__": config = parseCmdLine(sys.argv[1:]) if not (config.pdf in common.pdfs): print 'Invalid PDF name, abort' sys.exit(1) if not (config.process in common.processes): print 'Invalid process name, abort' sys.exit(1) directory_name=common.MCNLO_workdir+config.pdf+'/'+config.process common.checkAndMkdir(directory_name) pdfname = config.pdf[0:13] for k in xrange(common.limit[config.pdf]): if config.process=='ww': if config.doScale: DoSubmission_WWScale(pdfname+str(k), str(common.number[config.pdf]+k), common.MCNLO_workdir+config.pdf+'/') else: DoSubmission_WW(pdfname+str(k), str(common.number[config.pdf]+k), common.MCNLO_workdir+config.pdf+'/') if config.process=='ttbar': if config.doScale: DoSubmission_TtbarScale(pdfname+str(k), str(common.number[config.pdf]+k), common.MCNLO_workdir+config.pdf+'/') else: DoSubmission_Ttbar(pdfname+str(k), str(common.number[config.pdf]+k), common.MCNLO_workdir+config.pdf+'/') if config.process=='ztautau':
. $thisdir/MCatNLO.Script else echo "Wrong MCMODE, can only be HW6 or HWPP" exit fi compileNLO ''' f=open(process+'mcnlo.input','w') f.write(outstr) f.close() if __name__=="__main__": config = parseCmdLine(sys.argv[1:]) common.checkAndMkdir(common.MCNLO_workdir) os.chdir(common.MCNLO_workdir) if not os.access(os.path.basename(common.MCNLO_url), os.F_OK): urllib.urlretrieve(common.MCNLO_url, os.path.basename(common.MCNLO_url)) tar = tarfile.open(os.path.basename(common.MCNLO_url)) tar.extractall() tar.close() WriteBuildScript(config.process) prepend='' if not (common.LHAPDF_lib_dir in os.getenv('LD_LIBRARY_PATH')): print 'fixing ld_library_path' os.environ['LD_LIBRARY_PATH'] = common.LHAPDF_lib_dir+':' + os.getenv('LD_LIBRARY_PATH') subprocess.call(['bash',config.process+'mcnlo.input'])