Solving differential equation with ode45

30 views (last 30 days)

I am working on an assignment to graph the solutions of dy/dt = (y-1)^2 for different initial conditions y(0) ranging from 0.01 to 1 at intervals of 0.05 and a span of 0 to 10. Below is the code I have tried. Whenever I run the code I get an error for line 2, the line where I am defining the equation. How can I resolve the error in line 2?

 function dydt = func(t,y)
dydt = (y-1)^2;
for x = 0.01:0.05:1
    tspan = [0 10];
    y0 = x;
    [t,y] = ode45('func',tspan,y0);
    plot(t, y(:,1));
    hold on
end

Accepted Answer

Torsten
Torsten on 1 Oct 2018
func=@(t,y)(y-1)^2;
tspan = [0 10];
for x = 0.01:0.05:1
y0 = x;
[t,y] = ode45(func,tspan,y0);
plot(t, y(:,1));
hold on
end

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!