Re: Mathematica can't win against Tiger Woods
- To: mathgroup at smc.vnet.net
- Subject: [mg19692] Re: Mathematica can't win against Tiger Woods
- From: weber at math.uni-bonn.de (Matthias Weber)
- Date: Sat, 11 Sep 1999 16:36:01 -0400
- Organization: RHRZ - University of Bonn (Germany)
- References: <7r7jvo$ck4@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
In article <7r7jvo$ck4 at smc.vnet.net>, "William M. MacDonald"
<wm2 at umail.umd.edu> 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];
{x[t],y[t]}/.%[[1]];
Simplify[%];
FullSimplify[%]
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.
Best,
Matthias