Lehmer mean

Jump to: navigation, search

The Lehmer mean of a tuple of positive real numbers is defined as:


The Weighted Lehmer mean with respect to a tuple of positive weights is defined as:


The Lehmer mean is an alternative to power means for interpolating between minimum and maximum via arithmetic mean and harmonic mean.


The derivative of is non-negative

thus this function is monotonic and the inequality


Special cases

  • is the minimum of the elements of .
  • is the harmonic mean.
  • is the geometric mean.
  • is the arithmetic mean.
  • is the contraharmonic mean.
  • is the maximum of the elements of .
Sketch of a proof: Let be the values which equal the maximum. Then


Signal processing

Like a power mean, a Lehmer mean serves a non-linear moving average which is shifted towards small signal values for small and emphasizes big signal values for big . Given an efficient implementation of a moving arithmetic mean called smooth you can implement a moving Lehmer mean according to the following Haskell code.

 lehmerSmooth :: Floating a => ([a] -> [a]) -> a -> [a] -> [a]
 lehmerSmooth smooth p xs =
    zipWith (/)
       (smooth (map (**p) xs))
       (smooth (map (**(p-1)) xs))

See also

External links