void Hard_Decay_Handler::ReadDecayTable(Flavour decayer) { DEBUG_FUNC(decayer); if (!m_store_results) return; Data_Reader reader = Data_Reader("|",";","!"); reader.SetAddCommandLine(false); reader.AddComment("#"); reader.AddComment("//"); reader.AddWordSeparator("\t"); reader.SetInputPath(m_resultdir); reader.SetInputFile(decayer.ShellName()); vector<vector<string> > file; if(reader.MatrixFromFile(file)) { for (size_t iline=0; iline<file.size(); ++iline) { if (file[iline].size()==4) { string decaychannel=file[iline][0]; vector<double> results(3); for (size_t i=0; i<3; ++i) results[i]=ToType<double>(file[iline][i+1]); m_read[decayer].insert(make_pair(decaychannel, results)); } else { PRINT_INFO("Wrong format in decay table in "<<m_resultdir); } } } }
void InitialiseAnalysis() { #ifdef USING__ROOT msg_Out()<<"initialising ROOT analysis ..."<<std::endl; ATOOLS::MakeDir("PhotonAnalysisDirectory/SingleDecay/"+mother_flav.ShellName()+"_decays",true,493); rootfile = new TFile(string("PhotonAnalysisDirectory/SingleDecay/"+ mother_flav.ShellName()+"_decays/"+ mother_flav.ShellName()+"__"+ "DAUGHTERS"+".root").c_str(), "RECREATE"); photonmultiplicity = makeTH1D("photon_multiplicity","", 10, -0.5, 10.5, Flavour(kf_photon).RootName()+" multiplicity","Events"); decayframeenergy = makeTH1D("decayframeenergy","", 1000, 0., mother_flav.HadMass(), "total energy radiated in decay frame","Events"); multipoleframeangles = makeTH1D("multipoleframeangles","", 1000, 0., M_PI, "angular radiation pattern","Events"); #endif }