32 for(
auto const& itr : parNames){
41 fixed = param.
get<
bool >(
"Fixed", true );
42 val = param.
get<
double >(
"Value", 0. );
43 nuisance = param.
get<
bool >(
"Nuisance", false );
44 sigma = param.
get<
float >(
"Sigma", 1.e6 );
45 centralVal = param.
get<
float >(
"CentralValue", 0. );
46 variance = param.
get<
float >(
"Variance", 1.e-5 );
47 constraint = param.
get<
bool >(
"Constraint", false );
48 lowerBound = param.
get<
float >(
"LoVal", 0. );
49 upperBound = param.
get<
float >(
"HiVal", 1.e6 );
52 if(parstr.find(
"Wgt") != std::string::npos) parstr.erase(parstr.find(
"Wgt"), 3);
68 <<
"inserting parameter " 100 for(
auto const& itr : parNames){
109 fixed = param.
get<
bool >(
"Fixed", true );
110 val = param.
get<
double >(
"Value", 0. );
111 nuisance = param.
get<
bool >(
"Nuisance", false );
112 sigma = param.
get<
float >(
"Sigma", 1.e6 );
113 centralVal = param.
get<
float >(
"CentralValue", 0. );
114 variance = param.
get<
float >(
"Variance", 1.e-5 );
115 constraint = param.
get<
bool >(
"Constraint", false );
116 lowerBound = param.
get<
float >(
"LoVal", 0. );
117 upperBound = param.
get<
float >(
"HiVal", 1.e6 );
120 if(parstr.find(
"Wgt") != std::string::npos) parstr.erase(parstr.find(
"Wgt"), 3);
136 <<
"inserting parameter " 137 << loc.find(parstr)->second.Name()
139 << loc.find(parstr)->second.Value()
153 if(gParUtil ==
nullptr)
169 std::vector<std::string> psetNames({
"OscillationParameters",
170 "SystematicParameters"});
172 for(
auto const& nameItr : psetNames){
173 if(nameItr.find(
"Systematic") != std::string::npos){
176 else if(nameItr.find(
"Oscillation") != std::string::npos){
191 <<
"\n-------------------------------------------------------" 192 <<
"\nPARAMETER SUMMARY" 193 <<
"\n-------------------------------------------------------" 194 <<
"\n\nRunning with systematic parameters set to \n";
202 << itr.second.Value()
205 << itr.second.IsFixed();
209 <<
"\nRunning with oscillation parameters set to \n";
217 << itr.second.Value()
223 << itr.second.IsFixed();
234 <<
"oscillation parameter " 236 <<
" is not in the list";
249 <<
"systematic parameter " 251 <<
" is not in the list";
269 <<
"ParameterUtility does not know about parameter " 296 parItr.second.Value(),
297 parItr.second.IsFixed(),
298 parItr.second.Sigma(),
299 parItr.second.CentralValue(),
300 parItr.second.Variance(),
301 parItr.second.IsNuisance(),
302 parItr.second.IsConstrained(),
303 parItr.second.LowerBound(),
304 parItr.second.UpperBound()));
307 return std::move(loc);
313 std::vector<std::string> parNames;
314 for(
auto const& parItr :
fSysParameters) parNames.emplace_back(parItr.first);
316 return std::move(parNames);
322 std::vector<uint8_t> parKeys;
323 for(
auto const& parItr :
fSysParameters) parKeys.emplace_back(parItr.second.Key());
325 return std::move(parKeys);
#define LOG_DEBUG(stream)
cmf::Parameter const & ParameterInfo(std::string const &parName)
void Initialize(fhicl::ParameterSet const &pset)
enum cmf::det_type DetType_t
::xsd::cxx::tree::exception< char > exception
cmf::ParameterSpaceLoc fSysParameters
values for the systematic parameters, same in both detectors
std::vector< std::string > SysParNames() const
static ParameterUtility * Instance()
cmf::ParameterSpaceLoc fNDOscParameters
values for the oscillation parameters in ND
cmf::Parameter const & OscParameterInfo(std::string const &parName, cmf::DetType_t const &det) const
cmf::ParameterSpaceLoc fFDOscParameters
values for the oscillation parameters in FD
bool UseSysPar(std::string const &parName)
T get(std::string const &key) const
static cmf::DetType_t StringToDetectorType(std::string const &str)
void InsertParameter(cmf::Parameter const &par)
static ParameterUtility * gParUtil
std::vector< std::string > get_names() const
std::vector< uint8_t > SysParKeys() const
Module to combine a set of results into a single file currently only does one data product type at a ...
void ParameterSetToLocation(fhicl::ParameterSet const &pset, cmf::DetType_t const &det, cmf::Location &loc)
std::string to_indented_string() const
cmf::Location ParametersAsLocation()
std::map< std::string, Parameter > ParameterSpaceLoc
#define LOG_VERBATIM(category)
double variance(Eigen::VectorXd x)
cmf::Parameter const & SysParameterInfo(std::string const &parName) const