How do i solve a second order ODE with variable coefficients?
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Enterprixe
am 25 Feb. 2017
Beantwortet: Star Strider
am 25 Feb. 2017
I am fairly new to MATLAB and i don't really know how to solve this equation. y''+(exp(-10t)+sen(10t))y'+y=0 If anyone could help me it would me much appreciated
0 Kommentare
Akzeptierte Antwort
Star Strider
am 25 Feb. 2017
This seems to work:
% % % y''+(exp(-10t)+sen(10t))y'+y = 0
syms t y(t) Y
D1y = diff(y,t);
D2y = diff(y,t,2);
Eqn = D2y + exp(-10*t) + sin(10*t)*D1y + y == 0;
yode = odeToVectorField(Eqn);
Yodefcn = matlabFunction(yode, 'Vars',[t Y]);
% Yodefcn = @(t,Y) [Y(2);-exp(t.*-1.0e1)-sin(t.*1.0e1).*Y(2)-Y(1)];
tspan = [0 15];
Y0 = [0 0];
[T,Y] = ode45(Yodefcn, tspan, Y0);
figure(1)
plot(T, Y)
grid
If you do not have the Symbolic Math Toolbox, delete that part of my code and use the commented ‘Yodefcn’ instead, with the rest of my code.
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Symbolic Math Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!