# Is there a reason why "Revolutions" and "Radians" or "AngularDegrees" are not CompatibleUnitQ?

I understand that keeping a consistent unit framework across multiple domains is complicated and not everyone will be satisfied with the choices made, like when people ask why "Radians" are not dimensionless in the Wolfram Language.

So I suppose there is a probably a reason why both

CompatibleUnitQ["Revolutions", "Radians"]


and

CompatibleUnitQ["Revolutions"/"Seconds", "Radians"/"Seconds"]


return False, or similarly with "AngularDegrees" instead of "Radians", or a time unit different from "Seconds". It does surprise me as there are multiple domains in which this unit conversion would feel natural.

EDIT:

I think this is a case in which people would hope Mathematica could go beyond the unending academic metrology debate regarding the status of angular units and units derived from them. Wolfram Alpha recognizes the connection of revolutions with radians (and similarly with revolutions per second and radians per second):

• Something may be broken in MMA 12. Both of your examples return True in MMA 11.3.0. Oct 8, 2020 at 0:38
• Conceptually, there is a difference. The radian is a S.I. derived unit expressed in m/m (length of an arc over length of radius), which can be treaded as one, whereas the revolution is based on counting, involving dimensionless numbers. Oct 8, 2020 at 13:10

"Radians" do have a dimension in Wolfram Language ("AngleUnit"), and "Revolutions" have an independent physical dimension ("RevolutionUnit"). There is a "FullAngle" unit, which corresponds to 360 degrees, which is equivolent to the colloquial notion of 1 revolution = 2 Pi radians:

In[5]:= UnitDimensions["Radians"]
Out[5]= {{"AngleUnit", 1}}

In[6]:= UnitDimensions["Revolutions"]
Out[6]= {{"RevolutionUnit", 1}}

In[7]:= UnitDimensions["FullAngle"]
Out[7]= {{"AngleUnit", 1}}