mirror of
https://github.com/davisking/dlib.git
synced 2024-11-01 10:14:53 +08:00
Let python users give up to 35 parameters when using the global optimizer.
This commit is contained in:
parent
e7c25c06df
commit
0419b81689
@ -60,7 +60,7 @@ double call_func(py::object f, const matrix<double,0,1>& args)
|
|||||||
const auto num = num_function_arguments(f, args.size());
|
const auto num = num_function_arguments(f, args.size());
|
||||||
DLIB_CASSERT(num == args.size(),
|
DLIB_CASSERT(num == args.size(),
|
||||||
"The function being optimized takes a number of arguments that doesn't agree with the size of the bounds lists you provided to find_max_global()");
|
"The function being optimized takes a number of arguments that doesn't agree with the size of the bounds lists you provided to find_max_global()");
|
||||||
DLIB_CASSERT(0 < num && num < 15, "Functions being optimized must take between 1 and 15 scalar arguments.");
|
DLIB_CASSERT(0 < num && num < 35, "Functions being optimized must take between 1 and 35 scalar arguments.");
|
||||||
|
|
||||||
#define CALL_WITH_N_ARGS(N) case N: return dlib::gopt_impl::_cwv(f,args,typename make_compile_time_integer_range<N>::type()).cast<double>();
|
#define CALL_WITH_N_ARGS(N) case N: return dlib::gopt_impl::_cwv(f,args,typename make_compile_time_integer_range<N>::type()).cast<double>();
|
||||||
switch (num)
|
switch (num)
|
||||||
@ -80,6 +80,26 @@ double call_func(py::object f, const matrix<double,0,1>& args)
|
|||||||
CALL_WITH_N_ARGS(13)
|
CALL_WITH_N_ARGS(13)
|
||||||
CALL_WITH_N_ARGS(14)
|
CALL_WITH_N_ARGS(14)
|
||||||
CALL_WITH_N_ARGS(15)
|
CALL_WITH_N_ARGS(15)
|
||||||
|
CALL_WITH_N_ARGS(16)
|
||||||
|
CALL_WITH_N_ARGS(17)
|
||||||
|
CALL_WITH_N_ARGS(18)
|
||||||
|
CALL_WITH_N_ARGS(19)
|
||||||
|
CALL_WITH_N_ARGS(20)
|
||||||
|
CALL_WITH_N_ARGS(21)
|
||||||
|
CALL_WITH_N_ARGS(22)
|
||||||
|
CALL_WITH_N_ARGS(23)
|
||||||
|
CALL_WITH_N_ARGS(24)
|
||||||
|
CALL_WITH_N_ARGS(25)
|
||||||
|
CALL_WITH_N_ARGS(26)
|
||||||
|
CALL_WITH_N_ARGS(27)
|
||||||
|
CALL_WITH_N_ARGS(28)
|
||||||
|
CALL_WITH_N_ARGS(29)
|
||||||
|
CALL_WITH_N_ARGS(30)
|
||||||
|
CALL_WITH_N_ARGS(31)
|
||||||
|
CALL_WITH_N_ARGS(32)
|
||||||
|
CALL_WITH_N_ARGS(33)
|
||||||
|
CALL_WITH_N_ARGS(34)
|
||||||
|
CALL_WITH_N_ARGS(35)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
DLIB_CASSERT(false, "oops");
|
DLIB_CASSERT(false, "oops");
|
||||||
|
Loading…
Reference in New Issue
Block a user