Geant4 Cross Reference |
1 // 1 2 // ******************************************* 3 // * License and Disclaimer 4 // * 5 // * The Geant4 software is copyright of th 6 // * the Geant4 Collaboration. It is provided 7 // * conditions of the Geant4 Software License 8 // * LICENSE and available at http://cern.ch/ 9 // * include a list of copyright holders. 10 // * 11 // * Neither the authors of this software syst 12 // * institutes,nor the agencies providing fin 13 // * work make any representation or warran 14 // * regarding this software system or assum 15 // * use. Please see the license in the file 16 // * for the full disclaimer and the limitatio 17 // * 18 // * This code implementation is the result 19 // * technical work of the GEANT4 collaboratio 20 // * By using, copying, modifying or distri 21 // * any work based on the software) you ag 22 // * use in resulting scientific publicati 23 // * acceptance of all terms of the Geant4 Sof 24 // ******************************************* 25 // 26 /// \file electromagnetic/TestEm5/src/HistoMan 27 /// \brief Implementation of the HistoManager 28 // 29 // 30 //....oooOO0OOooo........oooOO0OOooo........oo 31 //....oooOO0OOooo........oooOO0OOooo........oo 32 33 #include "HistoManager.hh" 34 35 #include "G4UnitsTable.hh" 36 37 //....oooOO0OOooo........oooOO0OOooo........oo 38 39 HistoManager::HistoManager() 40 { 41 Book(); 42 } 43 44 //....oooOO0OOooo........oooOO0OOooo........oo 45 46 void HistoManager::Book() 47 { 48 // Create or get analysis manager 49 // The choice of analysis technology is done 50 // in HistoManager.hh 51 G4AnalysisManager* analysisManager = G4Analy 52 analysisManager->SetDefaultFileType("root"); 53 analysisManager->SetFileName(fFileName); 54 analysisManager->SetVerboseLevel(1); 55 analysisManager->SetActivation(true); // en 56 57 // Define histograms start values 58 const G4int kMaxHisto = 62; 59 const G4String id[] = { 60 "0", "1", "2", "3", "4", "5", "6", 61 "16", "17", "18", "19", "20", "21", "22", 62 "32", "33", "34", "35", "36", "37", "38", 63 "48", "49", "50", "51", "52", "53", "54", 64 65 const G4String title[] = { 66 "dummy", // 0 67 "energy deposit in absorber: dN/dE", // 1 68 "energy of charged secondaries at creation 69 "energy of neutral secondaries at creation 70 "energy of charged at creation (log scale) 71 "energy of neutral at creation (log scale) 72 "x_vertex of charged secondaries (all)", 73 "x_vertex of charged secondaries (not abso 74 "dummy", 75 "dummy", // 8-9 76 "(transmit, charged) : kinetic energy at e 77 "(transmit, charged) : ener fluence: dE(Me 78 "(transmit, charged) : space angle: dN/dOm 79 "(transmit, charged) : projected angle at 80 "(transmit, charged) : projected position 81 "(transmit, charged) : radius at exit", / 82 "dummy", // 16 83 "dummy", // 17 84 "dummy", // 18 85 "dummy", // 19 86 "(transmit, neutral) : kinetic energy at e 87 "(transmit, neutral) : ener fluence: dE(Me 88 "(transmit, neutral) : space angle: dN/dOm 89 "(transmit, neutral) : projected angle at 90 "dummy", 91 "dummy", 92 "dummy", 93 "dummy", 94 "dummy", 95 "dummy", // 24-29 96 "(reflect , charged) : kinetic energy at e 97 "(reflect , charged) : ener fluence: dE(Me 98 "(reflect , charged) : space angle: dN/dOm 99 "(reflect , charged) : projected angle at 100 "dummy", 101 "dummy", 102 "dummy", 103 "dummy", 104 "dummy", 105 "dummy", // 34-39 106 "(reflect , neutral) : kinetic energy at e 107 "(reflect , neutral) : ener fluence: dE(Me 108 "(reflect , neutral) : space angle: dN/dOm 109 "(reflect , neutral) : projected angle at 110 "dummy", // 44 111 "dummy", // 45 112 "dummy", // 46 113 "dummy", // 47 114 "dummy", // 48 115 "dummy", // 49 116 "energy of Auger e- at creation", // 50 117 "energy of fluorescence gamma at creation" 118 "energy of Auger e- at creation (log scale 119 "energy of fluorescence gamma at creation 120 "energy of PIXE Auger e- at creation", // 121 "energy of PIXE gamma at creation", // 55 122 "energy of PIXE Auger e- at creation (log 123 "energy of PIXE gamma at creation (log sca 124 "energy of DNA Auger e- at creation", // 125 "energy of DNA gamma at creation", // 59 126 "energy of DNA Auger e- at creation (log s 127 "energy of DNA gamma at creation (log scal 128 }; 129 130 // Default values (to be reset via /analysis 131 G4int nbins = 100; 132 G4double vmin = 0.; 133 G4double vmax = 100.; 134 135 // Create all histograms as inactivated 136 // as we have not yet set nbins, vmin, vmax 137 for (G4int k = 0; k < kMaxHisto; k++) { 138 G4int ih = analysisManager->CreateH1("h" + 139 analysisManager->SetH1Activation(ih, false 140 } 141 } 142