boost::units::root — take the static_rational root of a value
static_rational
template<typename Rat, typename Y> root_typeof_helper< Y, Rat >::type root(const Y & x);
take the integer root of a value