diff --git a/EcalAlCaRecoProducers/doc/alcareco_production.txt b/EcalAlCaRecoProducers/doc/alcareco_production.txt new file mode 100644 index 00000000000..abafe0467f1 --- /dev/null +++ b/EcalAlCaRecoProducers/doc/alcareco_production.txt @@ -0,0 +1,10 @@ +/** + \page pAlcarecoProduction AlCaReco Production from AlCaRaw + +AlCaReco centrally produced have a bug, you need to run a reReco of the AlCaRaw with the Prompt GT: \ref pFindPromptGT + +Then follow the instructions for a rereco using as \b tag_name the name of the GT: \ref page5 + + +*/ + diff --git a/EcalAlCaRecoProducers/doc/find_json.txt b/EcalAlCaRecoProducers/doc/find_json.txt new file mode 100644 index 00000000000..6c75e0d2aa1 --- /dev/null +++ b/EcalAlCaRecoProducers/doc/find_json.txt @@ -0,0 +1,9 @@ +\** +\page pFindJson Where to find the golden json + +The Golden Json is published by the certification group. Find the relative HN and subscribe if you are a regular user of ECALELF. + +The official json files are put in +\verbatim +/afs/cern.ch/cms/CAF/CMSCOMM/COMM_DQM/certification/ +\endverbatim diff --git a/EcalAlCaRecoProducers/doc/find_prompt_gt.txt b/EcalAlCaRecoProducers/doc/find_prompt_gt.txt new file mode 100644 index 00000000000..bbc3da22057 --- /dev/null +++ b/EcalAlCaRecoProducers/doc/find_prompt_gt.txt @@ -0,0 +1,13 @@ +/** +\page pFindPromptGT How to find the Prompt GT + +Prompt GT is not any more in the file metadata. You need to access the DB to verify the GT used in Prompt recoing the dataset using DAS. + +You can do it from the command line using the following command: +\code +das_client.py --query="config dataset=/DoubleEG/Run2015C-EcalUncalZElectron-PromptReco-v1/ALCARECO | grep config.global_tag" | tail -1 +\endcode + + +*/ + diff --git a/EcalAlCaRecoProducers/doc/introduction.txt b/EcalAlCaRecoProducers/doc/introduction.txt new file mode 100644 index 00000000000..d2a57a89505 --- /dev/null +++ b/EcalAlCaRecoProducers/doc/introduction.txt @@ -0,0 +1,97 @@ +/** +* \page page1 Introduction + +############################################################ +# ECALELF (Ecal CALibration with ELectrons Framework) +## study and calibration with Zee and E/p +############################################################ + + +All the code needed to the ECAL studies and calibration with Zee is +available in this package. + +The documentation of this packaged is provided in these pages extracted with doxygen from the source code and several txt files contained in the package itself. + +The code in this package takes the name of ECALELF +(Ecal CALibration with ELectrons Framework) + +Informations for the implementation or re-implementation can be +obtained looking the the various header files that will be completed +with exaustive documentation (in the future) + +If you have doxygen, you can run the command +\code doxygen fulldoc \endcode +from the Calibration/ directory and you can navigate instructions and code locally with +\verbatim firefox doc/doxygen/fulldoc/html/index.html \endverbatim + + +### The general calibration workflow is: +\image html doc/ecalelf_schema.png +\image latex doc/ecalelf_schema.eps + + 1. start from AOD/RECO or AOD/RECO+RAW + 2. apply a ZSkim or a ZSCSkim or a WSkim selection to reduce the size of the dataset + 3. produce the ALCARAW from AOD/RECO+RAW: + in this format most of the collections are + dropped and only the electrons, the uncalibrated rec hits + and few other collections like the beamspot, the conversions, the + rhoFastJet are kept + + 4. Apply whatever ECAL tags (ADCtoGeV, IC, LC, Alpha) needed for test + or calibration and produce a new file in ALCARECO format. + The new file has a reduced collection of calibrated rechit of the + reco electrons, new SC collections produced with the new calibrated + recHits, the old reco electrons with a new SC associated + CAVEAT: all the electron variables are still the old RECO one, + only the reference to the new SC has been updated. This will not be + fixed, since it's a wanted feature that ensures that the selected + events are not changed and permit to check effectively the impact + of the calibration on the same events. + + 5. calculate new electron energies with the EleNewEnergiesProducer + that creates ValueMaps that associate a float (the new energy) to + the electrons + + 6. define if the electron pass some selections running the + EleSelectionProducer that creates valueMaps of floats with the + following meaning: + for cut-based selections 1=pass, 0=fail + for MVA selections the float is the output of the MVA + + 7. for MC, produce an association map between reco electron and gen + electron (data-MC match) + + 8. produce a patElectron collection where the electronID floats and + the new energies are imported by the patElectron and accessible by + electron.electronID("selectionName") + electron.userFloat("energyName") + the gen electron identified by the data-MC matching step are + embended in the patElectron and accessible by: + electron.genLepton().eta() + electron.genLepton().energy() + + 9. Filter the events requiring that the electron has passed at least + one selection + + 10. dump the event content to a flat tree with one entry for Zee + candidate (the variables are array of two elements with one electron + per element) + + 11. Run the analysis tools (Z fitter, smearing, etc.) + + + +In case the purpose is just to run on a particular dataset without any +recalibration step, the 1-3a) steps can be replaced by + + 1. Start from RECO or AOD + 2. Produce directly the ALCARECO, dropping all the unuseful + collections and reducing the recHit maps to the one related to + the electrons + 3. nothing + + + + + +*/