From: Grover Hughes on 20 Dec 2009 17:41 I'd like to have a formula (closed form if possible, series is acceptable) which gives the numerical value of the perimeter of a superellipse as defined by the formula (x/a)^n + (y/b)^n = 1 where n > 2 and a and b are the known semiaxes. I have searched Wolfram Mathworld and Wikipedia without success. I DO have the area formula, but need the same thing for the perimeter. Your help will be much appreciated. Grover Hughes
From: Valeri Astanoff on 24 Dec 2009 05:38 On 20 déc, 23:41, Grover Hughes <ghug...(a)magtel.com> wrote: > I'd like to have a formula (closed form if possible, series is > acceptable) which gives the numerical value of the perimeter of a > superellipse as defined by the formula > > (x/a)^n + (y/b)^n = 1 > > where n > 2 and a and b are the known semiaxes. I have searched > Wolfram Mathworld and Wikipedia without success. I DO have the area > formula, but need the same thing for the perimeter. Your help will be > much appreciated. Good day, Assuming a super-ellipse with a=1 b<1 and n>=2, I have generated (with Mathematica) this series : u[b_,n_,k_]= ((-(1/2))^k*(2*k - 3)!!* (-(((b^(n/(n - 1)) + 1)^((-2*k*(n - 1) - 1)/n)* Hypergeometric2F1[(2*k*(n - 1) + 1)/n, (2*k*(n - 1))/n, (2*k*(n - 1) + n + 1)/n, 1/(b^(n/(n - 1)) + 1)]*b^(4*k))/(2*k*(n - 1) + 1))- (Beta[1/(b^(n/(1 - n)) + 1), (2*k*(n - 1) + 1)/n, 2*k*(1/n - 1) + 1]*b)/n))/(b^(2*k)*k!) It seems to give acceptable results. Here is a check example with an ellipse b=1/2 n=2 : 4*NSum[u[1/2, 2, k], {k, 0, Infinity}] 4.84422 A super-ellipse with n=5 and 10 terms : 4*NSum[u[1/2, 5, k], {k, 0, 10}] 5.44738 hth -- Valeri Astanoff
From: Valeri Astanoff on 24 Dec 2009 07:46 On 24 déc, 11:38, Valeri Astanoff <astan...(a)gmail.com> wrote: > On 20 déc, 23:41, Grover Hughes <ghug...(a)magtel.com> wrote: > > > I'd like to have a formula (closed form if possible, series is > > acceptable) which gives the numerical value of the perimeter of a > > superellipse as defined by the formula > > > (x/a)^n + (y/b)^n = 1 > > > where n > 2 and a and b are the known semiaxes. I have searched > > Wolfram Mathworld and Wikipedia without success. I DO have the area > > formula, but need the same thing for the perimeter. Your help will be > > much appreciated. > > Good day, > > Assuming a super-ellipse with a=1 b<1 and n>=2, > I have generated (with Mathematica) this series : > > u[b_,n_,k_]= > ((-(1/2))^k*(2*k - 3)!!* > (-(((b^(n/(n - 1)) + 1)^((-2*k*(n - 1) - 1)/n)* > Hypergeometric2F1[(2*k*(n - 1) + 1)/n, > (2*k*(n - 1))/n, > (2*k*(n - 1) + n + 1)/n, > 1/(b^(n/(n - 1)) + 1)]*b^(4*k))/(2*k*(n - 1) + 1))- > (Beta[1/(b^(n/(1 - n)) + 1), > (2*k*(n - 1) + 1)/n, > 2*k*(1/n - 1) + 1]*b)/n))/(b^(2*k)*k!) Here is a more compact and symmetrical form : -(((-(1/2))^k*( Beta[1/(b^(n/(n-1))+1),(2*k*(n-1)+1)/n, 2*k*(1/n-1)+1]*b^(4*k)+ Beta[1/(b^(n/(1-n))+1),(2*k*(n-1)+1)/n, 2*k*(1/n-1)+1]*b)*(2*k-3)!!)/ (b^(2*k)*(n*k!))) v.a.
From: Valeri Astanoff on 8 Jan 2010 05:22 On 24 déc 2009, 13:46, Valeri Astanoff <astan...(a)gmail.com> wrote: Good day, Comparing superellipse perimeter formulas : In[1]:= perimeterBySum[a_, b_, n_, km_] := Sum[-((2*(-1)^k*(b*Beta[1/(1 + (b/a)^(n/(1 - n))), (1 + 2*k*(-1 + n))/n, 1 + 2*k*(-1 + 1/n)] + a*(b/a)^(4*k)*Beta[1/(1 + (b/a)^(n/(-1 + n))), (1 + 2*k*(-1 + n))/n, 1 + 2*k*(-1 + 1/n)])* Gamma[-(1/2) + k])/((b/a)^(2*k)*(n*Sqrt[Pi]*k!))), {k, 0, km}] In[2]:= perimeterByNSum[a_, b_, n_, km_] := NSum[-((2*(-1)^k*(b*Beta[1/(1 + (b/a)^(n/(1 - n))), (1 + 2*k*(-1 + n))/n, 1 + 2*k*(-1 + 1/n)] + a*(b/a)^(4*k)*Beta[1/(1 + (b/a)^(n/(-1 + n))), (1 + 2*k*(-1 + n))/n, 1 + 2*k*(-1 + 1/n)])* Gamma[-(1/2) + k])/((b/a)^(2*k)*(n*Sqrt[Pi]*k!))), {k, 0, km}] In[3]:= perimeterByIntegrate[a_, b_, n_] := Integrate[(4*t^(-1 + 1/n)*Sqrt[b^2 + a^2*(1 - t)^(-2 + 2/n)* t^(2 - 2/n)])/n, {t, 0, 1/(1 + (b/a)^(n/(1 - n)))}] + Integrate[(4*a*t^(-1 + 1/n)*Sqrt[1 + (b^2*(1 - t)^(-2 + 2/n)* t^(2 - 2/n))/a^2])/n, {t, 0, 1/(1 + (b/a)^(n/(-1 + n)))}] In[4]:= perimeterByNIntegrate[a_, b_, n_] := NIntegrate[(4*t^(-1 + 1/n)*Sqrt[b^2 + a^2*(1 - t)^(-2 + 2/n)* t^(2 - 2/n)])/n, {t, 0, 1/(1 + (b/a)^(n/(1 - n)))}] + NIntegrate[(4*a*t^(-1 + 1/n)*Sqrt[1 + (b^2*(1 - t)^(-2 + 2/n)* t^(2 - 2/n))/a^2])/n, {t, 0, 1/(1 + (b/a)^(n/(-1 + n)))}] In[5]:= ellipsePerimeter[a_, b_] = 4*(a + b)*EllipticE[(a - b)^2/(a + b)^2] - (8*a*b*EllipticK[(a - b)^2/(a + b)^2])/(a + b); In[6]:= perimeterBySum[1, 1/2, 2, 40] // N // Timing Out[6]= {0.047, 4.84421} In[7]:= perimeterByNSum[1, 1/2, 2, 40] // N // Timing During evaluation of In[7]:= \[Infinity]::indet: Indeterminate expression 0 ComplexInfinity encountered. >> In[8]:= perimeterByIntegrate[1, 1/2, 2] // N // Timing Out[8]= {13.25, 4.84422+ 4.21885*10^-15 \[ImaginaryI]} In[9]:= perimeterByNIntegrate[1, 1/2, 2] // N // Timing Out[9]= {0.016, 4.84422} In[10]:= ellipsePerimeter[1, 1/2] // N // Timing Out[10]= {0., 4.84422} In[11]:= perimeterBySum[1, 1/2, 4, 40] // N // Timing Out[11]= {0.141, 5.32803} In[12]:= perimeterByNSum[1, 1/2, 4, 40] // N // Timing During evaluation of In[12]:= \[Infinity]::indet: Indeterminate expression 0 ComplexInfinity encountered. >> In[13]:= perimeterByIntegrate[1, 1/2, 4] // N // Timing Out[13]= {40.532, 5.32803} In[14]:= perimeterByNIntegrate[1, 1/2, 4] // N // Timing Out[14]= {0.016, 5.32803} hth -- Valeri Astanoff
|
Pages: 1 Prev: How to prove the following combinatorial identity-2? Next: superellipse perimeter formula- |