View Single Post
  #6   Report Post  
Posted to microsoft.public.excel.misc
David Biddulph[_2_] David Biddulph[_2_] is offline
external usenet poster
 
Posts: 8,651
Default Calculate the Circumference of an ellipse

What you did your last formula, Dana, was just work out the circumference of
a CIRCLE with radius 10000.

The simple approximation for the ellipse with semi-axes 10000 and 9975 is
=2*PI()*SQRT(10000*9975)
which comes to 62753.26411, which is, of course, a lot closer to your
complicated formula, but gets further away as the eccentricity increases
(but is much closer than the circumscribing circle which you had).
--
David Biddulph

"Dana DeLouis" wrote in message
...
Hi J. Maybe we can expand your excellent reference to a Custom function.
Here, we factor out a common expression, and add in the 2 Pi to get the
Perimeter. This uses the first example from your reference:

Sub TestIt()
'// Ellipse Perimeter
Debug.Print Perimeter(10000, 9975)
End Sub

Function Perimeter(a, b)
Dim k As Double

k = 3 * ((a - b) / (a + b)) ^ 2
Perimeter = (a + b) * (1 + k / (10 + Sqr(4 - k))) * [Pi()]
End Function

Returns:
62753.3378298691

I get the same result using a math program...
a = 10000;
b = 9975.;
4*a*EllipticE[1 - b^2/a^2]

62753.3378298691`

Wow. I would say that's as good an approximation as it gets.
Thanks for the reference. :)

Since the eccentricity is not very large, we can sense that the solution
"should" be a little less than the following, which it is.
? 2*10000*[Pi()]
62831.8530717959

= = = = =
Dana DeLouis



JLatham wrote:
Disclaimer: I do not hold a degree in mathematics (heck, I flunked
college algebra the first time around) and I don't even play one on TV or
in any Intel advertisements. But...

You got me curious so I went searching for coded solutions to the problem
and couldn't find any expressed as an Excel formula. What I did discover
is that a sharp fellow by the name of Srinivasa Ramanujan came up with 2
formulas in 1914 that are now accepted as being very accurate, with the
2nd effort being the more accurate of the two. All this is shown at
http://en.wikipedia.org/wiki/Circumference

So I worked at implementing his 2nd approximation as an Excel spreadsheet
formula and I believe I've succeeded:
Given the ellipse's major semi-axis in B1 and
the ellipse's minor semi-axis in B2, then
=(0.5*(B1+B2))*(1+((3*((B1-B2)/(B1+B2))^2)/(10+SQRT((4-(3*((B1-B2)/(B1+B2))^2))))))
gives me results shown on that same Wiki page for the various values of b
with a value of 10000 for the major semi-axis value.

Since this particular approximation appears to be the Gold Standard of
all approximations for the circumference of an ellipse, hopefully it will
suit your needs.


"M" wrote:

Is there a formula to Calculate the Circumference of an ellipse in
excel?