Class NLO
Defined in File case_generator.hpp
Inheritance Relationships
Base Type
public qb::vqee::VqeOpt
(Class VqeOpt)
Derived Type
public qb::vqee::NelderMeadNLO
(Class NelderMeadNLO)
Class Documentation
-
class NLO : public qb::vqee::VqeOpt
NLOpt library with common options for these algorithms:
Nelder-Mead
Subclassed by qb::vqee::NelderMeadNLO
Public Functions
-
inline NLO()
Default constructor - calls the base class and sets the provider name and algorithm name.
-
inline NLO(const std::string &in_algorithm)
Simple constructor.
-
inline NLO(const std::vector<double> &in_initial_parameters, const std::string &in_algorithm = "cobyla", const int in_maxeval = 1000, const double in_ftol = 1.0e-6, const YAML::Node &in_node = YAML::Load(""))
Constructor with defaults shown.
-
virtual std::shared_ptr<xacc::Optimizer> get() override
Getters.
-
inline virtual void show_info()
Private Members
-
std::set<std::string> integer_valued_fields_ = {}
Integer-valued fields.
-
std::set<std::string> string_valued_fields_ = {}
String-valued fields.
-
std::set<std::string> boolean_valued_fields_{"maximise", "maximize"}
Boolean-valued fields.
-
std::set<std::string> double_valued_fields_ = {"stopval"}
Double-valued fields.
-
std::set<std::string> vector_double_valued_fields_{"upperbounds", "lowerbounds"}
Vector of double fields.
-
std::map<std::string, std::string> all_valid_fields_yaml_xacc_{{"maximise", "maximize"}, {"maximize", "maximize"}, {"stopval", "nlopt-stopval"}, {"upperbounds", "nlopt-upper-bounds"}, {"lowerbounds", "nlopt-lower-bounds"}}
Union of all the above fields. Conversion of keys from YAML -> XACC.