How to solve 2nd ODE equation in numerical and analytical method at same plot graph?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Shreyas Sangamesh
am 28 Sep. 2022
Kommentiert: Star Strider
am 28 Sep. 2022
Hello,
I am was looking for help to solve this equation
d^x/dt^2 + dx/dt + x =1
in Matlab, can I get help to solve this equation of plot the numerical solutions and analytical solutions in the same graph and compare them.
with ode45
can anyone help me with this code?
0 Kommentare
Akzeptierte Antwort
Star Strider
am 28 Sep. 2022
Interesting problem!
I was curious enough to do the entire simulation to see what the results are —
syms x(t) x0 Dx0 T Y
Dx = diff(x);
D2x = diff(Dx);
DEqn = D2x + Dx + x == 1;
xs = dsolve(DEqn, x(0)==x0, Dx(0)==Dx0)
xs = subs(xs, {x0,Dx0},{1,1}) % Numerical Initial Conditions
[VF,Sbs] = odeToVectorField(DEqn)
DEfcn = matlabFunction(VF, 'Vars',{T,Y})
tspan = [0 10];
[t,x] = ode89(DEfcn, tspan, [1 1]);
figure
fplot(xs, tspan, 'DisplayName','Analytic')
hold on
plot(t, x(:,1), 'DisplayName','Numeric')
hold off
grid
xlabel('Time')
ylabel('x_1(t)')
legend('Location','best')
They match almost exactly.
.
4 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Ordinary Differential Equations 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!