solve first-order ODE

18 次查看(过去 30 天)
Vicky Deng
Vicky Deng 2020-10-14
编辑: madhan ravi 2020-10-14
Hi,
i tried to solve this first-order ode problem but it keeps show "Unable to find symbolic solution"
here is my code:
ode = diff(y,t) == sin( exp(y - t/2) - t^2/2 );cond = y(0) == 0;ySol(t) = dsolve(ode,cond)
ySol(10)
thanks a lot!

回答(2 个)

madhan ravi
madhan ravi 2020-10-14
编辑:madhan ravi 2020-10-14
ode = @(t, Y) sin( exp(Y - t/2) - t^2/2 )
ode45(ode, [0 2*pi], 0)

Ameer Hamza
Ameer Hamza 2020-10-14
编辑:Ameer Hamza 2020-10-14
It means that MATLAB is unable to find a closed-form solution to your ODE. It might be the case that such a solution does not exist in terms of elementary functions. You need to use a numerical solution
IC = 0;
tspan = [0 10];
[t, y] = ode45(@odefun, tspan, IC);
plot(t, y, '-o')
function dydt = odefun(t, y)
dydt = sin(exp(y - t/2) - t^2/2);
end

类别

Help CenterFile Exchange 中查找有关 Ordinary Differential Equations 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by