Group Abstract Group Abstract

Message Boards Message Boards

2
|
23 Views
|
3 Replies
|
6 Total Likes
View groups...
Share
Share this post:
GROUPS:

DSolve v.s. copilot for Coulomb damping

Recently, I found that Google Copilot can solve a nonlinear but solvable equation like coulomb damping[1], just by searching for "r''(t)=-r(t)-sgn(r'(t))/10, r(0)=0, r'(0)=1" [2], whether Copilot's time-dependent answer is correct or not aside.

Is it possible to refine the following command DSolve[{r''[t] == -r[t] - Sign[r'[t]]/10, r[0] == 0, r'[0] == 1}, r[t], t] to obtain the same analytic result in Mathematica v.14.0 ?

[1] https://en.wikipedia.org/wiki/Coulomb\_damping

[2] https://www.google.com/search?q=r%27%27%28t%29%3D+-r%28t%29+-sgn%28r%27%28t%29%29%2F10%2C+r%280%29%3D0%2C+r%27%280%29%3D1

POSTED BY: Isao Maruyama
3 Replies

POSTED BY: Michael Rogers

This equation is problematic to my eye. The first alarm is that it contains Sign, which is discontinuous. Next, both Google and NDSolve claim that the solution becomes a nonzero constant after a certain instant, but this makes the two sides of the differential equation not the same:

eq = r''[t] == -r[t] - Sign[r'[t]]/10;
solNum = NDSolveValue[{eq, r[0] == 0, r'[0] == 1}, r, {t, 0, 20}]
Plot[solNum[t], {t, 0, 20}]
Plot[Evaluate[List @@ eq /. r -> solNum], {t, 15, 20}]

This is out of my expertise.

POSTED BY: Gianluca Gorni

POSTED BY: Mariusz Iwaniuk
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard