Unit Discovery: Is this some sort of a sick joke?
Extended comment about the speed of sound and the speed of sound in water.
Speed of sound
N[UnitConvert[Quantity["speed of sound"]]] 343.2m/s
Turns out that this happens to be (a somewhat decent approximation of) the speed of sound in air at standard conditions, but how in the world could anyone know that?
Quantity[1, "speed of sound"]
displays in the front-end the information about the temperature and pressure conditions:
Quantity[1, "speed of sound"]
By applying UnitConvert
on this expression, the unit "SpeedOfSound"
is converted to SI base units, which removes this information.
Speed of sound in water
N[UnitConvert[Quantity["speed of sound in water"]]] 85487.31kg/(s)^3
What is this supposed to be?
The string "speed of sound in water" is not a KnownUnitQ
so, as above for "speed of sound", it is interpreted by Quantity
. WolframAlpha
interprets the query as intended, while Quantity
interprets the string unit as
QuantityUnit@ Quantity["speed of sound in water"]
(* "InchesOfWaterColumn" "SpeedOfSound" *)
This explains the result obtained by OP when applying UnitConvert
:
N@ UnitConvert[Quantity["speed of sound in water"]]
(* Quantity[85487.3, ("Kilograms")/("Seconds")^3] *)
% === N@ UnitConvert[Quantity["SpeedOfSound" * "InchesOfWaterColumn"]]
(* True *)
Here are two possible workarounds:
1) The substring "in" could be removed to avoid it being interpreted as "Inch":
Quantity["speed of sound water"]
(* Quantity[1482.35, ("Meters")/("Seconds")] *)
The result is given directly in Meters/Seconds (so we do not have the information about the pressure and temperature conditions), because there is no unit representing "speed of sound water". (Recall that we had the unit "SpeedOfSound" for the speed of sound in the air.)
2) The string could be typed within the Ctrl+= box and one could browse among the possible interpretations. We recover here the interpretations of Quantity
and WolframAlpha
:
This last image also tells us what are the temperature and pressure conditions that yielded the above value.
A bit too long for a comment...
My best guess is that WolframAlpha["earth's gravity", "MathematicaResult"]
is simply rounding to too few digits. It returns 32.2 ft/s^2
, which seems pretty round for what it represents.
Now maybe that's ok to do because gravity varies around the globe:
data = GeogravityModelData[{{-90, -180.}, {90, 180.}}, "Magnitude", GeoZoomLevel -> -2];
MinMax[data]
But it does seem odd that different queries give slightly different answers here...