14 TFile *f_in = TFile::Open(fileName.c_str());
16 throw cms::Exception(
"LHCOpticalFunctionsSet") <<
"Cannot open file " << fileName <<
".";
19 for (
unsigned int fi = 0; fi <
nFunctions; ++fi) {
54 throw cms::Exception(
"LHCOpticalFunctionsSet") <<
"Invalid tag for optical functions: \"" << fi <<
"\"";
56 std::string objPath = directoryName +
"/g_" + tag +
"_vs_xi";
57 auto gr_obj =
dynamic_cast<TGraph *
>(f_in->Get(objPath.c_str()));
60 <<
"Cannot load object " << objPath <<
" from file " << fileName <<
".";
65 const unsigned int num_xi_vals = graphs[0]->GetN();
70 for (
unsigned int fi = 0; fi <
nFunctions; ++fi)
73 for (
unsigned int pi = 0;
pi < num_xi_vals; ++
pi) {
74 const double xi = graphs[0]->GetX()[
pi];
77 for (
unsigned int fi = 0; fi <
m_fcn_values.size(); ++fi)
LHCOpticalFunctionsSet()=default
std::vector< double > m_xi_values
std::vector< std::vector< double > > m_fcn_values
length unit cm