Learn R Programming

pracma (version 1.5.5)

agmean: Arithmetic-geometric Mean

Description

The arithmetic-geometric mean of real or complex numbers.

Usage

agmean(a, b)

Arguments

a, b
vectors of real or complex numbers of the same length (or scalars).

Value

  • Returns vector of arithmetic-geometric means, component-wise.

Details

The arithmetic-geometric mean is defined as the common limit of the two sequences $a_{n+1} = (a_n + b_n)/2$ and $b_{n+1} = \sqrt(a_n b_n)$.

When used for negative or complex numbers, the complex square root function is applied.

References

http://mathworld.wolfram.com/Arithmetic-GeometricMean.html

See Also

Arithmetic, geometric, and harmonic mean.

Examples

Run this code
##  Accuracy test: Gauss constant
1/agmean(1, sqrt(2)) - 0.834626841674073186     # 1.11e-16 < eps = 2.22e-16

##  Example: Approximate elliptic integral
N <- 20
m <- seq(0, 1, len = N+1)[1:N]
E <- numeric(N)
for (i in 1:N) {
    f <- function(t) 1/sqrt(1 - m[i]^2 * sin(t)^2)
    E[i] <- quad(f, 0, pi/2)
}
A <- numeric(2*N-1)
a <- 1
b <- a * (1-m) / (m+1)

plot(m, E, main = "Elliptic Integrals vs. arith.-geom. Mean")
lines(m, (a+b)*pi / 4 / agmean(a, b), col="blue")
grid()

Run the code above in your browser using DataLab