I think it is better to use std::numeric_limits<double>::inf() instead of defining DART_INF.