Skip to content
Snippets Groups Projects
Commit 249a8d2f authored by Frank Winklmeier's avatar Frank Winklmeier
Browse files

Merge branch 'FPGATrackSimCI' into 'main'

EFTracking: FPGATrackSim: move unit tests to CI

See merge request !71832
parents 4c04b349 17e67bd4
No related branches found
No related tags found
27 merge requests!78241Draft: FPGATrackSim: GenScan code refactor,!78236Draft: Switching Streams https://its.cern.ch/jira/browse/ATR-27417,!78056AFP monitoring: new synchronization and cleaning,!78041AFP monitoring: new synchronization and cleaning,!77990Updating TRT chip masks for L1TRT trigger simulation - ATR-28372,!77733Draft: add new HLT NN JVT, augmented with additional tracking information,!77731Draft: Updates to ZDC reconstruction,!77728Draft: updates to ZDC reconstruction,!77522Draft: sTGC Pad Trigger Emulator,!76725ZdcNtuple: Fix cppcheck warning.,!76611L1CaloFEXByteStream: Fix out-of-bounds array accesses.,!76475Punchthrough AF3 implementation in FastG4,!76474Punchthrough AF3 implementation in FastG4,!75729New implementation of ZDC nonlinear FADC correction.,!75703Draft: Update to HI han config for HLT jets,!75184Draft: Update file heavyions_run.config,!74430Draft: Fixing upper bound for Delayed Jet Triggers,!73963Changing the path of the histograms to "Expert" area,!73875updating ID ART reference plots,!73874AtlasCLHEP_RandomGenerators: Fix cppcheck warnings.,!73449Add muon detectors to DarkJetPEBTLA partial event building,!73343Draft: [TrigEgamma] Add photon ringer chains on bootstrap mechanism,!72336Fixed TRT calibration crash,!72176Draft: Improving L1TopoOnline chain that now gets no-empty plots. Activating it by default,!72012Draft: Separate JiveXMLConfig.py into Config files,!71876Fix MET trigger name in MissingETMonitoring,!71832EFTracking: FPGATrackSim: move unit tests to CI
......@@ -337,3 +337,6 @@ atlas_add_citest( Trigger_athenaHLT_v1PhysP1
atlas_add_citest( Trigger_athenaHLT_v1Cosmic
SCRIPT test_trigP1_v1Cosmic_build.py )
atlas_add_citest( EFTracking_FPGATrackSim_workflow
SCRIPT FPGATrackSimCI.sh )
......@@ -20,14 +20,8 @@ atlas_add_component( FPGATrackSimConfTools
# Install files from the package:
atlas_install_python_modules( python/*.py )
atlas_install_scripts( test/FPGATrackWorkflow/*.sh)
atlas_install_scripts( test/FPGATrackSimInputTestSetup.sh )
atlas_install_scripts( test/FPGATrackWorkflow/FPGATrackWrapperFileGeneration.sh
test/FPGATrackWorkflow/FPGATrackBankGeneration.sh
test/FPGATrackWorkflow/FPGATrackMapGeneration.sh
test/FPGATrackWorkflow/FPGATrackConstGeneration.sh
test/FPGATrackWorkflow/FPGATrackAnalysisOnWrapper.sh
test/FPGATrackWorkflow/FPGATrackAnalysisOnRDO.sh
)
# Tests in the package:
atlas_add_test( FPGATrackSimRegionSlices_test
......@@ -37,34 +31,4 @@ atlas_add_test( FPGATrackSimRegionSlices_test
atlas_add_test( FPGATrackSimConfigFlags_test
SCRIPT python -m FPGATrackSimConfTools.FPGATrackSimConfigFlags
POST_EXEC_SCRIPT noerror.sh )
atlas_add_test( FPGATrackSimWorkflow_WrapperGeneration_test
SCRIPT FPGATrackWrapperFileGeneration.sh
POST_EXEC_SCRIPT noerror.sh
PROPERTIES TIMEOUT 200)
atlas_add_test( FPGATrackSimWorkflow_MapGeneration_test
SCRIPT FPGATrackMapGeneration.sh
POST_EXEC_SCRIPT noerror.sh
PROPERTIES TIMEOUT 200)
atlas_add_test( FPGATrackSimWorkflow_BankGeneration_test
SCRIPT FPGATrackBankGeneration.sh
POST_EXEC_SCRIPT noerror.sh
PROPERTIES TIMEOUT 200)
atlas_add_test( FPGATrackSimWorkflow_ConstGeneration_test
SCRIPT FPGATrackConstGeneration.sh
POST_EXEC_SCRIPT noerror.sh
PROPERTIES TIMEOUT 200)
atlas_add_test( FPGATrackSimWorkflow_WrapperAnalysis_test
SCRIPT FPGATrackAnalysisOnWrapper.sh
POST_EXEC_SCRIPT noerror.sh
PROPERTIES TIMEOUT 200)
atlas_add_test( FPGATrackSimWorkflow_RDOAnalysis_test
SCRIPT FPGATrackAnalysisOnRDO.sh
POST_EXEC_SCRIPT noerror.sh
PROPERTIES TIMEOUT 200)
POST_EXEC_SCRIPT noerror.sh )
#!/bin/bash
set -e
RDO=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/PhaseIIUpgrade/EFTracking/ATLAS-P2-RUN4-03-00-00/RDO/reg0_singlemu.root
RDO_EVT=-1
GEO_TAG="ATLAS-P2-RUN4-03-00-00"
COMBINED_MATRIX='/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/PhaseIIUpgrade/EFTracking/ATLAS-P2-RUN4-03-00-00/banks_9L/combined_matrix.root'
#make wrapper file
echo "... RDO to AOD with sim"
Reco_tf.py --CA \
--steering doRAWtoALL \
--preExec "flags.Trigger.FPGATrackSim.wrapperFileName='wrapper.root'" \
--preInclude "InDetConfig.ConfigurationHelpers.OnlyTrackingPreInclude,ActsConfig.ActsCIFlags.actsValidateTracksFlags" \
--postInclude "FPGATrackSimSGInput.FPGATrackSimSGInputConfig.FPGATrackSimSGInputCfg" \
--inputRDOFile ${RDO} \
--outputAODFile AOD.pool.root \
--maxEvents ${RDO_EVT}
ls -l
echo "... RDO to AOD with sim, this part is done ..."
# generate maps
echo "... Maps Making"
python -m FPGATrackSimConfTools.FPGATrackSimMapMakerConfig \
--filesInput=wrapper.root \
OutFileName="MyMaps_" \
region=0 \
GeoModel.AtlasVersion=${GEO_TAG}
ls -l
echo "... Maps Making, this part is done ..."
mkdir -p maps
mv MyMaps_region0.rmap maps/eta0103phi0305.rmap
mv *.rmap maps/eta0103phi0305.subrmap
mv MyMaps_region0.pmap maps/pmap
mv *_MeanRadii.txt maps/eta0103phi0305_radii.txt
touch maps/moduleidmap
echo "... Banks generation"
python -m FPGATrackSimBankGen.FPGATrackSimBankGenConfig \
--filesInput=${RDO} \
--evtMax=${RDO_EVT} \
Trigger.FPGATrackSim.mapsDir=maps
ls -l
echo "... Banks generation, this part is done ..."
echo "... const generation on combined matrix file"
python -m FPGATrackSimBankGen.FPGATrackSimBankConstGenConfig \
Trigger.FPGATrackSim.FPGATrackSimMatrixFileRegEx=${COMBINED_MATRIX} \
Trigger.FPGATrackSim.mapsDir=./maps/ \
--evtMax=1
ls -l
echo "... const generation on combined matrix file, this part is done ..."
mkdir -p banks
mv sectors* slices* corr* const.root combined_matrix.root banks
echo "... analysis on wrapper"
python -m FPGATrackSimConfTools.FPGATrackSimAnalysisConfig \
Trigger.FPGATrackSim.wrapperFileName="wrapper.root" \
Trigger.FPGATrackSim.mapsDir=./maps \
Trigger.FPGATrackSim.tracking=True \
Trigger.FPGATrackSim.bankDir=./banks/
ls -l
echo "... analysis on wrapper, this part is done ..."
echo "... analysis output verification"
cat << EOF > checkHist.C
{
_file0->cd("FPGATrackSimLogicalHitsProcessAlg");
TH1* h = (TH1*)gDirectory->Get("nroads_1st");
if ( h == nullptr )
throw std::runtime_error("oh dear, after all of this there is no roads histogram");
h->Print();
if ( h->GetEntries() == 0 ) {
throw std::runtime_error("oh dear, after all of this there are zero roads");
}
}
EOF
root -b -q monitoring.root checkHist.C
rm monitoring.root
echo "... wrapper analysis output verification, this part is done ..."
echo "... analysis on RDO"
python -m FPGATrackSimConfTools.FPGATrackSimAnalysisConfig \
--filesInput=${RDO} \
--evtMax=${RDO_EVT} \
Trigger.FPGATrackSim.mapsDir=./maps \
Trigger.FPGATrackSim.tracking=True \
Trigger.FPGATrackSim.sampleType='singleMuons' \
Trigger.FPGATrackSim.bankDir=./banks/
ls -l
echo "... analysis on RDO, this part is done ..."
root -b -q monitoring.root checkHist.C
echo "... rdo analysis output verification, this part is done ..."
echo "... all done ..."
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