21 auto Processor = std::make_unique<MCMCProcessor>(inputFile);
22 Processor->SetOutputSuffix(
"_MCMC_Diag");
24 Processor->SetExcludedTypes(
GetFromManager<std::vector<std::string>>(Settings[
"DiagMCMC"][
"ExcludedTypes"], {}));
25 Processor->SetExcludedNames(
GetFromManager<std::vector<std::string>>(Settings[
"DiagMCMC"][
"ExcludedNames"], {}));
26 Processor->SetExcludedGroups(
GetFromManager<std::vector<std::string>>(Settings[
"DiagMCMC"][
"ExcludedGroups"], {}));
27 Processor->SetPlotRelativeToPrior(GetFromManager<bool>(Settings[
"DiagMCMC"][
"PlotRelativeToPrior"],
false));
29 Processor->SetnBatches(GetFromManager<int>(Settings[
"DiagMCMC"][
"nBatches"], 20));
30 Processor->SetnLags(GetFromManager<int>(Settings[
"DiagMCMC"][
"nLags"], 25000));
31 Processor->SetPrintToPDF(GetFromManager<bool>(Settings[
"PrintToPDF"],
true));
32 Processor->Initialise();
33 if(Settings[
"MaxEntries"]) {
34 Processor->SetEntries(Get<int>(Settings[
"MaxEntries"], __FILE__, __LINE__));
37 Processor->DiagMCMC();
40 int main(
int argc,
char *argv[]) {
48 std::string filename = argv[1];
49 std::string
config = argv[2];
int main(int argc, char *argv[])
void DiagMCMC(const std::string &inputFile, const std::string &config)
Main function creating MCMCProcessor and calling MCMC Diagnostic.
void SetMaCh3LoggerFormat()
Set messaging format of the logger.
Type GetFromManager(const YAML::Node &node, const Type defval, const std::string File="", const int Line=1)
Get content of config file if node is not found take default value specified.
#define M3OpenConfig(filename)
Macro to simplify calling LoadYaml with file and line info.
Custom exception class used throughout MaCh3.