diff --git a/CIValidations/MaCh3CLI b/CIValidations/MaCh3CLI index e041cd3..fd2a356 100755 --- a/CIValidations/MaCh3CLI +++ b/CIValidations/MaCh3CLI @@ -47,12 +47,12 @@ run_fitter_validations() { ${MaCh3Tutorial_ROOT}/CIValidations/FitterValidations ${MaCh3_ROOT}/bin/ProcessMCMC ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml MCMC_Test.root # Chain diagnostic - ${MaCh3_ROOT}/bin/DiagMCMC MCMC_Test.root ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml + ${MaCh3_ROOT}/bin/DiagMCMC ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml MCMC_Test.root ${MaCh3_ROOT}/bin/RHat 2 MCMC_Test.root MCMC_Test.root MCMC_Test.root MCMC_Test.root ${MaCh3_ROOT}/bin/RHat_HighMem 10 MCMC_Test.root MCMC_Test.root MCMC_Test.root MCMC_Test.root ${MaCh3_ROOT}/bin/PlotMCMCDiag MCMC_Test_MCMC_Diag.root "test_plot_1" MCMC_Test_MCMC_Diag.root "test_plot_2" ${MaCh3_ROOT}/bin/CombineMaCh3Chains -o MergedChain.root MCMC_Test.root MCMC_Test.root MCMC_Test.root MCMC_Test.root - ${MaCh3_ROOT}/bin/GetPenaltyTerm MCMC_Test.root ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml + ${MaCh3_ROOT}/bin/GetPenaltyTerm ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml MCMC_Test.root # Fancy plotting ${MaCh3_ROOT}/bin/MatrixPlotter ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml MCMC_Test_drawCorr.root ${MaCh3_ROOT}/bin/GetPostfitParamPlots MCMC_Test_drawCorr.root @@ -157,8 +157,8 @@ run_multicanoical_validations() { run_CLI_validations() { mach3 tutorial TutorialConfigs/FitterConfig.yaml --MCMCSteps 10000 mach3 process ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml Test.root --corr --MakeCredibleIntervals - mach3 diag Test.root ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml - mach3 penterm Test.root ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml + mach3 diagnostics mcmc ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml Test.root + mach3 penaltyterm ${MaCh3Tutorial_ROOT}/bin/TutorialDiagConfig.yaml Test.root } diff --git a/README.md b/README.md index 2c5dae5..b9e3622 100644 --- a/README.md +++ b/README.md @@ -658,7 +658,7 @@ The latter class deals with actual event reweighting and general heavy lifting. ## MCMC Diagnostic A crucial part of MCMC is diagnosing whether a chain has converged or not. You can produce chain diagnostics by running: ```bash -mach3 diag Test.root bin/TutorialDiagConfig.yaml +mach3 diagnostics mcmc bin/TutorialDiagConfig.yaml Test.root ``` This will produce a plethora of diagnostic information. One of most important of these are the autocorrelations for each of the parameters. Autocorrelation indicates how correlated MCMC steps are when they are n-steps apart in the chain. Generally speaking, we want the autocorrelation to drop to 0 fast and stay around there (like in the plot below). You can read about other diagnostics [here](https://mach3-software.github.io/MaCh3/MCMCconvergance.html), but it is sufficient for now to focus on autocorrelation.