Re: Series and order

*To*: mathgroup at smc.vnet.net*Subject*: [mg74767] Re: Series and order*From*: dh <dh at metrohm.ch>*Date*: Wed, 4 Apr 2007 04:07:29 -0400 (EDT)*References*: <eusl3f$9ee$1@smc.vnet.net>

Hi, Mathematica calculates a series with more than one variable sequentially, leading to the order problem you mentioned. Now, what can we do? Here is simple solution: Formally, you know what you want, namely: f1[x0, x0] + (-x0 + x2)*Derivative[0, 1][f1][x0, x0] + (-x0 + x1)*Derivative[1, 0][f1][x0, x0]. Now, write this by hand with f1 unspecified and replace f1 by your function myFun[_,_]: f1[x0, x0] + (-x0 + x2)*Derivative[0, 1][f1][x0, x0] + (-x0 + x1)*Derivative[1, 0][f1][x0, x0] /. f1:>myFun However, if you nevertheless want an automatism, although I would no recommend this, we could try to formally couple both variable during the expansion. E.g. we could introduce an unspecified proportionality constant. x2= a x1, expand, replace all terms of the form a x1 by x2 and set a=1: Expand[Normal[Series[f1[x1,a x1],{x1,x0,1}]]]/. a x1 ->x2 /. a->1 The second proble you metioned is harder to deal with. I think it needs hand work. E.g. replacement of c1^n_ -> 0 Daniel Hugh wrote: > I wish to expand the expression e1, below, in a Taylor's series > expansion about z0 in the two variables z1 and z2 and include only > first order terms (c1, c2, a and b are coefficients). Terms in z1 and > z2 are of similar order so that products of their first order terms > are second order and should be discounted compared to first order > terms. Problem 1: how do I tell Series to do this? Problem 2: the > coefficients c1 and c2 are of similar order to z1-z0 and thus > additional terms can be set to zero as second order. How do I do > this? > > Below I give a warm up problem for a function f[z1,z2] which just > seems to expand in terms of one variable and then in terms of the > other without regard for term order. If we can solve the first problem > then it may be possible to solve the second by expanding in terms of > the coefficients as well. > > Thanks > > Hugh Goyder > > > Series[f[z1, z2], {z2, z0, 1}, {z1, z0, 1}] > > > SeriesData[z2, z0, {SeriesData[z1, z0, > {f[z0, z0], Derivative[1, 0][f][z0, z0]}, 0, 2, 1], > SeriesData[z1, z0, {Derivative[0, 1][f][z0, z0], > Derivative[1, 1][f][z0, z0]}, 0, 2, 1]}, 0, 2, 1] > > > e1 = (z0^2 - 2*I*c1*z0*z1 - z1^2)*(z0^2 - 2*I*c2*z0*z2 - > z2^2) - 4*z1*z2*(I*a*z0 + b*Sqrt[z1*z2])^2; > > > Simplify[Normal[Series[e1, {z2, z0, 1}, {z1, z0, 1}]], > {0 < z0}] > > > 2*z0^2*((2 - I*a*b - 2*b^2)*z0^2 + > (2*a^2 - 9*I*a*b - 8*b^2 - 2*(-I + c1)*(-I + c2))*z1*z2 + > z0*((-2 + 3*I*a*b + 4*b^2 - 2*I*c1)*z1 + > (-2 + 3*I*a*b + 4*b^2 - 2*I*c2)*z2)) > >