|
function agm ([Double]$a, [Double]$g) {
|
|
[Double]$eps = 1E-15
|
|
[Double]$a1 = [Double]$g1 = 0
|
|
while([Math]::Abs($a - $g) -gt $eps) {
|
|
$a1, $g1 = $a, $g
|
|
$a = ($a1 + $g1)/2
|
|
$g = [Math]::Sqrt($a1*$g1)
|
|
}
|
|
[pscustomobject]@{
|
|
a = "$a"
|
|
g = "$g"
|
|
}
|
|
}
|
|
agm 1 (1/[Math]::Sqrt(2))
|