9 #include "crocoddyl/core/utils/callbacks.hpp" 13 CallbackVerbose::CallbackVerbose(VerboseLevel level) : CallbackAbstract(), level(level) {}
15 CallbackVerbose::~CallbackVerbose() {}
17 void CallbackVerbose::operator()(SolverAbstract& solver) {
18 if (solver.get_iter() % 10 == 0) {
21 std::cout <<
"iter \t cost \t stop \t grad \t xreg";
22 std::cout <<
" \t ureg \t step \t feas\n";
26 std::cout <<
"iter \t cost \t stop \t grad \t xreg";
27 std::cout <<
" \t ureg \t step \t feas \tdV-exp \t dV\n";
31 std::cout <<
"iter \t cost \t stop \t grad \t xreg";
32 std::cout <<
" \t ureg \t step \t feas\n";
39 std::cout << std::setw(4) << solver.get_iter() <<
" ";
40 std::cout << std::scientific << std::setprecision(5) << solver.get_cost() <<
" ";
41 std::cout << solver.get_stop() <<
" " << -solver.get_d()[1] <<
" ";
42 std::cout << solver.get_xreg() <<
" " << solver.get_ureg() <<
" ";
43 std::cout << std::fixed << std::setprecision(4) << solver.get_steplength() <<
" ";
44 std::cout << solver.get_is_feasible() <<
'\n';
48 std::cout << std::setw(4) << solver.get_iter() <<
" ";
49 std::cout << std::scientific << std::setprecision(5) << solver.get_cost() <<
" ";
50 std::cout << solver.get_stop() <<
" " << -solver.get_d()[1] <<
" ";
51 std::cout << solver.get_xreg() <<
" " << solver.get_ureg() <<
" ";
52 std::cout << std::fixed << std::setprecision(4) << solver.get_steplength() <<
" ";
53 std::cout << solver.get_is_feasible() <<
" ";
54 std::cout << std::scientific << std::setprecision(5) << solver.get_dVexp() <<
" ";
55 std::cout << solver.get_dV() <<
'\n';
59 std::cout << std::setw(4) << solver.get_iter() <<
" ";
60 std::cout << std::scientific << std::setprecision(5) << solver.get_cost() <<
" ";
61 std::cout << solver.get_stop() <<
" " << -solver.get_d()[1] <<
" ";
62 std::cout << solver.get_xreg() <<
" " << solver.get_ureg() <<
" ";
63 std::cout << std::fixed << std::setprecision(4) << solver.get_steplength() <<
" ";
64 std::cout << solver.get_is_feasible() <<
'\n';