Need to do ode45 for various values iteratively

1 view (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)

Categories

Find more on Programming in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!