2
$\begingroup$

Given e1..e5 as the exponents of the base units, are there any well known methods for producing a simplified form?

As an example m^2*kg*s^-1 simplifies to W*s^2.

I have a set of derived units as Name/exponent-vector pairs as input and it can be assumed all exponents are rational (and in fact most being integers and almost all not having a denominator more than about 3-4).

I know this can be reduced to a linear algebra problem but it is VERY under defined and in fact has several possible solutions.

  • 0
    @Matt: If your primary interest is doing dimensional analysis, yes that is the easiest way (and in fact that is how the system this is question is part of work). OTOH if the dimensional analysis is something you will to offload to software so you can deal with real a system, it's generally easier to work in unit that directly express interesting properties of the system (power, voltage, force, energy, etc.).2010-11-24

1 Answers 1

1

In general the problem of "simplifying" units (mathematical expressions in general) has no well defined solution - it is not even a well-defined process, in most cases. For example, there are multiple ways of reducing your given example:

m^2 kg s^-1 => N m s

m^2 kg s^-1 => J s

m^2 kg s^-1 => W s^2

The best you can really do is recursively enumerate over all such possibilities and use some heuristic to choose the "best" (or give the option of using any of them).

(Note: intuitively I would guess that these units are representing angular momentum, in which case N m s probably makes most sense, though it's quite subjective.)

  • 0
    I was kinda looking for some solutions that have already thought that one out. Any suggestions as to a heuristic and/or a enumeration strategy that will will allow good pruning?2019-03-01