Re: series expansion of polys with real exponents
- To: mathgroup@smc.vnet.net
- Subject: [mg11715] Re: series expansion of polys with real exponents
- From: Allan Hayes <hay@haystack.demon.co.uk>
- Date: Thu, 26 Mar 1998 03:08:43 -0500
- References: <6esp6s$699@smc.vnet.net>
Hafeez Abdulrauf wrote: > > Hi, > > I would like to find the series expansion of an expression like > > 2 D / (2 -D^0.2 -D^1.8) > > in positive (real) powers of D. As the expression has real exponents on > D, it's not really a polynomial and none of the polynomial functions > work here. Is there any way to work it out? > > Regards, > Rauf and, in reply to my previous posting, > substituting x^5 for D and then using > Series[] does get me what I want. This raised some interesting issues about which kind of approach to use. I copy my reply: Rauf: So, something like f[D_]=2 D / (2 -D^(1/5) -D^(9/5)); Hf[D_,p_,n_]:=(Series[(f[D]/.D->x^5),{x,p^(1/5),n}]//Normal)/.x->D^(1/5) Interestingly, with the exact form of the exponents and p = 0, we get Sf[D_,p_,n_]:=Series[f[D],{D,p,n}]//Normal Hf[D,0,14] 6/5 7/5 8/5 9/5 2 11/5 12/5 13/5 D D D D D D D D D + ---- + ---- + ---- + ---- + -- + ----- + ----- + ----- + 2 4 8 16 32 64 128 256 14/5 257 D --------- 512 Sf[D,0,2]//Expand 6/5 7/5 8/5 9/5 2 11/5 12/5 13/5 D D D D D D D D D + ---- + ---- + ---- + ---- + -- + ----- + ----- + ----- + 2 4 8 16 32 64 128 256 14/5 257 D --------- 512 But Sf does not use non-integral powers when p is not 0, Hf[D,.5,10]//Expand 8 9 1/5 10 2/5 2.54485 10 - 2.96111 10 D + 1.55076 10 D - 10 3/5 10 4/5 11 4.81374 10 D + 9.80804 10 D - 1.37064 10 D + 11 6/5 10 7/5 1.33046 10 D - 8.85787 10 D + 10 8/5 10 9/5 9 2 3.87112 10 D - 1.0028 10 D + 1.16931 10 D Sf[D,.5,10]//Expand 2 3 0.996243 - 19.6231 D + 200.44 D - 1122.24 D + 4 5 6 7 4165.68 D - 10634.3 D + 18957.7 D - 23309. D + 8 9 10 18952.3 D - 9219.22 D + 2048.57 D Here are some comparisons f0=Plot[Evaluate[f[D]//N],{D,.001,.8}, PlotStyle -> {GrayLevel[.8], Thickness[0.02]}]; Hf0=Plot[Evaluate[Hf[D,0,40]],{D,.001,.8}, PlotStyle -> Hue[.6]]; Sf0=Plot[Evaluate[Sf[D,0,7]],{D,.001,.8},PlotRange->All, AxesOrigin->{0,0}, PlotStyle->Hue[0]]; Show[f0,Hf0,Sf0]; f1=Plot[Evaluate[f[D]//N],{D,.1,.9}, PlotStyle -> {GrayLevel[.8], Thickness[0.02]}]; Hf1=Plot[Evaluate[Hf[D,.5,10]],{D,.2,.9}, PlotStyle -> Hue[.6]]; Sf1=Plot[Evaluate[Sf[D,.5,10]],{D,.001,.9},PlotRange->All, AxesOrigin->{0,0}, PlotStyle->Hue[0]]; Show[f1,Hf1,Sf1]; f2=Plot[Evaluate[f[D]//N],{D,1.1,2.9}, PlotStyle -> {GrayLevel[.8], Thickness[0.02]}]; Hf2=Plot[Evaluate[Hf[D,2.0,4]],{D,1.1,2.9}, PlotStyle -> Hue[.6]]; Sf2=Plot[Evaluate[Sf[D,2.0,4]],{D,1.1,2.9},PlotRange->All, PlotStyle->Hue[0]]; Show[f2,Hf2,Sf2, PlotRange->All]; -- Allan Hayes Mathematica Training and Consulting Leicester, UK hay@haystack.demon.co.uk http://www.haystack.demon.co.uk voice: +44 (0)116 271 4198 fax: +44 (0)116 271 8642