[Date Index]
[Thread Index]
[Author Index]
Re: Problem with a 1st order IV ODE (nonlinear)
*To*: mathgroup at smc.vnet.net
*Subject*: [mg102579] Re: [mg102564] Problem with a 1st order IV ODE (nonlinear)
*From*: danl at wolfram.com
*Date*: Sat, 15 Aug 2009 05:33:40 -0400 (EDT)
*References*: <200908140959.FAA01407@smc.vnet.net>
> I am using Mathematica 7.0 on a Win2K platform and noticed that when I
> execute the following:
>
> R = 10;
> k = 0.01;
> sol = DSolve[{h'[t] == 1/(h[t] (2 R - h[t])) - k, h[0] == 0}, h[t], t]
> // FullSimplify
>
> I get two possible solutions:
> {{h[t] -> -0.005 t - 0.005 Sqrt[t (4000. + t)]}, {h[t] -> -0.005 t +
> 0.005 Sqrt[t (4000. + t)]}}
>
> which, I believe are correct. However, if I try to get an analytical
> solution in terms of R and k,
>
> Clear[R, k]
> sol = DSolve[{h'[t] == 1/(h[t] (2 R - h[t])) - k, h[0] == 0}, h[t], t]
> // FullSimplify
>
> I get the following two output messages:
> Solve::tdep: The equations appear to involve the variables to be solved
> for in an essentially non-algebraic way.
> DSolve::bvnul: For some branches of the general solution, the given
> boundary conditions lead to an empty solution.
>
> Note, that R > 0, and k >= 0..
> Is there anyway that I can get an analytical solution to this problem
> for these conditions?
>
> --V. Stokes
I tend to think not. Your special solution arises from the relation k=1/R^2.
To see this, one can do as follows.
In[46]:= Unprotect[Solve];
Solve[args__] := Null /; (Print[solve[args]]; False)
Notice that I call the second variable r2 (not r^2), and explicitly invert
it in the input.
In[48]:= sol =
DSolve[{h'[t] == 1/(h[t] (2*r - h[t])) - 1/r2, h[0] == 0}, h[t], t]
During evaluation of In[48]:= solve[-r2+2 r h[t]-h[t]^2+2 r r2 h[t]
(h^\[Prime])[t]-r2 h[t]^2 (h^\[Prime])[t]==0,(h^\[Prime])[t]]
During evaluation of In[48]:= solve[-((r2
ArcTan[(-r+h[t])/Sqrt[-r^2+r2]])/Sqrt[-r^2+r2])+h[t]==-(t/r2)+C[1],h[t]]
During evaluation of In[48]:= Solve::tdep: The equations appear to involve
the variables to be solved for in an essentially non-algebraic way. >>
During evaluation of In[48]:= solve[{InverseFunction[-((r2
ArcTan[(-r+#1)/Sqrt[-r^2+r2]])/Sqrt[-r^2+r2])+#1&][C[1]]==0},{C[1]},VerifySolutions->True]
During evaluation of In[48]:= solve[{InverseFunction[-((r2
ArcTan[(-r+#1)/Sqrt[-r^2+r2]])/Sqrt[-r^2+r2])+#1&][C[1]]==0},{C[1]},VerifySolutions->True]
During evaluation of In[48]:= DSolve::bvnul: For some branches of the
general solution, the given boundary conditions lead to an empty solution.
>>
Out[48]= {}
If you look at the second solve[...] printed, you see there is a
singularity when r2 is r^2, and thus something different might happen in
that case. We now try it explicitly.
In[50]:= sol =
DSolve[{h'[t] == 1/(h[t] (2*r - h[t])) - 1/r^2, h[0] == 0}, h[t], t]
During evaluation of In[50]:= solve[-r^2+2 r h[t]-h[t]^2+2 r^3 h[t]
(h^\[Prime])[t]-r^2 h[t]^2 (h^\[Prime])[t]==0,(h^\[Prime])[t]]
During evaluation of In[50]:= solve[h[t]+r^2/(-r+h[t])==-(t/r^2)+C[1],h[t]]
During evaluation of In[50]:= solve[{(r^3+r^2 C[1]+Sqrt[-r^4 (3 r^2+2 r
C[1]-C[1]^2)])/(2 r^2)==0},{C[1]},VerifySolutions->True]
During evaluation of In[50]:= solve[{(r^3+r^2 C[1]-Sqrt[-r^4 (3 r^2+2 r
C[1]-C[1]^2)])/(2 r^2)==0},{C[1]},VerifySolutions->True]
Out[50]= {{h[t] -> (-t - Sqrt[t (4 r^3 + t)])/(
2 r^2)}, {h[t] -> (-t + Sqrt[t (4 r^3 + t)])/(2 r^2)}}
Daniel Lichtblau
Wolfram Research
Prev by Date:
**Re: ListLogLinearPlot with two y-axis**
Next by Date:
**Re: Bug: ListPlot and Tooltip**
Previous by thread:
**Re: Problem with a 1st order IV ODE (nonlinear)**
Next by thread:
**Re: Problem with a 1st order IV ODE (nonlinear)**
| |