From 31b58e59b77a48f7667db2e93ab7fbf0a0ca85b4 Mon Sep 17 00:00:00 2001 From: malexand <michael.alexander@glasgow.ac.uk> Date: Wed, 13 Sep 2017 21:04:38 +0200 Subject: [PATCH] Add StrippingCache for S29r1 --- Phys/StrippingCache/CMakeLists.txt | 2 +- Phys/StrippingCache/doc/release.notes | 5 + .../options/DV-Stripping29r1-Stripping.py | 124 ++++++++++++++++++ 3 files changed, 130 insertions(+), 1 deletion(-) create mode 100644 Phys/StrippingCache/options/DV-Stripping29r1-Stripping.py diff --git a/Phys/StrippingCache/CMakeLists.txt b/Phys/StrippingCache/CMakeLists.txt index 05df5d641..d0ff4f4a4 100644 --- a/Phys/StrippingCache/CMakeLists.txt +++ b/Phys/StrippingCache/CMakeLists.txt @@ -42,7 +42,7 @@ if ( NOT "$ENV{CMTCONFIG}" STREQUAL "x86_64-slc6-gcc48-do0" ) set ( conf_deps ${deps} DaVinciConfUserDB ) # Build the cache only for the most recent stripping. - foreach(strip 29) + foreach(strip 29r1) # Stripping cache name set ( sname S${strip}FunctorCache ) diff --git a/Phys/StrippingCache/doc/release.notes b/Phys/StrippingCache/doc/release.notes index 2255c98f2..96b90247c 100644 --- a/Phys/StrippingCache/doc/release.notes +++ b/Phys/StrippingCache/doc/release.notes @@ -5,6 +5,11 @@ ! Created : 2015-02-04 ! ----------------------------------------------------------------------------- +!======================== StrippingCache v1r10p1 2017-09-13 ===================== + +! 2017-09-13 - Michael Alexander + - Add cache for S29r1. + !======================== StrippingCache v1r10 2017-06-13 ======================= ! 2017-05-30 - Michael Alexander diff --git a/Phys/StrippingCache/options/DV-Stripping29r1-Stripping.py b/Phys/StrippingCache/options/DV-Stripping29r1-Stripping.py new file mode 100644 index 000000000..6a1be5af7 --- /dev/null +++ b/Phys/StrippingCache/options/DV-Stripping29r1-Stripping.py @@ -0,0 +1,124 @@ +""" +Options for building Stripping29r1. +""" + +stripping='stripping29r1' + +#use CommonParticlesArchive +from CommonParticlesArchive import CommonParticlesArchiveConf +CommonParticlesArchiveConf().redirect(stripping) + + +from Gaudi.Configuration import * +MessageSvc().Format = "% F%30W%S%7W%R%T %0W%M" + +# +# Disable the cache in Tr/TrackExtrapolators +# +from Configurables import TrackStateProvider +TrackStateProvider().CacheStatesOnDemand = False + +# +# Fix for TrackEff lines +# +from Configurables import DecodeRawEvent +DecodeRawEvent().setProp("OverrideInputs",4.2) + +# +# Build the streams and stripping object +# +from StrippingConf.Configuration import StrippingConf, StrippingStream +from StrippingSettings.Utils import strippingConfiguration +from StrippingArchive.Utils import buildStreams +from StrippingArchive import strippingArchive + +#get the configuration dictionary from the database +config = strippingConfiguration(stripping) +#get the line builders from the archive +archive = strippingArchive(stripping) + +streams = buildStreams(stripping = config, archive = archive) + +leptonicMicroDSTname = 'Leptonic' +charmMicroDSTname = 'Charm' +pidMicroDSTname = 'PID' +bhadronMicroDSTname = 'Bhadron' +mdstStreams = [ leptonicMicroDSTname,charmMicroDSTname,pidMicroDSTname,bhadronMicroDSTname ] +dstStreams = [ "BhadronCompleteEvent", "CharmCompleteEvent", "Dimuon", + "EW", "Semileptonic", "Calibration", "MiniBias", "Radiative" ] + +stripTESPrefix = 'Strip' + +from Configurables import ProcStatusCheck + +# Fix for removal of default constructor for AALLSAMEBPV after DV v41r3. +# Thi has been fixed from S28 onwards. +#from Gaudi.Configuration import allConfigurables +#for conf in allConfigurables.values() : +# if hasattr(conf, 'CombinationCut') and 'AALLSAMEBPV' in conf.CombinationCut : +# conf.CombinationCut = conf.CombinationCut.replace('AALLSAMEBPV', 'AALLSAMEBPV(-1, -1, -1)') + +sc = StrippingConf( Streams = streams, + MaxCandidates = 2000, + MaxCombinations = 10000000, + AcceptBadEvents = False, + BadEventSelection = ProcStatusCheck(), + TESPrefix = stripTESPrefix, + ActiveMDSTStream = True, + Verbose = True, + DSTStreams = dstStreams, + MicroDSTStreams = mdstStreams ) + +from Configurables import ApplicationMgr, AuditorSvc, SequencerTimerTool + +# Initial IOV time +# http://www.onlineconversion.com/unix_time.htm +# values in ns (so multiply values from above link by 1e9) +#from Configurables import EventClockSvc +#EventClockSvc().EventTimeDecoder = "OdinTimeDecoder" + +appMgr = ApplicationMgr() +appMgr.OutputLevel = 6 +appMgr.ExtSvc += [ 'ToolSvc', 'AuditorSvc' ] + +appMgr.HistogramPersistency = "ROOT" +ntSvc = NTupleSvc() +appMgr.ExtSvc += [ ntSvc ] + +from Configurables import ( LHCbApp, PhysConf, AnalysisConf, + DstConf, LumiAlgsConf, DDDBConf ) + +LHCbApp().DDDBtag = "dddb-20150724" +LHCbApp().CondDBtag = "cond-20170510" + +# Can be enabled for next full stack release +PhysConf().OutputLevel = appMgr.OutputLevel +#AnalysisConf().OutputLevel = appMgr.OutputLevel + +datatype = "2017" +PhysConf().DataType = datatype +AnalysisConf().DataType = datatype +LumiAlgsConf().DataType = datatype +DDDBConf().DataType = datatype + +inputType = "RDST" +LumiAlgsConf().InputType = inputType +PhysConf().InputType = inputType + +unPack = ["Reconstruction"] +PhysConf().EnableUnpack = unPack +DstConf().EnableUnpack = unPack + +lumiSeq = GaudiSequencer("LumiSeq") +LumiAlgsConf().LumiSequencer = lumiSeq + +appMgr.TopAlg += [ PhysConf().initSequence(), + AnalysisConf().initSequence(), + sc.sequence(), lumiSeq ] + +#from Configurables import DaVinci +#DaVinci().ProductionType = "Stripping" +#DaVinci().DataType = datatype +#DaVinci().DDDBtag = LHCbApp().DDDBtag +#DaVinci().CondDBtag = LHCbApp().CondDBtag +#DaVinci().appendToMainSequence( [ sc.sequence() ] ) -- GitLab