Need to do ode45 for various values iteratively

2 views (last 30 days)
Hi i am writing a code for ode45 for which i have to variate the value of "aplha",after each time the ode45 evaluates and the use the next value. Say i have to use alpha=10:15
function xp=check(t,x)
xp=zeros(2,1);
xp(1)=x(2);
xp(2)=alpha*x(2)-x(1);
end
running in another m-file
[T,Y]=ode45(@check,[0 0.28],[0.087 0]);
plot(T,Y(:,1),'-o')
grid on;
i need the plot of all in the iteration in a same plot,please help me Thanks

Accepted Answer

Mischa Kim
Mischa Kim on 21 Jul 2014
Edited: Mischa Kim on 21 Jul 2014
Muahmmad, you are almost there. Use a loop and something like
function myode()
alpha = 10:15;
figure
hold all
for ii = 1:numel(alpha)
[T,Y] = ode45(@check,[0 0.28],[0.087 0],[],alpha(ii));
plot(T,Y(:,1),'-o')
end
hold off
grid on;
end
function xp = check(t,x,alpha)
xp = zeros(2,1);
xp(1) = x(2);
xp(2) = alpha*x(2) - x(1);
end

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!