Skip to content
Snippets Groups Projects
Commit 2b45d7ac authored by Walter Lampl's avatar Walter Lampl
Browse files

Merge branch 'UpdateZprimeQSSimART_23.0' into '23.0'

Update ZPrime Simulation ART jobs to use a more recent input.

See merge request atlas/athena!63687
parents 53981053 0b63dc73
No related branches found
No related tags found
No related merge requests found
......@@ -64,9 +64,6 @@ def Kernel_GenericSimulatorMTCfg(flags, name="ISF_Kernel_GenericSimulatorMT", **
if "GeoIDSvc" not in kwargs:
kwargs.setdefault("GeoIDSvc", acc.getPrimaryAndMerge(GeoIDSvcCfg(flags)).name)
if "InputConverter" not in kwargs:
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(InputConverterCfg(flags)).name)
if "TruthRecordService" not in kwargs:
kwargs.setdefault("TruthRecordService", acc.getPrimaryAndMerge(TruthServiceCfg(flags)).name)
......@@ -90,9 +87,15 @@ def Kernel_GenericSimulatorMTCfg(flags, name="ISF_Kernel_GenericSimulatorMT", **
# Needed to ensure that DeadMaterialCalibrationHitsMerger is scheduled correctly.
kwargs.setdefault("ExtraOutputs", [( 'CaloCalibrationHitContainer' , 'StoreGateSvc+LArCalibrationHitActive_DEAD' ), ( 'CaloCalibrationHitContainer' , 'StoreGateSvc+LArCalibrationHitDeadMaterial_DEAD' ), ( 'CaloCalibrationHitContainer' , 'StoreGateSvc+LArCalibrationHitInactive_DEAD' )])
if "QuasiStablePatcher" not in kwargs and flags.Sim.ISF.Simulator.isQuasiStable():
from BeamEffects.BeamEffectsAlgConfig import ZeroLifetimePositionerCfg
kwargs.setdefault("QuasiStablePatcher", acc.getPrimaryAndMerge(ZeroLifetimePositionerCfg(flags)) )
if flags.Sim.ISF.Simulator.isQuasiStable():
if "QuasiStablePatcher" not in kwargs:
from BeamEffects.BeamEffectsAlgConfig import ZeroLifetimePositionerCfg
kwargs.setdefault("QuasiStablePatcher", acc.getPrimaryAndMerge(ZeroLifetimePositionerCfg(flags)) )
if "InputConverter" not in kwargs:
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(LongLivedInputConverterCfg(flags)).name)
elif "InputConverter" not in kwargs:
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(InputConverterCfg(flags)).name)
if flags.Sim.ISF.ReSimulation:
acc.addSequence(AthSequencer('SimSequence'), parentName='AthAlgSeq') # TODO make the name configurable?
acc.addEventAlgo(CompFactory.ISF.SimKernelMT(name, **kwargs), 'SimSequence') # TODO make the name configurable?
......@@ -151,8 +154,6 @@ def Kernel_FullG4MT_QSCfg(flags, name="ISF_Kernel_FullG4MT_QS", **kwargs):
acc.popToolsAndMerge(LongLivedGeant4ToolCfg(flags))
])
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(LongLivedInputConverterCfg(flags)).name)
acc.merge(Kernel_GenericG4OnlyMTCfg(flags, name, **kwargs))
return acc
......@@ -298,7 +299,6 @@ def Kernel_ATLFAST3MTCfg(flags, name="ISF_Kernel_ATLFAST3MT", **kwargs):
def Kernel_ATLFAST3MT_QSCfg(flags, name="ISF_Kernel_ATLFAST3MT_QS", **kwargs):
acc = ComponentAccumulator()
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(LongLivedInputConverterCfg(flags)).name)
kwargs.setdefault("ParticleOrderingTool" , acc.popToolsAndMerge(ParticleOrderingToolCfg(flags)))
tool = acc.popToolsAndMerge(AFIIEntryLayerToolMTCfg(flags))
......@@ -357,7 +357,13 @@ def Kernel_GenericSimulatorCfg(flags, name="ISF_Kernel_GenericSimulator", **kwar
if "ParticleBroker" not in kwargs:
kwargs.setdefault("ParticleBroker", acc.getPrimaryAndMerge(AFIIParticleBrokerSvcCfg(flags)).name)
if "InputConverter" not in kwargs:
if flags.Sim.ISF.Simulator.isQuasiStable():
if "QuasiStablePatcher" not in kwargs:
from BeamEffects.BeamEffectsAlgConfig import ZeroLifetimePositionerCfg
kwargs.setdefault("QuasiStablePatcher", acc.getPrimaryAndMerge(ZeroLifetimePositionerCfg(flags)) )
if "InputConverter" not in kwargs:
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(LongLivedInputConverterCfg(flags)).name)
elif "InputConverter" not in kwargs:
kwargs.setdefault("InputConverter", acc.getPrimaryAndMerge(InputConverterCfg(flags)).name)
kwargs.setdefault("InputHardScatterCollection", "BeamTruthEvent")
......
......@@ -180,7 +180,10 @@ def getInput_geantinos(name="ISF_Input_geantinos", **kwargs):
def getKernel_GenericSimulator(name="ISF_Kernel_GenericSimulator", **kwargs):
kwargs.setdefault("InputHardScatterCollection", "BeamTruthEvent")
kwargs.setdefault("OutputHardScatterTruthCollection", "TruthEvent")
kwargs.setdefault("InputConverter", "ISF_InputConverter")
if ISF_Flags.Simulator.isQuasiStable():
kwargs.setdefault('InputConverter', 'ISF_LongLivedInputConverter')
kwargs.setdefault('QuasiStablePatcher', 'ZeroLifetimePositioner')
kwargs.setdefault('InputConverter', 'ISF_InputConverter')
kwargs.setdefault("ParticleBroker", ISF_Flags.ParticleBroker())
from G4AtlasApps.SimFlags import simFlags
kwargs.setdefault("TruthRecordService", simFlags.TruthStrategy.TruthServiceName())
......@@ -199,7 +202,11 @@ def getKernel_GenericSimulatorMT(name="ISF_Kernel_GenericSimulatorMT", **kwargs)
kwargs.setdefault("OutputTruthCollection", "TruthEvent" )
kwargs.setdefault("ParticleKillerTool", "ISF_ParticleKillerTool" )
kwargs.setdefault("GeoIDSvc", "ISF_GeoIDSvc" )
kwargs.setdefault("InputConverter", "ISF_InputConverter")
if ISF_Flags.Simulator.isQuasiStable():
kwargs.setdefault('InputConverter', 'ISF_LongLivedInputConverter')
kwargs.setdefault('QuasiStablePatcher', 'ZeroLifetimePositioner')
kwargs.setdefault('InputConverter', 'ISF_InputConverter')
from G4AtlasApps.SimFlags import simFlags
kwargs.setdefault("TruthRecordService", simFlags.TruthStrategy.TruthServiceName())
kwargs.setdefault("AlwaysUseGeoIDSvc", False)
......@@ -287,8 +294,6 @@ def getKernel_FullG4_QS(name="ISF_Kernel_FullG4_QS", **kwargs):
kwargs.setdefault("CaloSimulationSelectors" , [ 'ISF_DefaultLongLivedGeant4Selector' ] )
kwargs.setdefault("MSSimulationSelectors" , [ 'ISF_DefaultLongLivedGeant4Selector' ] )
kwargs.setdefault("CavernSimulationSelectors" , [ 'ISF_DefaultParticleKillerSelector' ] )
kwargs.setdefault("InputConverter" , 'ISF_LongLivedInputConverter' )
kwargs.setdefault("QuasiStablePatcher" , 'ZeroLifetimePositioner')
return getKernel_GenericG4Only(name, **kwargs)
############## Simulator: FullG4_longLived ###############
......@@ -299,7 +304,6 @@ def getKernel_FullG4_LongLived(name="ISF_Kernel_FullG4_LongLived", **kwargs): #
def getKernel_FullG4MT_QS(name="ISF_Kernel_FullG4MT_QS", **kwargs):
kwargs.setdefault("SimulationTools", ["ISF_ParticleKillerTool",
"ISF_LongLivedGeant4Tool"])
kwargs.setdefault("InputConverter", 'ISF_LongLivedInputConverter')
return getKernel_GenericG4OnlyMT(name, **kwargs)
############## Simulator: FullG4MT_longLived ###############
......@@ -412,8 +416,6 @@ def getKernel_ATLFAST3_QS(name="ISF_Kernel_ATLFAST3_QS", **kwargs):
'ISF_DefaultFastCaloSimV2Selector' ] )
kwargs.setdefault("MSSimulationSelectors" , [ 'ISF_DefaultAFII_QS_Geant4Selector' ] )
kwargs.setdefault("CavernSimulationSelectors" , [ 'ISF_DefaultParticleKillerSelector' ] )
kwargs.setdefault("InputConverter" , 'ISF_LongLivedInputConverter' )
kwargs.setdefault("QuasiStablePatcher" , 'ZeroLifetimePositioner' )
from G4AtlasApps.SimFlags import simFlags
simFlags.SimulationFlavour = "ATLFAST3_QS"
return getKernel_GenericSimulator(name, **kwargs)
......@@ -437,8 +439,6 @@ def getKernel_ATLFAST3MT_QS(name="ISF_Kernel_ATLFAST3MT_QS", **kwargs):
'AFII_QS_Geant4Tool'])
kwargs.setdefault("ParticleOrderingTool" , 'ISF_ParticleOrderingTool' )
kwargs.setdefault('EntryLayerTool' , 'ISF_AFIIEntryLayerToolMT')
kwargs.setdefault("InputConverter" , 'ISF_LongLivedInputConverter')
kwargs.setdefault("QuasiStablePatcher" , 'ZeroLifetimePositioner' )
from G4AtlasApps.SimFlags import simFlags
simFlags.SimulationFlavour = "ATLFAST3MT_QS"
return getKernel_GenericSimulatorMT(name, **kwargs)
......@@ -545,8 +545,6 @@ def getKernel_ATLFASTII_QS(name="ISF_Kernel_ATLFASTII_QS", **kwargs):
'ISF_DefaultLegacyAFIIFastCaloSimSelector' ] )
kwargs.setdefault("MSSimulationSelectors" , [ 'ISF_DefaultAFII_QS_Geant4Selector' ] )
kwargs.setdefault("CavernSimulationSelectors" , [ 'ISF_DefaultParticleKillerSelector' ] )
kwargs.setdefault("InputConverter" , 'ISF_LongLivedInputConverter' )
kwargs.setdefault("QuasiStablePatcher" , 'ZeroLifetimePositioner' )
from G4AtlasApps.SimFlags import simFlags
simFlags.SimulationFlavour = "ATLFASTII_QS"
return getKernel_GenericSimulator(name, **kwargs)
......
#!/bin/sh
#
# art-description: MC23-style simulation using FullG4_QS (13 TeV Zprime input - needs updating)
# art-description: MC23-style simulation using FullG4_QS (13.6 TeV Zprime input)
# art-type: build
# art-include: 22.0/Athena
# art-include: 22.0/AthSimulation
......@@ -17,7 +17,7 @@ Sim_tf.py \
--postInclude 'default:PyJobTransforms/UseFrontier.py' \
--preInclude 'EVNTtoHITS:Campaigns/MC23SimulationSingleIoV.py' \
--geometryVersion 'default:ATLAS-R3S-2021-03-02-00_VALIDATION' \
--inputEVNTFile "/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/EVNT.04607198._000001.pool.root.1" \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/mc23_13p6TeV.800030.Py8EG_A14NNPDF23LO_flatpT_Zprime_Extended.evgen.EVNT.e8514.33116368._004446.pool.root.1' \
--outputHITSFile "test.HITS.pool.root" \
--maxEvents 2
......
#!/bin/sh
#
# art-description: MC23-style Run3 simulation using FullG4MT_QS (13 TeV Zprime input - needs updating) in AthenaMT
# art-description: MC23-style Run3 simulation using FullG4MT_QS (13.6 TeV Zprime input) in AthenaMT
# art-include: 23.0/Athena
# art-include: 23.0/AthSimulation
# art-include: master/Athena
......@@ -11,12 +11,12 @@
# art-output: test.*.HITS.pool.root
# art-output: log.*
# art-output: Config*.pkl
#/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/EVNT.04607198._000001.pool.root.1
#/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/EVNT.04607198._000001.pool.root.1 # Older Zprime input
export ATHENA_CORE_NUMBER=8
# RUN3 setup
# ATLAS-R3S-2021-03-01-00 and OFLCOND-MC21-SDR-RUN3-07
# ATLAS-R3S-2021-03-02-00 and OFLCOND-MC21-SDR-RUN3-07
Sim_tf.py \
--CA \
--multithreaded \
......@@ -24,10 +24,11 @@ Sim_tf.py \
--simulator 'FullG4MT_QS' \
--postInclude 'PyJobTransforms.UseFrontier' \
--preInclude 'EVNTtoHITS:Campaigns.MC23aSimulationMultipleIoV' \
--geometryVersion 'default:ATLAS-R3S-2021-03-01-00' \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/EVNT.04607198._000001.pool.root.1' \
--geometryVersion 'default:ATLAS-R3S-2021-03-02-00' \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/mc23_13p6TeV.800030.Py8EG_A14NNPDF23LO_flatpT_Zprime_Extended.evgen.EVNT.e8514.33116368._004446.pool.root.1' \
--outputHITSFile 'test.CA.HITS.pool.root' \
--maxEvents 50 \
--skipEvents 50 \
--jobNumber 1 \
--postExec 'with open("ConfigSimCA.pkl", "wb") as f: cfg.store(f)' \
--imf False
......@@ -43,10 +44,11 @@ Sim_tf.py \
--simulator 'FullG4MT_QS' \
--postInclude 'default:PyJobTransforms/UseFrontier.py' \
--preInclude 'EVNTtoHITS:Campaigns/MC23aSimulationMultipleIoV.py' \
--geometryVersion 'default:ATLAS-R3S-2021-03-01-00' \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/EVNT.04607198._000001.pool.root.1' \
--geometryVersion 'default:ATLAS-R3S-2021-03-02-00' \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/mc23_13p6TeV.800030.Py8EG_A14NNPDF23LO_flatpT_Zprime_Extended.evgen.EVNT.e8514.33116368._004446.pool.root.1' \
--outputHITSFile 'test.CA.HITS.pool.root' \
--maxEvents 50 \
--skipEvents 50 \
--jobNumber 1 \
--imf False \
--athenaopts '"--config-only=ConfigSimCG.pkl"'
......@@ -57,10 +59,11 @@ Sim_tf.py \
--simulator 'FullG4MT_QS' \
--postInclude 'default:PyJobTransforms/UseFrontier.py' \
--preInclude 'EVNTtoHITS:Campaigns/MC23aSimulationMultipleIoV.py' \
--geometryVersion 'default:ATLAS-R3S-2021-03-01-00' \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/EVNT.04607198._000001.pool.root.1' \
--geometryVersion 'default:ATLAS-R3S-2021-03-02-00' \
--inputEVNTFile '/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/ISF_Validation/mc23_13p6TeV.800030.Py8EG_A14NNPDF23LO_flatpT_Zprime_Extended.evgen.EVNT.e8514.33116368._004446.pool.root.1' \
--outputHITSFile 'test.CG.HITS.pool.root' \
--maxEvents 50 \
--skipEvents 50 \
--jobNumber 1 \
--imf False
......@@ -90,7 +93,7 @@ if [ $rc2 -eq 0 ]
then
ArtPackage=$1
ArtJobName=$2
art.py compare grid --entries 10 ${ArtPackage} ${ArtJobName} --order-trees --mode=semi-detailed --diff-root --file=test.CG.HITS.pool.root
art.py compare grid ${ArtPackage} ${ArtJobName} --order-trees --mode=semi-detailed --diff-root --file=test.CG.HITS.pool.root
rc4=$?
status=$rc4
fi
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment