numerical-collection-cpp 0.10.0
A collection of algorithms in numerical analysis implemented in C++
Loading...
Searching...
No Matches
num_collect::opt::concepts::line_searcher Concept Reference

Concept of objects to perform line search in optimization. More...

#include <num_collect/opt/concepts/line_searcher.h>

Concept definition

template<typename T>
typename T::objective_function_type;
typename T::objective_function_type>;
typename T::variable_type;
requires std::is_same_v<typename T::variable_type,
typename T::objective_function_type::variable_type>;
typename T::value_type;
requires std::is_same_v<typename T::value_type,
typename T::objective_function_type::value_type>;
requires requires(T& obj, const typename T::variable_type& init_variable) {
{ obj.init(init_variable) };
};
requires requires(T& obj, const typename T::variable_type& direction) {
{ obj.search(direction) };
};
requires requires(T& obj) {
{
obj.obj_fun()
} -> base::concepts::reference_of<typename T::objective_function_type>;
};
requires requires(const T& obj) {
{
obj.obj_fun()
} -> base::concepts::const_reference_of<
typename T::objective_function_type>;
{
obj.opt_variable()
} -> base::concepts::const_reference_of<typename T::variable_type>;
{
obj.opt_value()
} -> base::concepts::const_reference_of<typename T::value_type>;
{
obj.gradient()
} -> base::concepts::const_reference_of<typename T::variable_type>;
{
obj.evaluations()
} -> base::concepts::implicitly_convertible_to<index_type>;
};
}
Concept of first-order differentiable objective functions in optimization.
Concept of objects to perform line search in optimization.

Detailed Description

Concept of objects to perform line search in optimization.

Template Parameters
TType.

Definition at line 38 of file line_searcher.h.