26 #include "Framework/Conventions/GBuild.h"
35 using namespace genie;
44 #ifdef __GENIE_DARK_NEUTRINO_ENABLED__
45 LOG(
"PDG",
pINFO) <<
"Loading Dark sector Info";
47 LOG(
"PDG",
pFATAL) <<
"Could not load Dark Neutrino data";
50 #endif // __GENIE_DARK_NEUTRINO_ENABLED__
52 #ifdef __GENIE_HEAVY_NEUTRAL_LEPTON_ENABLED__
53 LOG(
"PDG",
pINFO) <<
"Loading Heavy Neutral Lepton data";
55 LOG(
"PDG",
pFATAL) <<
"Could not load Heavy Neutral Lepton data";
58 #endif // #ifdef __GENIE_HEAVY_NEUTRAL_LEPTON_ENABLED__
71 LOG(
"PDG",
pINFO) <<
"PDGLibrary late initialization";
93 LOG(
"PDG",
pERROR) <<
"Requested missing particle with PDG: " << pdgc ;
105 const char* altpdgtable = gSystem->Getenv(
"GENIE_PDG_TABLE");
107 if ( ! (gSystem->AccessPathName(altpdgtable) ) ) {
108 LOG(
"PDG",
pINFO) <<
"Load PDG data from $GENIE_PDG_TABLE: "
115 if ( gSystem->Getenv(
"GENIE") ) {
116 string base_dir = string( gSystem->Getenv(
"GENIE") );
117 base_dir += string(
"/data/evgen/catalogues/pdg/") ;
119 string file_name =
"genie_pdg_table.txt" ;
122 file_name = reg ->
GetString(
"PDG-TableName") ;
123 LOG(
"PDG",
pINFO) <<
"Found file name specification: " << file_name ;
127 string path = base_dir + file_name ;
129 if ( ! (gSystem->AccessPathName(path.c_str()) ) ) {
130 LOG(
"PDG",
pINFO) <<
"Load PDG data from: " << path;
138 if(gSystem->Getenv(
"ROOTSYS")) {
139 string base_dir = string( gSystem->Getenv(
"ROOTSYS") );
140 string path = base_dir + string(
"/etc/pdg_table.txt");
142 if ( !(gSystem->AccessPathName(path.c_str())) ) {
143 LOG(
"PDG",
pINFO) <<
"Load PDG data from: " << path;
149 LOG(
"PDG",
pERROR) <<
" *** The PDG extensions will not be loaded!! ***";
157 double med_mass = mass*med_ratio;
165 assert(dm_particle->Mass() == mass);
172 assert(med_particle->Mass() == med_mass);
181 LOG(
"PDG",
pERROR) <<
"Cannot find HNL ParameterSpace param_set";
199 LOG(
"PDG",
pERROR) <<
"The Dark Sector masses not available.";
210 if (!anti_dnu_particle) {
void AddDarkMatter(double mass, double med_ratio)
TDatabasePDG * DBase(void)
RgDbl GetDouble(RgKey key) const
TDatabasePDG * fDatabasePDG
const int kPdgAntiDarkNeutrino
Registry * CommonList(const string &file_id, const string &set_name) const
static PDGLibrary * fInstance
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
static PDGLibrary * Instance(void)
const int kPdgDNuMediator
string GetString(xmlDocPtr xml_doc, string node_path)
Singleton class to load & serve a TDatabasePDG.
A registry. Provides the container for algorithm configuration parameters.
TParticlePDG * Find(int pdgc, bool must_exist=true)
const int kPdgDarkNeutrino
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...
void DummyMethodAndSilentCompiler()
static AlgConfigPool * Instance()