10#include <nlohmann/json.hpp>
11using json = nlohmann::json;
89void sweep(
const json & settings);
void convergence_test(const json &settings)
Perform a convergence test on the number of steps for the MCMC algorithm, by performing multiple runs...
std::vector< double > range_generator(const json &settings, std::string which)
If "which"_min, "which"_max and "which"_step parameter are present in settings, returns a vector of l...
void sweep(const json &settings)
Perform multiple runs for different values of the beta, H and GAMMA parameters, sweeping the range be...
void print_progress_bar(double progress)
Prints a progress bar on standard output.
json read_settings(std::string filename="settings.json")
Read settings for the simulation from json file, and returns them as a json dictionary-like object If...
void single_run(const json &settings)
Perform a single run for the given parameters in setting, printing a summary of the results on standa...
void launch_calculations(std::string settings_filename)
Call the read_settings function to read settings from file, and select which calculation to run.
std::vector< double > log_range_generator(const json &settings, std::string which)
If "which"_min, "which"_max and "which"_points_per_decade parameter are present in settings,...
void check_required_keys_presence(const json &settings, std::vector< std::string > list_of_keys)
Check that all keys in list_of_keys are present in settings, otherwise terminate the program with EXI...