/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/common/eom_config.hh Source File#

DiFfRG: /home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/common/eom_config.hh Source File
DiFfRG
Discretization Framework for functional Renormalization Group flows
eom_config.hh
Go to the documentation of this file.
1#pragma once
2
4
5#include <string>
6
8{
10 struct EoMConfig {
11 inline static constexpr double default_abs_tol = 1e-12;
12 inline static constexpr unsigned int default_max_iter = 100;
13 inline static constexpr double default_smoothing_length = -1.;
14 inline static constexpr double default_bound_tolerance = 1e-12;
15 inline static constexpr double default_armijo_coefficient = 1e-4;
16 inline static constexpr unsigned int default_max_backtracks = 20;
17 inline static constexpr unsigned int default_raw_potential_order = 2;
18 inline static constexpr bool default_raw_potential_recover_mass_hessian = false;
19 inline static constexpr double default_raw_potential_mass_hessian_jump_threshold = -1.;
20
21 EoMConfig() = default;
22 EoMConfig(double abs_tol, unsigned int max_iter, double smoothing_length,
25 explicit EoMConfig(const ConfigTree &config);
26
27 static std::string get_defaults();
28 void validate() const;
29
31 unsigned int max_iter = default_max_iter;
39 };
40} // namespace DiFfRG::Config
A hierarchical configuration tree, readable from JSON and TOML files.
Definition config_tree.hh:32
Definition eom_config.hh:8
@ config
/discretization/threads.
Definition eom_config.hh:10
unsigned int raw_potential_order
Definition eom_config.hh:36
double bound_tolerance
Definition eom_config.hh:33
static constexpr double default_armijo_coefficient
Definition eom_config.hh:15
double abs_tol
Definition eom_config.hh:30
static constexpr double default_bound_tolerance
Definition eom_config.hh:14
static constexpr unsigned int default_raw_potential_order
Definition eom_config.hh:17
static constexpr unsigned int default_max_iter
Definition eom_config.hh:12
unsigned int max_backtracks
Definition eom_config.hh:35
double armijo_coefficient
Definition eom_config.hh:34
static constexpr double default_smoothing_length
Definition eom_config.hh:13
static constexpr double default_abs_tol
Definition eom_config.hh:11
double raw_potential_mass_hessian_jump_threshold
Definition eom_config.hh:38
EoMConfig(const ConfigTree &config)
static constexpr bool default_raw_potential_recover_mass_hessian
Definition eom_config.hh:18
bool raw_potential_recover_mass_hessian
Definition eom_config.hh:37
static constexpr unsigned int default_max_backtracks
Definition eom_config.hh:16
static constexpr double default_raw_potential_mass_hessian_jump_threshold
Definition eom_config.hh:19
unsigned int max_iter
Definition eom_config.hh:31
double smoothing_length
Definition eom_config.hh:32
static std::string get_defaults()
EoMConfig(double abs_tol, unsigned int max_iter, double smoothing_length, double bound_tolerance=default_bound_tolerance, double armijo_coefficient=default_armijo_coefficient, unsigned int max_backtracks=default_max_backtracks)