17 using namespace genie;
26 if ( gSystem->Getenv(
"PHOTON_SF_DATA_PATH")==NULL ) basedir =
string(gSystem->Getenv(
"GENIE")) +
"/data/evgen/photon-sf";
27 else basedir = string(gSystem->Getenv(
"PHOTON_SF_DATA_PATH"));
28 LOG(
"PhotonStrucFunc",
pWARN) <<
"Base diretory: " << basedir;
33 for (
int k=0; k<2; k++) {
34 for(
int j=0; j<6; j++) {
35 string SFname = basedir +
"/PhotonSF_hitnuc"+std::to_string(nucs[k])+
"_hitlep"+std::to_string(pdgs[j])+
".dat";
36 if ( gSystem->AccessPathName( SFname.c_str(), kReadPermission ) ) {
37 LOG(
"PhotonStrucFunc",
pFATAL) <<
"File doesnt exist or you dont have read permission.";
38 LOG(
"PhotonStrucFunc",
pFATAL) <<
"Remember!!!";
39 LOG(
"PhotonStrucFunc",
pFATAL) <<
"Path to base directory is defined with the enviroment variable PHOTON_SF_DATA_PATH.";
40 LOG(
"PhotonStrucFunc",
pFATAL) <<
"If not defined, default location is $GENIE/data/evgen/photon-sf";
41 LOG(
"PhotonStrucFunc",
pFATAL) <<
"Photon SF tables must be computed with gmkglressf.";
45 fSFTables[nucs[k]].Table[pdgs[j]]->LoadFromAsciiFile(SFname);
61 LOG(
"PhotonStrucFunc",
pINFO) <<
"Late initialization";
map< int, PhotonStrucFuncTable > fSFTables
A numeric analysis tool class for interpolating 1-D functions.
Structure function using photon PDFs of nucleons.
void DummyMethodAndSilentCompiler()
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
static PhotonStrucFunc * Instance(void)
static PhotonStrucFunc * fgInstance
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...