Отключить журнал предупреждений в boost::ublas

При инвертировании матрицы с boost::ublas Иногда я получаю эту ошибку в журнале:

Не удалось проверить в файле /usr/include/boost/numeric/ublas/lu.hpp в строке 298: detail::expression_type_check (prod (triangular_adaptor (m), e), cm2)

Я знаю, что это, как правило, полезная информация, но не в моем случае. Есть ли способ подавить это сообщение (каким-то образом настраивая boost или используя флаг компилятора)? BOOST_UBLAS_NDEBUG не режет это.

1 ответ

Решение

Глядя на этот заголовок показывает:

#if BOOST_UBLAS_TYPE_CHECK
        BOOST_UBLAS_CHECK (detail::expression_type_check (prod (triangular_adaptor<const_matrix_type, upper> (m), e), cm2), internal_logic ());
#endif

Это даже задокументировано:

BOOST_UBLAS_TYPE_CHECK

Когда BOOST_UBLAS_TYPE_CHECK включен, все возможные дорогостоящие проверки структуры включены. Если это нежелательно, используйте #define BOOST_UBLAS_TYPE_CHECK 0 перед включением любого заголовка uBLAS. Определение BOOST_UBLAS_TYPE_CHECK_EPSILON может использоваться для контроля допустимого допуска, см. detail/matrix_assign.hpp для реализации деталей этой проверки.

Другие вопросы по тегам