]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/READMEmapping.txt
Separating run-dependent mapping data from data, which are not
[u/mrichter/AliRoot.git] / MUON / READMEmapping.txt
index b2a99d40f7538bf79dd98886e41606f3f68f84a4..842c0fdf1a59a15be43fe1721ff12c99c7a1e6a9 100644 (file)
@@ -11,17 +11,69 @@ chamber segmentations an later on also to hold the description of the
 top level connections of detection elements, including information
 about DDLs, bus patches and also trigger configuration.
 
+\section mapping_s0  Mapping in OCDB
+  
+The mapping is everywhere in the MUON code loaded from
+OCDB. In case the mapping data files are changed, the mapping
+in OCDB has to be regenerated in this way:
+
+For changes in mapping/data:
+<pre>
+$> cd $ALICE_ROOT/MUON
+$> rm Calib/MappingData/Run0_999999999_v0_s0.root
+$> aliroot
+root [0] AliMpCDB::WriteMpData(); 
+</pre>
+
+For changes in mapping/data_run:
+<pre>
+$> cd $ALICE_ROOT/MUON
+$> rm Calib/MappingRunData/Run0_999999999_v0_s0.root
+$> aliroot
+root [0] AliMpCDB::WriteMpRunData(); 
+</pre>
+
+Note that mapping has to be loaded from OCDB almost each time
+when using MUON classes; the loading of mapping depends on
+the CBD manager state (the current run number, storage ...).
+The standard way of loading mapping expects the CDB manager
+in a state well defined beforehand; this way is used in
+the MUON code:
+<pre>
+if ( ! AliMpCDB::LoadDDLStore() ) {
+  AliFatal("Could not access mapping from OCDB !");
+}
+</pre>
+In the same way, you can load AliMpManuStore, when manu serial 
+numbers are needed:
+<pre>
+if ( ! AliMpCDB::LoadManuStore() ) {
+  AliFatal("Could not access run-dependent mapping from OCDB !");
+}
+</pre>
+In the interactive Root session, in case the CDB manager state is 
+not defined, you can load mapping from the local OCDB files in this 
+way:
+<pre>
+root [0] AliMpCDB::LoadDDLStore2();
+root [2] AliMpCDB::LoadManuStore2();
+</pre>
+
 \section mapping_s1  Graphical User Interface
   
 To use the GUI to plot DE segmentation run:
 
-<pre>
+<pre> 
+AliMpCDB::LoadDDLStore2();
+AliMpCDB::LoadManuStore2();
 new AliMpDEVisu();
 </pre>
 
 or
 
 <pre>
+AliMpCDB::LoadDDLStore2();
+AliMpCDB::LoadManuStore2();
 new AliMpDEVisu(w, h);
 </pre>
 
@@ -53,7 +105,10 @@ of the mapping classes. To run these macros:
 </pre>
                    
 
-\section mapping_s3  Data files format
+\section mapping_s3  Data files in mapping/data
+
+The directory data in $ALICE_ROOT/MUON/mapping contains files
+with data which are not supposed to be changed in a long period.
 
 \subsection mapping_s3_sub1  zones.dat
 
@@ -214,7 +269,40 @@ The DDL id is needed for the rawdata generation only.
 To generate this file, the macro MUONGenerateBusPatch.C could be used.
 
 
-\subsection mapping_s3_sub8  crate.dat
+\subsection mapping_s3_sub8  BusPatchSpecial.dat
+
+Lines starting with # are comments.
+
+Contains the list of bus patches which manu readout is
+not in the standard order. The format:
+
+<pre>
+KEYWORD  DDLs  BusPatches [ManuIDs}
+         where KEYWORD = REVERT or EXPLICIT
+</pre>
+
+- For the bus patches following the REVERT keyword,
+  the manus are just reordered in a reverted order.
+- For the bus patches following the EXPLICIT keyword,
+the manus filled with a standard procedure (using the DetElemIdToBusPatch.dat
+file) are replaced with the list of manus in this file.
+
+
+\subsection mapping_s3_sub9  BusPatchLength.dat
+
+Lines starting with # are comments.
+
+Contains the list of bus patches and their cable length in meters
+
+<pre>
+# DDL 0
+  1  3
+  2  3
+...
+</pre>
+
+
+\subsection mapping_s3_sub10  crate.dat
   
 Muon trigger electronics configuration file (decoded in class 
 AliMUONTriggerCrateStore) directly copy/paste from the ALICE PRR 
@@ -223,7 +311,46 @@ crate name it belongs to, slot number, and internal switches
 (used in the algorithm).
 
 
-\section mapping_s4  Units used
+\subsection mapping_s3_sub11  ManuSerialToBin.dat
+
+Lines starting with # are comments.
+
+Contains the manu serial number with their associated bin number, injection and calibration gain.
+
+To compare the bin number with the serial in the CDB database you can run the macro:
+
+<pre> 
+AliMpCDB::LoadDDLStore2();
+.L $ALICE_ROOT/MUON/mapping/macros/MUONCheckManu.C+
+MUONCheckManu(10, kFALSE);
+</pre>
+
+The function has two parameters, the first is the number of the chamber (zero mean all chambers).
+The macro can create a set of histogramms with the different gain distributions stored into a root file 
+(second parameter).
+
+Two files a generated: one with the list of manu per detection element with their associated bin and gain 
+value, the other with the bad, strange or unidentified serial number.
+
+
+\section mapping_s4  Data files in mapping/data_run
+
+The directory data_run in $ALICE_ROOT/MUON/mapping contains files
+with data which are expected to change during experiment.
+At present time, there are only files with manu serial numbers:
+
+\subsection mapping_s4_sub1  deName_manu_dat.dat
+
+Contains the list of manuIds and their serial numbers.
+
+<pre> 
+# Id bp/nbp serial
+1 bp 4615
+2 bp 4616
+...
+</pre> 
+
+\section mapping_s5  Units used
  
 Lengths are in centimeters.