MathGroup Archive 1999

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

Search the Archive

Re: Mathematica can't win against Tiger Woods

In article <7r7jvo$ck4 at>, "William M. MacDonald"
<wm2 at> wrote:

> I want to use the study of golf drives in teaching theoretical methods.  An
> approximate pair of equations to get insight assumes that the drag force is
>  linearly  proportional to velocity, instead of the actual quadratic
>  dependence.  The equations for a ball with backspin to provide lift are
>      x''[t]== - (a x'[t]+b y'[t]),
>      y''[t]== - g - (a y'[t]- b x'[t])
>  Mathematica returns a very complicated and apparently complex expression in
>  about 9 seconds on my 250 MHz G3 Powerbook.  Simplify takes 1min and 20
>  seconds and still returns an apparently complex expression.  If I apply
>  FullSimplify on the solution for say x[t], I get no answer in 6 minutes.
>      I have a PC version of another system that I can run on my
Powerbook using
>  Virtual PC.  It requires 6 seconds to deliver a lengthy but obviously real,
>  no Exp[(a+ I b)t] terms or (a + I b)(a - I b) terms.
>      I have never been able to learn why Mathematica is so slow in solving
>  coupled equations and returns (as USUAL unless you use Simplify) such
>  inelegant results.  Is there any computer algebra NERD out
>  there who knows the answer.  (Don't tell me to use AlgebraicManipulation; I
>  am trying to sell Mathematica to users who don't want to spend time
> learning
>  fancy tricks.)

{(a^4*C[1] + a^3*C[3] + a*b*(-2*g + b*C[3]) + 
     b^3*(g*t + b*C[1] - C[4]) + 
     a^2*b*(g*t + 2*b*C[1] - C[4]) - 
     ((a^2 + b^2)*((a*C[3] - b*C[4])*Cos[b*t] - 
          (b*C[3] + a*C[4])*Sin[b*t]))/E^(a*t))/
   (a^2 + b^2)^2, (a^4*C[2] + 
     b^2*(-g + b*(b*C[2] + C[3])) + 
     a^2*(g + b*(2*b*C[2] + C[3])) + a^3*(-(g*t) + C[4]) + 
     a*b^2*(-(g*t) + C[4]) - 
     ((a^2 + b^2)*((b*C[3] + a*C[4])*Cos[b*t] + 
          (a*C[3] - b*C[4])*Sin[b*t]))/E^(a*t))/(a^2 + b^2)^2

with Mathematica 3.0, using just

DSolve[{x''[t]== - (a x'[t]+b y'[t]),
     y''[t]== - g - (a y'[t]- b x'[t])},{x,y},t];




Takes about 2 minutes in total. On a Mac. No fancy tricks.
Of course there are always examples where system X will be better
than system Y. The real trouble is caused not by the better features
of system Y, but by the bugs of system X.


  • Prev by Date: Re: W98 vs. Linux Platform
  • Next by Date: Re: NIntegrate: <XXX> should be a machine-size complex number??.
  • Previous by thread: Re: Re: Mathematica can't win against Tiger Woods
  • Next by thread: Re: Mathematica can't win against Tiger Woods