On 2010-09-28 14:39:27 +0100, Malcolm McLean said:
he problem is that if you allow expressions rather than terms then the experssions can get arbitrarily complex. sqrt(1 inch + 1 Second), for instance.
I can't imagine a context where 1 inch + 1 second would not be an error, so this is a slightly odd example. Indeed I think that in dimensional analysis summing (or comparing) things with different dimensions is always an error.
On the other hand sqrt(4 inches^2) is quite well defined. The question is whether to allow sqrt(1 inch). It means using rationals rather than integers for unit superscripts.
There's a large existing body of knowledge on dimensional analysis (it's a very important tool for physics, for instance), and obviously the answer is to do whatever it does. Raising to any power is fine, I think (but transcendental functions, for instance, are never fine, because they are equivalent to summing things with different dimensions, which is obvious if you think about the Taylor expansion of a transcendental function).
--tim -- http://mail.python.org/mailman/listinfo/python-list