Explicit solution can not be found using dsolve of second order differential equation

1 次查看(过去 30 天)
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 个评论
Abhik Saha
Abhik Saha 2022-9-12
Hi @Torsten But still there are some cases I mean range of omegas like 0.47-0.50, 0.86-1.1 where I get the divergent solution
Torsten
Torsten 2022-9-12
编辑:Torsten 2022-9-12
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.

请先登录,再进行评论。

采纳的回答

Alan Stevens
Alan Stevens 2022-9-12
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

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Calculus 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by