Just to elaborate on units I use, here's a hypothetical (not stuff that
actually happened today, but very commonplace nature):

I drove 20 minutes up the road to by a bushel (US, not British) of U.S. No.
> 1. apples, to make apple cider.  On my return trip, I stopped at the
> hardware store to buy a 2 lb box of 1-3/4" ring shank 12 penny nails.  I
> used my 7/8 hole kitchen planer blade to grate the apples, then squeezed
> them for an hour and a 15 minutes at 30 psi to extract the juice.  For good
> measure I added 2 tablespoons of vanilla and a pinch of salt.  Then I drove
> the nails into grade C 2x4 joists (whose sizes are 1.5 x 3.5 inches, with a
> 1/16th inch permissible tolerance in sizing).


Please express that description in SI units! ;-)

On Mon, Apr 4, 2022 at 11:55 AM Ken Kundert <pyt...@shalmirane.com> wrote:

> I think there is one more point worth making here.  There is a suggestion
> that
> dimensional analysis can underpin a units system.  Actually, the idea that
> all
> units can be broken down into a small set of fundamental units is very
> limiting
> and results in many vexing issues.
>
> For example, consider currencies.  There are currently hundreds of
> national
> currencies and thousands of cryptocurrencies.  They all have the same
> basic
> fundamental unit of “value”, but value is only loosely defined.
> Furthermore,
> there is no fixed ratio between the currency and its value.  It varies
> over
> time, over location, and from person to person.
>
> Consider units of a particular commodity.  The example of a ream of paper
> was
> recently mentioned. A ream is 500 sheets of paper.  However two reams may
> not be
> comparable.  They may refer to a different size of paper or a different
> quality
> of paper.  So all prices for reams of paper would have the same
> fundamental
> units of “value per each”, but both “value” and “each” are not necessarily
> comparable.  In effect, the fundamental unit system is not complete.  You
> also
> need to include information about what you are measuring.  For example,
> “each”
> could represent a single item of anything.  The unit is not complete until
> you
> include a description of what that anything is, and in effect, there is an
> unlimited number of things it could be.
>
> Now consider the issue of “unitless units”.  In electrical circuit we
> often talk
> about gain, which it the ratio between the signal level at the output of
> a circuit relative to the signal level at the input.  But you need to be
> specific about how you measure signal level.  Typically, it would be a
> voltage,
> current, or power level.  Consider a circuit where both the input and
> output are
> measured in volts.  Then the gain would have units of "V/V", which is
> unitless
> in dimensional analysis.  But units of "V/V" (voltage gain) is much
> different
> from units of "A/A" (current gain) or "W/W" (power gain), even though they
> have
> the same dimensions.  Mixing them up results in errors and confusion.  An
> additional complication is that sometimes logarithmic units are used.  For
> example, decibels in voltage, or dBV, is 20*log(Vout/Vin).  Again,
> a dimensionless quantity, but nonetheless "dBV" much different from "V/V".
>
> The same issue occurs with the arguments to trigonometric functions like
> sin(),
> cos() and tan().  Generally, we assume the arguments are given in radians,
> which
> is a dimensionless number.  But it could also be given in degrees, another
> dimensionless number.  Radians and degrees are indistinguishable from the
> perspective on dimensional analysis, but mixing them up results in errors.
>
> This is not to knock the idea of dimensional analysis.  It is just not
> something
> that would be done in most programs that process physical quantities.
> Rather it
> is something that is largely done as a one-time check on your analysis.
> It is
> a “second opinion” on whether your hand calculation are correct, or at
> least
> plausible.  So dimensional analysis packages such as pint have their
> place, but
> dimensional analysis is not something that belongs in the base language or
> even
> the standard library.
>
> However I do believe that a case can be made to allow numbers to be easily
> tagged with units in the base language, and then allowing those units to
> be
> accessed as an attribute of the number.  Packages such as pint and
> QuantiPhy
> could then use that attribute to provide processing of units that is
> appropriate
> for the particular application.
>
> -Ken
> _______________________________________________
> Python-ideas mailing list -- python-ideas@python.org
> To unsubscribe send an email to python-ideas-le...@python.org
> https://mail.python.org/mailman3/lists/python-ideas.python.org/
> Message archived at
> https://mail.python.org/archives/list/python-ideas@python.org/message/A6BVGOUYE2BPO54M63KXFNDOE6FUSJ3F/
> Code of Conduct: http://python.org/psf/codeofconduct/
>


-- 
Keeping medicines from the bloodstreams of the sick; food
from the bellies of the hungry; books from the hands of the
uneducated; technology from the underdeveloped; and putting
advocates of freedom in prisons.  Intellectual property is
to the 21st century what the slave trade was to the 16th.
_______________________________________________
Python-ideas mailing list -- python-ideas@python.org
To unsubscribe send an email to python-ideas-le...@python.org
https://mail.python.org/mailman3/lists/python-ideas.python.org/
Message archived at 
https://mail.python.org/archives/list/python-ideas@python.org/message/KVUAKFA6T3EK7GXAUIHDUZFB7ICJ433S/
Code of Conduct: http://python.org/psf/codeofconduct/

Reply via email to