Re: Some problems with DSolve and NDSolve
- To: mathgroup at smc.vnet.net
 - Subject: [mg19786] Re: [mg19745] Some problems with DSolve and NDSolve
 - From: "Andrzej Kozlowski" <andrzej at tuins.ac.jp>
 - Date: Fri, 17 Sep 1999 01:36:42 -0400
 - Sender: owner-wri-mathgroup at wolfram.com
 
The problem is that your system is actually overdetermined.
First of all treat i1[t],i2[t],i1'[t],i2'[t] as independent variables. You
can then express i1[t] in terms of i2[t]:
In[1]:=
Solve[{2 i1[t] + 2 (i1'[t] - i2'[t]) == 80 t E^(-2t), 4 i2[t] + 2 (i2'[t]
- i1'[t]) == 0}, {i1[t], i1'[t], i2[t]}, {i2'[t]}]
Out[1]=
           40 t
{{i1[t] -> ---- - 2 i2[t]}}
            2 t
           E
In[2]:=
i1[t_] := Evaluate[i1[t] /. %[[1]]]
In[3]:=
i1[t]
Out[3]=
40 t
---- - 2 i2[t]
 2 t
E
Now the two differential  equations turn into the same one:
In[5]:=
2 i1[t] + 2 (i1'[t] - i2'[t]) == 80 t E^(-2t) // Simplify
Out[5]=
     -80    160 t
0 == ---- + ----- + 4 i2[t] + 6 i2'[t]
      2 t    2 t
     E      E
In[6]:=
 4 i2[t] + 2 (i2'[t]
- i1'[t]) == 0 // Simplify
Out[6]=
-80    160 t
---- + ----- + 4 i2[t] + 6 i2'[t] == 0
 2 t    2 t
E      E
So we really need to solve just one of them:
In[7]:=
           80     160 t
DSolve[{-(----) + ----- + 4 i2[t] + 6 i2'[t] == 0, i2[0] == 0}, i2[t], t]
           2 t     2 t
          E       E
Out[7]=
                  (4 t)/3
           5 - 5 E        + 20 t
{{i2[t] -> ---------------------}}
                    2 t
                   E
In[8]:=
i2[t_] := Evaluate[i2[t] /. %[[1]]]
Hence the solution is:
In[11]:=
{i1[t], i2[t]}
Out[11]=
                  (4 t)/3                 (4 t)/3
 40 t   2 (5 - 5 E        + 20 t)  5 - 5 E        + 20 t
{---- - -------------------------, ---------------------}
  2 t              2 t                      2 t
 E                E                        E
One can easily verify that it is correct.
--
Andrzej Kozlowski
Toyama International University
JAPAN
http://sigma.tuins.ac.jp
http://eri2.tuins.ac.jp
----------
>From: "Chee Lim Cheung" <cheelc at mbox2.singnet.com.sg>
To: mathgroup at smc.vnet.net
>To: mathgroup at smc.vnet.net
>Subject: [mg19786] [mg19745] Some problems with DSolve and NDSolve
>Date: Wed, Sep 15, 1999, 4:53 PM
>
> Hi MathGroupers,
>
> I was somewhat surprised that DSolve is unable to solve the following
> relatively innocuous system of 1st-order ODEs:
>
> DSolve[{2 i1[t] + 2 (i1'[t] - i2'[t]) == 80 t E^(-2t), 4 i2[t] + 2 (i2'[t]
> - i1'[t]) == 0, i1[0] == 0, i2[0] == 0}, {i1[t],i2[t]}, t]
>
> The normally reliable NDSolve also falls down on the following:
>
> NDSolve[{2 i1[t] + 2(i1'[t] - i2'[t]) == 80 t E^(-2t), 4 i2[t] + 2(i2'[t] -
> i1'[t]) == 0, i1[0] == 0, i2[0] == 0}, {i1[t], i2[t]}, {t, 0, 1}]
>
> What is wrong?
>
> Thanks
> Chee
>