MathGroup Archive 1999

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

Search the Archive

Re: 2 coupled diff. eqns

  • To: mathgroup at smc.vnet.net
  • Subject: [mg21145] Re: 2 coupled diff. eqns
  • From: Bojan Bistrovic <bojanb at physics.odu.edu>
  • Date: Fri, 17 Dec 1999 01:21:47 -0500 (EST)
  • Organization: Old Dominion Universityaruba
  • References: <831vap$g58@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Henk Jansen wrote:
> 
> I have the following set of two coupled differential equations:
> 
>                     c f
>    f' = a -  ----------------
>                  ___________
>              \  /  2    2
>               \/  f  + g
> 
>                     c g
>    g' = b -  ----------------
>                  ___________
>              \  /  2    2
>               \/  f  + g
> 
> where a, b and c are constants. Trying to solve this system (if
> possible), after typing
> 
> DSolve[
>     {D[f[t], t] == a - (w f[t])/(Sqrt[f[t]^2 + g[t]^2])\),
>      D[g[t], t] == b - (w g[t])/(Sqrt[f[t]^2 + g[t]^2])\)
>     },
>     {f[t], g[t]},
>     t]
> 
> Mathematica returns with the following message:
> 
>    "Part::partw: Part 2 of g'[f] does not exist."
> 
> without solution. I have two questions:
> 
> 1. Does anyone know how to interprete this message?
> 
> 2. If the system is not solvable, is there a clever coordinate
> transformation for which the system can be solved?
> 
> Thanks,
> 
> Henk Jansen
> 
Hi.
I have no idea about 1.; it appears to be a bug (at least to me). As for
2., yes, there's a relatively good coordinate transforamtion. Whenever
you have something like Sqrt[f^2+g^2] it's ALWAYS a good idea to try a
transformation   to polar coordinates :

f[t] = R[t] Cos[T[t]]
g[t] = R[t] Sin[T[t]]

This eliminates the squre root; the price you have to pay are the
trigonometric functions. After taking the derivate of the transforamtion
you get

f'[t] = R'[t] Cos[T[t]] + R[t] T'[t] Sin[T[t]]
g'[t] = R'[t] Sin[T[t]] - R[t] T'[t] Cos[T[t]]

Put these back into your original equations and you already have
something mathematica might solve (meaning, you'll get an output; I have
no idea will it be usefull). There's however even better thing to do:
Multiply the first equation by Cos[T[t]] and the second by Sin[T[t]] and
add them. You get one equation; then multiply again the first one with
Sin[T[t]] and the second one wiht Cos[T[t]] and substract the second one
from the first one. You get the new systme which looks much nicer:

R'[t]        = a Cos[T[t]] + b Sin[T[t]] - w
R[t] T'[t]   = a Sin[T[t]] - b Cos[T[t]] 

Putting this into DSolve will still give you some kind of a solution for
R[t] and something not wuite readable for T[t]

It's not an ideal solution but I hope it helps


-- 
-------------------------------------------------------------
Bojan Bistrovic,                       bojanb at physics.odu.edu  
Old Dominion University, Physics Department,      Norfolk, VA
-------------------------------------------------------------


  • Prev by Date: Re: Setting order of variables other than alphabetical.
  • Next by Date: Re: an answer to Q: efficient in-place list elementreplacement?
  • Previous by thread: Re: 2 coupled diff. eqns
  • Next by thread: Partial evaluation