Message Boards Message Boards

GROUPS:

Find Boundary value for nonlinear differential equation?

Posted 21 days ago
267 Views
|
3 Replies
|
0 Total Likes
|

y(0)=2; y'(x)=(0.004-(0.022^220^2)/(y(x)^(10/3)))/(1-((20^2)/(9.81(y(x))^3))), y(L)=3

I wanna compute value L.

When I enter above equation, it just gives another differential equation.

How can I compute L with Wolfram Alpha?

3 Replies

Do you what compute this: 0.022^220^2 value ? It's: 1.810305182819054738210^-80227

It seems there is no solution:

lsg = NDSolve[
   {y'[x] == (0.004 - (0.022^220^2)/(y[x]^(10/3)))/(1 - ((20^2)/(9.81 (y[x])^3))),  y[0] == 2},
   y, {x, 0, 5000}];
fy = y /. lsg[[1, 1]];
Plot[fy[x], {x, 0, 5000}]

Look at your y'.

Map[Together, (0.004 - (0.022^220^2)/(y[ x]^(10/3)))/(1 - ((20^2)/(9.81 (y[x])^3))), {1}] // Chop // FullSimplify

You start with y[0] == 2. So y' is negative and y will never reach values to change the sign of y', so y will become smaller and smaller.

Here is another approach to your problem (please name the plot given after NDSolve as pl1)

e1 = (0.004 - (0.022^220^2)/(y^(10/3)))/(1 - ((20^2)/(9.81 (y)^3)));
e2 = e1 // Chop // FullSimplify
SetOptions[Integrate, GenerateConditions -> False];
jj = Integrate[(y^3 - b)/(a y^3), {y, 2, yy}]
lsg = Solve[jj == t, yy][[3, 1]];
fy = yy /. lsg;

fy /. t -> 0 /. a -> .004 /. b -> 40.7747
Chop[fy /. t -> 0 /. a -> .004 /. b -> 40.7747]

D[fy, t] - a fy^3/(fy^3 - b) // FullSimplify

ffy = fy /. a -> .004 /. b -> 40.7747;

pl2 = Plot[Chop[ffy /. t -> tt], {tt, 300, 2700},   PlotStyle -> {Thick, Red}]

You see that the (appoximated) diff. equation is fulfilled and the solution is essentially equal to the result of NDSolve:

Show[pl1, pl2]

y[L] =3 is reached for a negative argument:

FindRoot[ffy == 3, {t, -473}]

(*  {t->-457.8940972222226`-4.814826364873225`*^-13 I} *)
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract