Alpha max plus beta min algorithm

From Wikipedia, the free encyclopedia

The alpha max plus beta min algorithm is a high-speed approximation of the square root of the sum of two squares. That is to say, it gives the approximate absolute magnitude of a vector given the real and imaginary parts.

|V| = \sqrt{ I^2 + Q^2 }

The algorithm avoids the necessity of performing the square and square-root operations and instead uses simple operations such as comparison, multiplication and addition. Some choices of the α and β parameters of the algorithm allow the multiplication operation to be reduced to a simple shift of binary digits that is particularly well suited to implementation in high-speed digital circuitry.

The approximation is expressed as:

|V| = \alpha\,\! \mathbf{Max} +  \beta\,\! \mathbf{Min}

Where \mathbf{Max} is the maximum absolute value of I or Q and \mathbf{Min} is the minimum absolute value of I or Q.

For the closest approximation, the optimum values for \alpha\,\! and \beta\,\! are \alpha_0 = \frac{2 cos \frac{\pi}{8}}{1 + cos \frac{\pi}{8}} = 0.96043387... and \beta_0 = \frac{2 sin \frac{\pi}{8}}{1 + cos \frac{\pi}{8}} = 0.39782473..., giving a maximum error of 3.96%.

\alpha\,\! \beta\,\! Largest error (%) Mean error (%)
1/1 1/2 11.80 8.68
1/1 1/4 11.61 0.65
1/1 3/8 6.80 4.01
7/8 15/16 12.5 4.91
15/16 15/32 6.25 1.88
α0 β0 3.96 1.30

[edit] References