MathGroup Archive 2004

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

Search the Archive

Re: Simplifying a second order eq. system tests=PRIORITY_NO_NAME version=2.55

  • To: mathgroup at smc.vnet.net
  • Subject: [mg45967] Re: [mg45928] Simplifying a second order eq. system tests=PRIORITY_NO_NAME version=2.55
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Sat, 31 Jan 2004 05:20:30 -0500 (EST)
  • References: <200401300915.EAA04894@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

On 30 Jan 2004, at 10:15, Gunnar Lindenblatt wrote:

> Hi,
>
> I just switched from another system to Mathematica
> 5. While all "complicated" operations (like importing Wave-Files, 
> filtering,
> parameter fitting, plotting) just work fine, I still have problems 
> with the
> "basics" like solving or even simplifying equations:
>
> For example, to get the telegraph equation by self-induction and 
> capacitive
> coupling:
>
> (One can solve this problem on the space of a postage stamp...)
>
> In[1] := Remove["Global`*"]
>
> In[2] := myEqn1 = -Dt[u,x] == r i + l Dt[i,t]
>
> In[3] := myEqn2 = -Dt[i,x] == s u + c Dt[u,t]
>
>
>
> Direct approach: Using "Solve"
>
> In[4] := Solve[{myEqn1,myEqn2}, {Dt[u,{x,2}]}]
>
> results an empty set of solutions:
>
> {{}}
>
>
>
> Second try: Using "Reduce"
>
> In[5] := Reduce[{myEqn1,myEqn2}, {Dt[u,{x,2}]}]
>
> results:
>
> Reduce::nsmet: This system cannot be solved with the methods available 
> to
> Reduce.
>
> Third try: Using "Eliminate"
>
> In[6] := Eliminate[{myEqn1,myEqn2}, {Dt[i,x],Dt[i,t]}]
>
> results:
>
> True
>
> That's fine! However, it does not really help me...
>
>
>
> (By the way, the result should be:
>
> Dt[u,{x,2}]== r s u + (r c + l s) Dt[u,t] + l c Dt[u,{t,2}])
>
> Any ideas? -- Perhaps this problem is too simple for Mathematica, so it
> rejects any help ;-)
>
> - Gunnar
>
>
Solve, Reduce, Eliminate etc are all algebraic functions so they are 
obviously not going to do any differentiating for you.
Secondly, how is Mathematica to know what in your equations is a 
variable and what is a constant? The current version still can't read 
human minds.

Now, if you remember all these points than your problem becomes as 
trivial with Mathematica as it is without it:


Step 1.

This tells Mathemaitca your constants:


SetAttributes[r, Constant];
SetAttributes[l, Constant];
SetAttributes[c, Constant];
SetAttributes[s, Constant];


Step 2. Setting up your equations:

myEqn1 = -Dt[u, x] == r*i + l*Dt[i, t];
myEqn2 = -Dt[i, x] == s*u + c*Dt[u, t];

Step 3. Solving your problem:


Eliminate[{Dt[myEqn1, x], myEqn2, Dt[myEqn2, t]},
   {Dt[i, x], Dt[i, t], Dt[i, t, x]}]


Dt[u, {x, 2}] == r*s*u + c*r*Dt[u, t] + l*s*Dt[u, t] +
    c*l*Dt[u, {t, 2}]


Andrzej Kozlowski
Chiba, Japan
http://www.mimuw.edu.pl/~akoz/


  • Prev by Date: Re: Simplifying a second order eq. system
  • Next by Date: Re: Re: Nasty bug in Integrate (version 5.0)
  • Previous by thread: Simplifying a second order eq. system tests=PRIORITY_NO_NAME version=2.55
  • Next by thread: Re: Simplifying a second order eq. system