MathGroup Archive 1997

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Need help to a beginner.

  • To: mathgroup at smc.vnet.net
  • Subject: [mg9704] Re: [mg9642] Need help to a beginner.
  • From: David Withoff <withoff>
  • Date: Fri, 21 Nov 1997 01:31:52 -0500
  • Sender: owner-wri-mathgroup at wolfram.com

> Hi, all. I am quite new to Mathematica, and am using the older version,
> v. 2.2. I hope someone will help me. My problem is nothing to do with
> homework of a math class, or any sort. I am a physics graduate student,
> and for my research project am trying to have an algebraic expression
> of  potential energy of certain ionic crystalline lattice. The
> electrostatic (i.e.  Coulomb) energy has the expression of 1/r, where r
> is the distance between two  charges.
> I am still far from getting the answer I want because of this problem I
> am facing in the very first stage where I am supposed to be used to
> Mathematica.
>
> First of all, let me explain my problem. It is known, if you expand
> 1/Sqrt[1-x], provided that x^2<<1, you have
> 1+(1/2)*x+(3/*)*x^2+(5/16)*x^3+.... Now, let's have a similar
> expression to this: 1/Sqrt[(a-x)^2+y^2+z^2].
> Suppose x, y and z are cartesian coordinates, and r^2=x^2+y^2+z^2. And a
> is some positive constant, and it satisfies a>>r. So factoring the
> denominator by a^2 and kicking it out of the Sqrt as a, I can continue
> this algebra by my hand, and I should end up with:
> (1/a)*(1+x/a-r^2/(2*a^2)+(3*x^2)/(2*a^2)+....) in which I only keep up
> to the 2nd order of r/a (and x/a).
>
> I would like to be able to do this by Mathematica. That is, given this
> sort of a reciprocal of a Sqrt of quadratic expression with x, y and z,
> I'd like it to expand "approximately" so that a resultant expression
> only contain the terms up to a specified order of r/a (thus, x/a, y/a,
> and z/a). How can I do this? This kind of expansion goes on forever,
> but I don't need many higher order terms. How can I specify the maximum
> order that I want to have?
>
> I will greatly appreciate someone's help to this problem. Meanwhile, I
> am trying to find a solution in the manual by myself. If you don't
> mind, please send your solution to my email address: shink at iastate.edu
>
> Thank you for your attention.

If I am understanding this correctly, then implicit in this calculation
is the assumption that x/a and r/a are of the same order, and the
objective is to do an expansion in powers of the common scale of these
variables, rather than a two-variable expansion.  This can be done by
rewriting the express in terms of a variable that represents that
scale, and then doing the expansion.

In[1]:= expr = 1/Sqrt[Expand[(a-x)^2+y^2+z^2]] /.
                    x^2 + y^2 + z^2 -> r^2

                  1
Out[1]= ---------------------
              2    2
        Sqrt[a  + r  - 2 a x]

In[2]:= expr = PowerExpand[Factor /@ (expr /. {r -> t a ra, x -> t a
xa})]

                     1
Out[2]= ---------------------------
                     2  2
        a Sqrt[1 + ra  t  - 2 t xa]

In[3]:= ser = Series[expr, {t, 0, 2}]

                       2       2   2
        1   xa t   (-ra  + 3 xa ) t        3 Out[3]= - + ---- +
----------------- + O[t]
        a    a            2 a

after which

In[4]:= Normal[ser]/. {t -> 1, ra -> r/a, xa -> x/a} //Expand

              2            2
        1    r     x    3 x
Out[4]= - - ---- + -- + ----
        a      3    2      3
            2 a    a    2 a

gives the terms to second order in x/a and r/a in terms of the original
variables.

Dave Withoff
Wolfram Research


  • Prev by Date: Re: Need help to a beginner.
  • Next by Date: Re: FrontEndTokenExecute[?]
  • Previous by thread: Re: Need help to a beginner.
  • Next by thread: RE: Need help to a beginner.