Document generated by Hector Alvarez Pol @ USC (hector.alvarez@usc.es), 24/08/2010 Last update by Hector Alvarez Pol @ USC (hector.alvarez@usc.es), 10/01/2014 A short comment by Jose Sanchez del Rio Saez @ IEM (jose.sanchez@csic.es) to use the phoswich LaBr3-LaCl3 endcap, 26/10/2012 ---------------------------------------------------------------------------------- THE FOLLOWING TEXT IS ONLY VALID FOR SVN VERSIONS ABOVE r23433 A new style for the geometry construction: - geometries are precreated in a set of root files (stored in directory /r3broot/geometry). The naming scheme should match: califa_geoTag.geo.root where: // geoTag - Short description // 0_v5.0 - OLD CALIFA 5.0, including BARREL and ENDCAP: // 1_v7.05 - CALIFA 7.05, only BARREL // 2_v7.07 - CALIFA 7.07, only BARREL // 3_v7.09 - CALIFA 7.09, only BARREL (BP: benjamin.pietras@usc.es) // 4_v7.17 - CALIFA 7.17, only ENDCAP (in CsI[Tl]) // 5_v7.07_7.17 - CALIFA 7.07+7.17 CsI // 6_v7.09_7.17 - CALIFA 7.09+7.17 CsI // 7_v7.17PW - CALIFA 717PHOSWICH, only phoswich ENDCAP (JSDR: josesrs@gmail.com) // 8_v7.07_v7.17PW - CALIFA 7.07+7.17PHOSWICH // 9_v7.09_v7.17PW - CALIFA 7.09+7.17PHOSWICH // 10_v8.11 - CALIFA 8.11, only BARREL // 11_v8.11_v7.17PW - PHOSWICH ENDCAP ADAPTED TO CALIFA BARREL 8.11 // 12_ - CALIFA 8.11 + 7.17 - CsI (ongoing work) // 13_ - CALIFA 8.13d, only BARREL (ongoing work) // 14_ - (ongoing work) NOTE: most of these (old) geometries are not relevant for any user and has not been re-generated. Users should simply add the geometry file to the user macros, as it is shown in the example /r3broot/macros/r3b/r3bsim.C. - (for advanced CALIFA Users and developers) To create new geometry root files use the macros /r3broot/macros/r3b/geo/create_califa_geoTag_geo.C where geoTag has one of the values previously described. Macro /r3broot/macros/r3b/geo/create_califa_10_v8.11_geo.C can be used as example. NEXT IS OLD!!!!!!!!!!!!! ---------------------------------------------------------------------------------- THE FOLLOWING TEXT IS ONLY VALID FOR SVN VERSIONS ABOVE r11649 ---------------------------- HOW TO RUN CALIFA (short version) 1 - select a geometry, run the corresponding perl script with your favorite parameters. 2 - link or copy the output file of the perl script to a cal/perlScripts/CALIFA.geo file 3 - recompile the cal code 4 - run your macros, selecting the proper geometry version in the R3BCalo and R3BCaloHitFinder objects (function SelectGeometryVersion()) ---------------------------- How to run different CALIFA geometry versions (in three steps, longer version): 1- Select the geometry version from the existing models. There are many geometry versions available: 0- CALIFA 5.0, including BARREL and ENDCAP. 1- CALIFA 7.05, only BARREL 2- CALIFA 7.07, only BARREL 3- CALIFA 7.09, only BARREL (ongoing work) 4- CALIFA 7.17, only ENDCAP (in CsI[Tl]). For LaBr3-Lacl3 phoswich endcap, use CLF717_Geometry_PhoswichEndcap.geo. 5- CALIFA 7.07+7.17, 6- CALIFA 7.09+7.17, (ongoing work) 10- CALIFA 8.00, (ongoing work) ... or alternatively create your own script for a user-defined geometry (quite complex). 2- There are many possibilities for introducing a CALIFA geometry: 0) OLD CALIFA 5.0: the code is included in R3BCalo.cxx. NOTE: THERE IS NO WARRANTY THAT THIS VERSION WORKS CORRECTLY IN R3BROOT - Select the geometry 0 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(0); (see, for instance macros/r3b/califa/r3ball.C) 1) CALIFA 7.05 (ONLY BARREL): - Run the perl script cal/perlScripts/createGeometryCLF705.pl - Select the geometry 1 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(1); (see, for instance macros/r3b/califa/r3ball.C) 2) CALIFA 7.07 (ONLY BARREL): - Run the perl script cal/perlScripts/createGeometryCLF707.pl - Select the geometry 2 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(2); 3) [ONGOING WORK]CALIFA 7.09 (ONLY BARREL): - Run the perl script cal/perlScripts/createGeometryCLF709.pl - Select the geometry 3 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(3); 4) CALIFA 7.17 (ONLY ENDCAP): - Run the perl script cal/perlScripts/createGeometryCLF717.pl - Select the geometry 4 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(4); 4.1 CALIFA 7.17 (ONLY LaBr3+LaCl3 PHOSWICH ENDCAP) - Write the Geometry File:CLF717_Geometry_PhoswichEndcap.geo in R3BCalo.cxx (include "perlScripts/CLF717_Geometry_PhoswichEndcap.geo") - Select the geometry 4 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(4); 5) CALIFA 7.07+7.17: - Run the perl script cal/perlScripts/createGeometryCLF707717.pl - Select the geometry 5 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(5); 6) [ONGOING WORK]CALIFA 7.09+7.17: - Run the perl script cal/perlScripts/createGeometryCLF709717.pl - Select the geometry 6 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(6); 10) [ONGOING WORK]CALIFA 8.00: - Run the perl script cal/perlScripts/createGeometryCLF800.pl - Select the geometry 10 in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 for CALIFA V5 (old) // 1 for CALIFA V7.05 ... // see full list in perlscripts/README ((R3BCalo *)calo)->SelectGeometryVersion(10); 3- The code is generated externally by a perl script cal/perlScripts/createGeometryCLF###.pl where ### is the CALIFA geometry version. The output of the macro (CLF###_Geometry.geo) must be renamed (or simbolically linked) to CALIFA.geo, which is included in the R3BCalo.cxx code. If the user modifies anything (like wrapping thicknes, …), the code in the directory cal should be recompiled. 4- Remember to compile the code after any geometrical modification! Further comments about each geometrical version are available in each perl script. // 0 - OLD CALIFA 5.0, including BARREL and ENDCAP: // NOTE: THERE IS NO WARRANTY THAT THIS VERSION WORKS CORRECTLY IN R3BROOT // Contains 30 different crystal types, repeated 64 times (64 copies) // // 1- CALIFA 7.05, only BARREL // Each ring is made of 40 alveoli of 4 crystals each. There are 24 alveoli along the polar angle // for a total of 40x24=960 alveoli or 3840 crystals. There are 12 different crystal shapes: // @alveoliType=(1,1,2,2,2,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,6,6,6); // // Volumes: Alveolus_[1,24] made of CrystalWithWrapping_[1,6][A,B] made of Crystal_[1,6][A,B] // // 2- CALIFA 7.07, only BARREL // Each ring is made of 32 alveoli of 4 crystals each. There are 20 alveoli along the polar angle // for a total of 32x20=640 alveoli or 2560 crystals. There are 16 different crystal shapes: // @alveoliType=(1,1,2,2,2,3,3,4,4,4,5,5,6,6,6,7,7,7,8,8); // // Volumes: Alveolus_[1,20] made of CrystalWithWrapping_[1,8][A,B] made of Crystal_[1,8][A,B] // // 3- CALIFA 7.09, only BARREL (ongoing work) // // // 4- CALIFA 7.17, only ENDCAP (in CsI[Tl]) // Each ring is made of 32 alveoli of 8, 8 and 7 crystals each. There are 3 alveoli along the polar angle // for a total of 32x3=96 alveoli or 736 crystals. There are 23 different crystal shapes: // @alveoliType=(8,8,7); // // Volumes: Alveolus_EC_[1,3] made of CrystalWithWrapping_[1,23] made of Crystal_[1,23] // // 4.1 CALIFA 7.17, (CLF717_Geometry_PhoswichEndcap) only ENDCAP (phoswich endcap (LaBr3 - LaCl3)). Version 1. // The first 10 rings are made of 60 alveoli and the last 5 ones of 30, each of one with 2 crystals (LaBr3, LaCl3). There are 15 alveoli along the polar angle for a //total of 10x60x2 + 5x30x2= 750x2 =1500 crystals. There are 15x2 different crystals shapes. @alveoliType=(2,2,2,2,2,2,2,2,2,2,2,2,2,2,2); // // // 5- CALIFA 7.07+7.17 // See above the two components // // 6- CALIFA 7.09+7.17, (ongoing work) // See above the two components // // 10- CALIFA 8.00, (ongoing work) ================================================================================== THE FOLLOWING TEXT IS ONLY VALID FOR SVN VERSIONS BELOW r11149 (???) How to run different CALIFA geometry versions: 1- Select the geometry version from the existing models. There are three geometry versions available: - CALIFA 5.0, including BARREL and ENDCAP. - CALIFA 7.05, only BARREL - CALIFA 7.07, only BARREL or alternatively create your own script for a user-defined geometry (quite complex, see below). 2- For each geometry, the procedure is different: CALIFA 5.0: the code is included in R3BCalo.cxx. So, simply select the geometry in the simulation/analysis macro: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 CALIFA V5 (old), 1 CALIFA V7.05, 2 USER DEFINED ((R3BCalo *)calo)->SelectGeometryVersion(0); (see, for instance macros/r3b/califa/r3ball.C) CALIFA 7.05: it is also included as an option in R3BCalo.cxx, but the code is generated externally by the perl script cal/perlScripts/createGeometryCLF705.pl The output of the macro (CLF705_Geometry.geo) is included in the R3BCalo.cxx code, but if the user modifies anything (like wrapping thicknes, …), the code in the directory cal should be recompiled. In the simulation/analysis macro, you should select: R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 CALIFA V5 (old), 1 CALIFA V7.05, 2 USER DEFINED ((R3BCalo *)calo)->SelectGeometryVersion(1); CALIFA 7.07: it is NOT included as a separate option in R3BCalo.cxx, but has to be included as an user-defined version. The code is generated externally by the perl script cal/perlScripts/createGeometryCLF707.pl The output of the macro (CLF707_Geometry.geo) must be renamed to UserDefinedGeometry.geo, which is included in the R3BCalo.cxx code. If the user modifies anything (like wrapping thicknes, …), the code in the directory cal should be recompiled. R3BDetector* calo = new R3BCalo("Califa", kTRUE); //Selecting the geometry // 0 CALIFA V5 (old), 1 CALIFA V7.05, 2 USER DEFINED ((R3BCalo *)calo)->SelectGeometryVersion(2); 3- Remember to compile the code after any geometrical modification!