The current sim/reco consists of five steps
For various reasons, reco is split in three steps. We'd love to have it in one, so if you're keen mitigating this situation, please let us know
cd /scratch/sid_complete cd v01-17-02-sid source init_ilcsoft.sh |
so you have all pathes and libraries properly set
there are two ways of getting events into SLIC, using the particle gun or by using a stdhep file as an input
create a macro file called mymacro.macro
/lcio/PDGFlag true /lcio/filename myparticlegun.slcio /run/initialize /generator/select gun /gun/particle e- /gun/position 0 0 0 /gun/direction 0. 1. 0 /gun/energy 10 GeV /run/beamOn 100 |
get an example stdhep file from the SLAC FTP server
and store it in a data folder /scratch/sid_complete/data
now get ready to run SLIC
For all the following purposes, we're using the sidloi3 detector model, others can be used as well (or you can design your own)
for the particle gun do the following
the execute this with
cd data $SLIC/build/bin/slic -g ../lcsim/LCDetectors/detectors/sidloi3/sidloi3.lcdd -m mymacro.macro |
this will generate a file called myparticlegun.slcio with 100 10 GeV electrons fired at 90 degrees in the sidloi3 detector version
For the stdhep, use the following
cd data $SLIC/build/bin/slic -g ../lcsim/LCDetectors/detectors/sidloi3/sidloi3.lcdd -i pythiaZPolemumu.stdhep -O -p . -r 100 |
it should produce an outputfile called
pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3.slcio
For the following we'll use the LCIO file made from the stdhep input, for the particle gun file, just replace the file names |
use the following Command line (all in one line!)
java -jar ../lcsim/lcsim/target/lcsim-2.11-SNAPSHOT-bin.jar ../myscripts/sid_dbd_prePandora_noOverlay.xml -DinputFile=pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3.slcio -DtrackingStrategies=../myscripts/sidloi3_trackingStrategies_default.xml -DoutputFile=pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_reco.slcio |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:../slicPandora/lib/ ../slicPandora/bin/PandoraFrontend -g ../myscripts/sidloi3_pandora.xml -c ../myscripts/sid_dbd_pandoraSettings.xml -i pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_reco.slcio -o pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_pandora.slcio |
* -g Geometry file
cp ../myscripts/sid_dbd_vertexing.xml . |
modify the filenames accordingly in an editor
<global> <parameter name="LCIOInputFiles"> pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_pandora.slcio</parameter> <parameter name="GearXMLFile"> </parameter> <parameter name="MaxRecordNumber" value="-1" /> <parameter name="SkipNEvents" value="0" /> <parameter name="SupressCheck" value="false" /> <parameter name="Verbosity" options="DEBUG0-4,MESSAGE0-4,WARNING0-4,ERROR0-4,SILENT">WARNING</parameter> </global> <processor name="MyLCIOOutputProcessor" type="LCIOOutputProcessor"> <parameter name="LCIOOutputFile" type="string">pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_lcfi.slcio </parameter> <parameter name="LCIOWriteMode" type="string" value="WRITE_NEW"/> </processor> |
$MARLIN/bin/Marlin sid_dbd_vertexing.xml |
This final step creates two lcio files, one DST and with all the collections. It also performs the truth-matching
java -jar ../lcsim/lcsim/target/lcsim-2.11-SNAPSHOT-bin.jar ../myscripts/sid_dbd_postPandora.xml -DinputFile=pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_lcfi.slcio -DrecFile=pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_full.slcio -DdstFile=pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_dst.slcio |
use the anajob tool from the LCIO package
anajob data/pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_full.slcio |
it should yield
EVENT: 9 RUN: 0 DETECTOR: sidloi3 COLLECTIONS: (see below) /////////////////////////////////// --------------------------------------------------------------------------- COLLECTION NAME COLLECTION TYPE NUMBER OF ELEMENTS =========================================================================== BeamCalHits SimCalorimeterHit 0 BuildUpVertex Vertex 0 BuildUpVertex_RP ReconstructedParticle 0 BuildUpVertex_V0 Vertex 0 BuildUpVertex_V0_RP ReconstructedParticle 0 CalorimeterHitRelations LCRelation 199 ClusterMCTruthLink LCRelation 2 EM_BARREL CalorimeterHit 64 EM_ENDCAP CalorimeterHit 0 EcalBarrelHits SimCalorimeterHit 64 EcalEndcapHits SimCalorimeterHit 0 HAD_BARREL CalorimeterHit 87 HAD_ENDCAP CalorimeterHit 0 HcalBarrelHits SimCalorimeterHit 87 HcalEndcapHits SimCalorimeterHit 0 HelicalTrackHitRelations LCRelation 22 HelicalTrackHits TrackerHit 22 HelicalTrackMCRelations LCRelation 22 LumiCalHits SimCalorimeterHit 0 MCParticle MCParticle 16 MCParticlesSkimmed MCParticle 16 MUON_BARREL CalorimeterHit 48 MUON_ENDCAP CalorimeterHit 0 MuonBarrelHits SimCalorimeterHit 48 MuonEndcapHits SimCalorimeterHit 0 PandoraPFOCollection ReconstructedParticle 2 PrimaryVertex Vertex 1 PrimaryVertex_RP ReconstructedParticle 1 RecoMCTruthLink LCRelation 2 ReconClusters Cluster 2 SiTrackerBarrelHits SimTrackerHit 13 SiTrackerEndcapHits SimTrackerHit 0 SiTrackerForwardHits SimTrackerHit 0 SiVertexBarrelHits SimTrackerHit 10 SiVertexEndcapHits SimTrackerHit 0 StateAtECal LCGenericObject 2 StateAtEnd LCGenericObject 2 StateAtStart LCGenericObject 2 TKR_RawTrackerHits TrackerRawData 20 TKR_TrackerHits TrackerHit 13 TrackMCTruthLink LCRelation 2 Tracks Track 2 VXD_RawTrackerHits TrackerRawData 16 VXD_TrackerHits TrackerHit 10 --------------------------------------------------------------------------- |
and list all the individual LCIO collections
or use jas to look at the Events
jas-assembly-3.0.3/jas3 data/pythiaZPolemumu_slic-3.1.0_geant4-v9r6p1_QGSP_BERT_sidloi3_full.slcio |
File->New Wired4 Viewer