68 : fVerbose(0), fNEvt1(-1), fNEvt2(-2),
 
   69   fHistEMax (15.0*
MeV), fHistEMin (0.),fHistNBin(100),
 
   84 #ifdef G4ANALYSIS_USE_ROOT 
  105     "Total energy spectrum (MeV) of the traget and detector",
fHistNBin,
 
  108     "Coincidence spectrum (MeV) between the traget and detector",
fHistNBin,
 
  111     "Anti-coincidence spectrum (MeV) in the traget",
fHistNBin,
 
  114     "Anti-coincidence spectrum (MeV) in the detector",
fHistNBin,
 
  121                                            "double PID, Energy, Time, Weight" );
 
  122   fHisto->
AddTuple( 
"T2", 
"RadioIsotopes",
"double PID, Time, Weight" );
 
  123   fHisto->
AddTuple( 
"T3", 
"Energy Depositions",
"double Energy, Time, Weight" );
 
  125                     "double PID, Z, A, Energy, Time, Weight" );
 
  134    << 
"exrdmAnalysisManager: Histograms are booked and the run has been started" 
  138      pTable->
FindProcess(
"RadioactiveDecay", 
"GenericIon");
 
  139   if (rDecay != NULL) {
 
  141       std::vector<G4RadioactivityTable*> theTables =
 
  143       for (
size_t i = 0 ; i < theTables.size(); i++) {
 
  144           theTables[i]->GetTheMap()->clear();
 
  145           G4cout << 
" Clear the radioactivity map: 0, new size = " 
  146                  << theTables[i]->GetTheMap()->size() << 
G4endl;
 
  158   G4cout << 
"exrdmAnalysisManager: Histograms have been saved!" << 
G4endl;
 
  165     pTable->
FindProcess(
"RadioactiveDecay", 
"GenericIon");
 
  166   if (rDecay != NULL) {
 
  169       std::ofstream outfile (fileName, std::ios::out );
 
  170       std::vector<G4RadioactivityTable*> theTables =
 
  172       for (
size_t i = 0 ; i < theTables.size(); i++) {
 
  174             outfile << 
"Radioactivities in decay window no. " << i << 
G4endl;
 
  176               << 
"Z \tA \tE \tActivity (decays/window) \tError (decays/window) " 
  178             map<G4ThreeVector,G4TwoVector> *aMap = theTables[i]->GetTheMap();
 
  179             map<G4ThreeVector,G4TwoVector>::iterator iter;
 
  180             for(iter=aMap->begin(); iter != aMap->end(); iter++) {
 
  181               rate = iter->second.x()/nevent;
 
  182               error = std::sqrt(iter->second.y())/nevent;
 
  183               if ( rate < 0.) rate = 0.; 
 
  184               outfile << iter->first.x() <<
"\t"<< iter->first.y() <<
"\t" 
  185                       << iter->first.z() << 
"\t" << rate <<
"\t" << error 
 
  219     for (
size_t i = 1; i < 
fEdepo.size(); i++) {
 
  221         if ( 
fEdepo[i].GetEnergy() > 0. ) {
 
  222           TarE += 
fEdepo[i].GetEnergy();
 
  225           DetE -= 
fEdepo[i].GetEnergy();
 
  230         if (TarE || DetE) ComW = (TarW+DetW)/(TarE+DetE);
 
  231         if (TarE) TarW /= TarE;
 
  232         if (DetE) DetW /= DetE;
 
  245         TarE = 
fEdepo[i].GetEnergy();
 
  246         Time = 
fEdepo[i].GetTime();
 
  259     if (TarE || DetE) ComW = (TarW+DetW)/(TarE+DetE);
 
  260     if (TarE) TarW /= TarE;
 
  261     if (DetE) DetW /= DetE;
 
  283     G4cout << 
"exrdmAnalysisManager::AddEnergy: e(keV)= " << edep/
keV  
  284            << 
" weight = " << weight << 
" time (s) = " <<  time/
second 
  302     G4cout << 
"exrdmAnalysisManager::AddParticle: " << pid
 
  319     G4cout << 
"exrdmAnalysisManager::AddIsotope: " << pid
 
const G4String & GetFileName() const 
 
void AddEnergy(G4double, G4double, G4double)
 
void FillTuple(G4int, const G4String &, G4double)
 
Definition of the exrdmHisto class. 
 
void FillHisto(G4int, G4double, G4double)
 
void AddTuple(const G4String &, const G4String &, const G4String &)
 
G4bool IsAnalogueMonteCarlo()
 
static const double microsecond
 
G4GLOB_DLL std::ostream G4cout
 
Definition of the exrdmAnalysisManager class. 
 
std::vector< G4RadioactivityTable * > GetTheRadioactivityTables()
 
void AddDecayProduct(G4double pid, G4int Z, G4int A, G4double energy, G4double time, G4double weight)
 
static const double second
 
void AddParticle(G4double, G4double, G4double, G4double)
 
static const G4double A[nN]
 
std::vector< exrdmEnergyDeposition > fEdepo
 
static exrdmAnalysisManager * fManager
 
G4double energy(const ThreeVector &p, const G4double m)
 
static exrdmAnalysisManager * GetInstance()
 
static PROLOG_HANDLER error
 
static G4ProcessTable * GetProcessTable()
 
G4VProcess * FindProcess(const G4String &processName, const G4String &particleName) const 
 
void Add1D(const G4String &, const G4String &, G4int nb=100, G4double x1=0., G4double x2=1., G4double u=1.)
 
void AddIsotope(G4double, G4double, G4double)