Explicit solution can not be found using dsolve of second order differential equation
2 views (last 30 days)
Show older comments
I have a second order differential equation of the form written below
I want to solve this differential equation using analytical method. For that I have written a code (see below)
%%%%%%%%%%%%%%%%
syms t y(t)
gamma=0.01;F=1;omega0=1;kappa=0.15;omega=0.15;
equation=diff(y,2)+2*gamma*diff(y)+omega0^2*(1+4*kappa*sin(2*omega*t))*y-2*F*sin(omega*t)==0;
Dy=diff(y);
conds = [y(0)==1,Dy(0)==0];
y = dsolve(equation,conds)
%%%%%%%%%%%%%%%%%
But whenever I run the code it shows explicit solution can not be found. I am new to MATLAB. Please help regarding this.
3 Comments
Torsten
on 12 Sep 2022
Edited: Torsten
on 12 Sep 2022
This question goes deeply into theoretical results about the boundedness of solutions of differential equations of the form
xdot = A(t)*x + b(t)
I'm not able to give you an answer whether the behaviour of ode45 is correct or due to numerical instabilities.
But since the behaviour of my solution curve under
looks very regular, my guess is that x can be unbounded for certain parameter constellations.
But the rule to decide if the solution will be bounded or unbounded from the parameter values is not possible for me.
Maybe Sam Chak can elaborate a little how he came up with the value of kappa <= 0.1469.
Accepted Answer
Alan Stevens
on 12 Sep 2022
Do you have a reason to believe there is an analytical solution to this?
It is simply solved numerically, as follows:
X0 = [1, 0];
tspan = [0 100];
[t, X] = ode45(@fn, tspan, X0);
plot(t,X(:,1)),grid
xlabel('t'), ylabel('x')
function dXdt = fn(t,X)
gamma=0.01;F=1;omega0=1;kappa=0.15;omega=0.15;
x = X(1); v = X(2);
dXdt = [v;
2*F*sin(omega*t)-omega0^2*(1+4*kappa*sin(2*omega*t))*x-2*gamma*v];
end
More Answers (0)
See Also
Categories
Find more on Calculus 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!