dr/dt* ln(a*r*dr/dt)=b/r^7 how to solve this equation

1 view (last 30 days)
kindly help me to solve this equation a = 0.5, b=2, r(0)=1.2
Walter Roberson
Walter Roberson on 20 Feb 2018
There is no easy solution for that. The rule is:
r(t) = RootOf(int(P^7*LambertW(1/P^6), P = Z .. 6/5)+2*t)
which is to say that at each point, t, r(t) is the lower bound of the integral P^7*LambertW(1/P^6) such that integrating over P from lower bound to 6/5, plus 2*t, gives 0. (P is an arbitrary variable name here.)

Sign in to comment.

Answers (1)

Roger Stafford
Roger Stafford on 20 Feb 2018
Here is how I would approach your problem. First we write
a*r*dr/dt*log(a*r*dr/dt) = a*b/r^6
Now define w:
w = log(a*r*dr/dt)
and therefore
a*r*dr/dt = exp(w)
exp(w)*w = a*b/r^6
w = lambertw(a*b/r^6)
a*r*dr/dt = exp(lambertw(a*b/r^6))
dr/dt = 1/(a*r)*exp(lambertw(a*b/r^6))
Now finally you have a differential equation in the form that Matlab's ode functions can evaluate numerically, provided you have the lambertw function available.
  1 Comment
Torsten on 21 Feb 2018
Alternatively, by setting
y1 = r
y2 = dr/dt,
you can use ODE15S to solve the differential-algebraic system
y1' = y2
y2*log(a*y1*y2)-b/y1^7 = 0
Best wishes

Sign in to comment.


Find more on Physics in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!