Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
BrachyAnalysisManager Class Reference

#include <BrachyAnalysisManager.hh>

Public Member Functions

 BrachyAnalysisManager ()
 
 ~BrachyAnalysisManager ()
 
void book ()
 
void FillNtupleWithEnergyDeposition (G4double, G4double, G4double, G4double)
 
void FillPrimaryParticleHistogram (G4double)
 
void save ()
 

Detailed Description

Definition at line 48 of file BrachyAnalysisManager.hh.

Constructor & Destructor Documentation

BrachyAnalysisManager::BrachyAnalysisManager ( )

Definition at line 38 of file BrachyAnalysisManager.cc.

References MaxHisto, and MaxNtCol.

39 {
40 
41 factoryOn = false;
42 
43 // Initialization
44 // histograms
45 for (G4int k=0; k<MaxHisto; k++) fHistId[k] = 0;
46 
47 // Initialization ntuple
48  for (G4int k=0; k<MaxNtCol; k++) {
49  fNtColId[k] = 0;
50  }
51 
52 primaryParticleSpectrum = 0;
53 
54 }
int G4int
Definition: G4Types.hh:78
const G4int MaxNtCol
BrachyAnalysisManager::~BrachyAnalysisManager ( )

Definition at line 56 of file BrachyAnalysisManager.cc.

57 {
58 }

Member Function Documentation

void BrachyAnalysisManager::book ( )

Definition at line 60 of file BrachyAnalysisManager.cc.

References G4VAnalysisManager::CreateNtupleDColumn(), G4VAnalysisManager::FinishNtuple(), G4cout, G4endl, G4VAnalysisManager::OpenFile(), G4VAnalysisManager::SetFirstHistoId(), G4VAnalysisManager::SetHistoDirectoryName(), G4VAnalysisManager::SetNtupleDirectoryName(), and G4VAnalysisManager::SetVerboseLevel().

61 {
62  G4AnalysisManager* AnalysisManager = G4AnalysisManager::Instance();
63 
64  AnalysisManager->SetVerboseLevel(2);
65 
66  // Create a root file
67  G4String fileName = "brachytherapy.root";
68 
69  // Create directories
70  AnalysisManager->SetHistoDirectoryName("brachy_histo");
71  AnalysisManager->SetNtupleDirectoryName("brachy_ntuple");
72 
73 
74  G4bool fileOpen = AnalysisManager->OpenFile(fileName);
75  if (!fileOpen) {
76  G4cout << "\n---> HistoManager::book(): cannot open "
77  << fileName[1]
78  << G4endl;
79  return;
80  }
81 
82 //creating a 1D histograms
83  AnalysisManager->SetFirstHistoId(1);
84 
85  // Histogram containing the primary particle energy (MeV)
86  fHistId[1] = AnalysisManager -> CreateH1("1",
87  "Initial energy",
88  1000, 0., 1000.);
89 
90  //Parameters of CreateH1: histoID, histo name, bins' number, xmin, xmax
91 
92  primaryParticleSpectrum = AnalysisManager-> GetH1(fHistId[1]);
93 
94  //creating a ntuple, containg 3D energy deposition in the phantom
95  AnalysisManager -> CreateNtuple("1", "3Dedep");
96  fNtColId[0] = AnalysisManager->CreateNtupleDColumn("xx");
97  fNtColId[1] = AnalysisManager->CreateNtupleDColumn("yy");
98  fNtColId[2] = AnalysisManager->CreateNtupleDColumn("zz");
99  fNtColId[3] = AnalysisManager->CreateNtupleDColumn("edep");
100  AnalysisManager->FinishNtuple();
101 
102  factoryOn = true;
103 }
G4bool SetHistoDirectoryName(const G4String &dirName)
G4bool SetFirstHistoId(G4int firstId)
void SetVerboseLevel(G4int verboseLevel)
G4bool SetNtupleDirectoryName(const G4String &dirName)
G4GLOB_DLL std::ostream G4cout
bool G4bool
Definition: G4Types.hh:79
#define G4endl
Definition: G4ios.hh:61
G4int CreateNtupleDColumn(const G4String &name)
void BrachyAnalysisManager::FillNtupleWithEnergyDeposition ( G4double  xx,
G4double  yy,
G4double  zz,
G4double  energyDep 
)

Definition at line 111 of file BrachyAnalysisManager.cc.

References G4VAnalysisManager::AddNtupleRow(), and G4VAnalysisManager::FillNtupleDColumn().

115 {
116  G4AnalysisManager* AnalysisManager = G4AnalysisManager::Instance();
117  AnalysisManager->FillNtupleDColumn(fNtColId[0], xx);
118  AnalysisManager->FillNtupleDColumn(fNtColId[1], yy);
119  AnalysisManager->FillNtupleDColumn(fNtColId[2], zz);
120  AnalysisManager->FillNtupleDColumn(fNtColId[3], energyDep);
121  AnalysisManager->AddNtupleRow();
122 }
G4bool FillNtupleDColumn(G4int id, G4double value)
void BrachyAnalysisManager::FillPrimaryParticleHistogram ( G4double  primaryParticleEnergy)

Definition at line 105 of file BrachyAnalysisManager.cc.

106 {
107  // 1DHistogram: energy spectrum of primary particles
108  primaryParticleSpectrum -> fill(primaryParticleEnergy);
109 }
void BrachyAnalysisManager::save ( )

Definition at line 124 of file BrachyAnalysisManager.cc.

References G4VAnalysisManager::CloseFile(), and G4VAnalysisManager::Write().

125 {
126  if (factoryOn)
127  {
128  G4AnalysisManager* AnalysisManager = G4AnalysisManager::Instance();
129  AnalysisManager->Write();
130  AnalysisManager->CloseFile();
131 
132  delete G4AnalysisManager::Instance();
133  factoryOn = false;
134  }
135 }

The documentation for this class was generated from the following files: