# include the Fast Calo Sim reconstruction setup include('FastSimulationJobTransforms/FastCaloSimRecConfig.py') jobproperties.FastSimulation.doFatrasID = True jobproperties.FastSimulation.doFatrasMuon = True jobproperties.FastSimulation.doParametrisedMuon = False from FatrasExample.FatrasJobProperties import FatrasFlags #FatrasFlags.FastCaloSim is NOT needed when running in Reco_trf: FastCaloSim is naturally integrated in the calorec part #FatrasFlags.FastCaloSim = True # set Muon Reco and ID reco on FatrasFlags.RefittingID = False FatrasFlags.ReconstructionID = True FatrasFlags.EventPreProcessing = True # (MS) FatrasFlags.RefittingMS = False FatrasFlags.DigitizationMS = True FatrasFlags.ReconstructionMS = True from FatrasExample.FatrasKeys import FatrasKeyFlags FatrasKeyFlags.InputMcEventCollection = 'GEN_EVENT' from FatrasExample.FatrasKeys import FatrasKeyFlags from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool() theFastShowerCellBuilderTool.McLocation = FatrasKeyFlags.McEventCollection() #theFastShowerCellBuilderTool.OutputLevel = ERROR rec.abortOnUncheckedStatusCode = False
from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool=FastShowerCellBuilderTool() theFastShowerCellBuilderTool.AdditionalParticleParametrizationFileNames.insert(0,"L1_L2_egamma_corr.config14.root")
################################################################# # Simulation Job Options to use new parametrization file from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool() theFastShowerCellBuilderTool.ParticleParametrizationFileName = "ParticleParametrization_9.3.2010.root" #theFastShowerCellBuilderTool.OutputLevel=DEBUG ################################################################# include("FastSimulationJobTransforms/jobConfig.v14_Parametrisation.py")
from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool=FastShowerCellBuilderTool() theFastShowerCellBuilderTool.DoSimulWithInnerDetectorTruthOnly=True theFastShowerCellBuilderTool.ID_cut_off_r=[1150] theFastShowerCellBuilderTool.ID_cut_off_z=[3490]
from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool() theFastShowerCellBuilderTool.DoSimulWithInnerDetectorV14TruthCuts = True
################################################################# # Simulation Job Options to use new parametrization file from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool() theFastShowerCellBuilderTool.DoNewEnergyEtaSelection = True theFastShowerCellBuilderTool.DoEnergyInterpolation = True theFastShowerCellBuilderTool.use_Ekin_for_depositions = True # MISSING: setup for Database access to new parametrization ! include("FastSimulationJobTransforms/jobConfig.FastCaloSim_DB.py") from IOVDbSvc.CondDB import conddb conddb.addFolder( 'GLOBAL_OFL', '/GLOBAL/AtlfastII/FastCaloSimParam <tag>FastCaloSim_v2</tag>') #################################################################
def getFastShowerCellBuilderTool(name="FastShowerCellBuilderTool", **kwargs): return FastShowerCellBuilderTool()
def FastCaloSimFactory(name="FastCaloSimFactory", **kwargs): from AthenaCommon.Logging import logging mlog = logging.getLogger('FastCaloSimFactory::configure:') from CaloRec.CaloCellFlags import jobproperties from AthenaCommon.AppMgr import ToolSvc ######################################################################################################### #from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool #theFastShowerCellBuilderTool=FastShowerCellBuilderTool() mlog.info("now configure the non-interacting propagator...") from TrkExSTEP_Propagator.TrkExSTEP_PropagatorConf import Trk__STEP_Propagator niPropagator = Trk__STEP_Propagator() niPropagator.MaterialEffects = False ToolSvc += niPropagator mlog.info("configure nono-interacting propagator finished") mlog.info("now configure the TimedExtrapolator...") from TrkExTools.TimedExtrapolator import TimedExtrapolator timedExtrapolator = TimedExtrapolator() timedExtrapolator.STEP_Propagator = niPropagator timedExtrapolator.ApplyMaterialEffects = False ToolSvc += timedExtrapolator #theFastShowerCellBuilderTool.Extrapolator=timedExtrapolator mlog.info("configure TimedExtrapolator finished") from CaloTrackingGeometry.CaloTrackingGeometryConf import CaloSurfaceHelper caloSurfaceHelper = CaloSurfaceHelper() ToolSvc += caloSurfaceHelper #theFastShowerCellBuilderTool.CaloSurfaceHelper=caloSurfaceHelper from TrkDetDescrSvc.TrkDetDescrJobProperties import TrkDetFlags #theFastShowerCellBuilderTool.CaloEntrance = TrkDetFlags.InDetContainerName() kwargs.setdefault("CaloEntrance", TrkDetFlags.InDetContainerName()) kwargs.setdefault("CaloSurfaceHelper", caloSurfaceHelper) kwargs.setdefault("Extrapolator", timedExtrapolator) from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool(name, **kwargs) ######################################################################################################### #theFastShowerCellBuilderTool.Invisibles=[12, 14, 16, 1000022] ######################################################################################################### import os try: ParticleParametrizationFileName = theFastShowerCellBuilderTool.ParticleParametrizationFileName except: ParticleParametrizationFileName = "" if ParticleParametrizationFileName == "" and len( theFastShowerCellBuilderTool. AdditionalParticleParametrizationFileNames) == 0: try: ATLASCALDATA = os.environ["ATLASCALDATA"] ParticleParametrizationFileName = ATLASCALDATA + "/FastCaloSim/v1/ParticleEnergyParametrization.root" except: ATLASCALDATA = "" ParticleParametrizationFileName = "ParticleEnergyParametrization.root" theFastShowerCellBuilderTool.ParticleParametrizationFileName = ParticleParametrizationFileName mlog.info("ParticleParametrizationFile=%s", ParticleParametrizationFileName) #from AthenaCommon.AppMgr import theApp #svcMgr = theApp.serviceMgr() #svcMgr.MessageSvc.debugLimit = 100000000 mlog.info("all values:") print theFastShowerCellBuilderTool return theFastShowerCellBuilderTool
################################################################# from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool() theFastShowerCellBuilderTool.DoSimulWithInnerDetectorTruthOnly = False
from CaloRec.CaloCellFlags import jobproperties jobproperties.CaloCellFlags.doFastCaloSim = True jobproperties.CaloCellFlags.doFastCaloSimNoise = True DetFlags.makeRIO.Calo_setOn() # switch off ID, calo, or muons # DetFlags.ID_setOff() # DetFlags.Calo_setOff() # DetFlags.Muon_setOff() # main jobOption from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool=FastShowerCellBuilderTool() from FastCaloSim.FastCaloSimConf import EmptyCellBuilderTool theEmptyCellBuilderTool=EmptyCellBuilderTool() include ("RecExCommon/RecExCommon_topOptions.py") # Move the MC collection to be TruthEvent theApp.Dlls += [ "HepMCTools"] theApp.TopAlg = ["CopyMcCollection"] + theApp.TopAlg CopyMcCollection = Algorithm("CopyMcCollection") CopyMcCollection.oldCollectionKey="GEN_EVENT" CopyMcCollection.newCollectionKey="TruthEvent" CopyMcCollection.deleteOldCollection=True
from FastCaloSim.FastCaloSimConf import FastShowerCellBuilderTool theFastShowerCellBuilderTool = FastShowerCellBuilderTool() theFastShowerCellBuilderTool.OutputLevel = DEBUG from AthenaCommon.AppMgr import theApp svcMgr = theApp.serviceMgr() svcMgr.MessageSvc.debugLimit = 100000000 svcMgr.MessageSvc.infoLimit = 100000000