I found that when I passed atan2 a quantity<si::length> value for both y and x the compiler gave me an error. Upon examination of the atan2 method in "boost/units/cmath.hpp" I found it expected both inputs to atan2 to be dimensionless. The method atan2 can be represented simplistically as atan(y / x). As long as both dimensions to y and x are the same the results is a dimensionless value of (y / x). So shouldn't the inputs to boost::units::atan2 accept any dimension of y and x as long as they are the same?
Ryan