diff --git a/src/problem/problem.cpp b/src/problem/problem.cpp index 747737dc1ff0ea4b742a97017065d229889ea7d6..6326970fc3b4db3a5b825590c27367787ff457e2 100644 --- a/src/problem/problem.cpp +++ b/src/problem/problem.cpp @@ -1052,14 +1052,22 @@ void Problem::print(int _depth, std::ostream& _stream, bool _constr_by, bool _me _stream << "Fac" << cby->id() << " \t"; } _stream << std::endl; - if (_metric) + + if (_metric && _state_blocks){ + for (const auto& key : F->getStructure()) + { + auto sb = F->getStateBlock(key); + _stream << " " << key << "," << (sb->isFixed() ? "Fix: " : "Est: ") << sb->getState().transpose() << std::endl; + } + } + else if (_metric) { _stream << (F->isFixed() ? " Fix" : " Est") << ", ts=" << std::setprecision(5) << F->getTimeStamp(); _stream << ",\t x = ( " << std::setprecision(2) << F->getState().transpose() << " )"; _stream << std::endl; } - if (_state_blocks) + else if (_state_blocks) { _stream << " sb:"; for (const auto& sb : F->getStateBlockVec()) @@ -1068,6 +1076,7 @@ void Problem::print(int _depth, std::ostream& _stream, bool _constr_by, bool _me } _stream << std::endl; } + if (_depth >= 2) { // Captures =======================================================================================