Dsolve gives extra term
1 view (last 30 days)
Show older comments
Hello, Im calculating following third term function. I got the following answer without Matlab . However when solving the function with dsolve Matlab gives me this answer .
So my question is, where is this -1/2187 coming from? Is it possible to get rid of it somehow when using dsolve?
0 Comments
Accepted Answer
Matt J
on 16 Nov 2023
Edited: Matt J
on 16 Nov 2023
syms y(x)
eqn = diff(y,x,3)+81*diff(y,x) == 3*x+8;
ytemp(x) = dsolve(eqn);
ysol(x)=dsolve(diff(y,x)==diff(ytemp,x))
2 Comments
Matt J
on 16 Nov 2023
Edited: Matt J
on 16 Nov 2023
Do you know where the number comes from
No, not exactly. I speculate dsolve converts this into a 4th order equation and then differentiates the solution to obtain y(x). If the linear terms are not collected together before the final differentiation step, a second constant results.
or can I use some command to remove it?
Yes, you can use the commands in my answer.
More Answers (1)
John D'Errico
on 16 Nov 2023
Why do you care?
Note that C1 is completely arbirtrary! C1 is an unknown constant!
So you can trivially add or subtract any constant from the result, and the solution is still as valid.
Once you apply initial conditions, then the constant will be absorbed. It will magically go away.
See Also
Categories
Find more on Matrices and Arrays 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!