Function return multiple variables

200 次查看(过去 30 天)
My question is very simple, my function has values for x,y,t but only displays values for x. I want the values of y and t to also be returned.
function [x, y, t] = IVP(c)
%UNTITLED Summary of this function goes here
% Detailed explanation goes here
syms x y h t;
h=c;
x=zeros(1,30);
y=zeros(1,30);
u=[2;1];
t=[0:1:29];
for i=2:1:30
x(1)=2;
y(1)=1;
x(i)=u(1)+h*(1.2*u(1)-0.6*u(1)*u(2));
y(i)=u(2)+h*(0.3*u(1)*u(2)-0.8*u(2));
u(1)=x(i);
u(2)=y(i);
end
plot(t,x,'b',t,y,'k');
xlabel('time') % x-axis label
ylabel('Population of Prey and Predator') % y-axis label
legend('x(t)-prey','y(t)-predator')
end
  2 个评论
Nagarjun Vinukonda
Nagarjun Vinukonda 2020-10-25
编辑:Nagarjun Vinukonda 2020-10-25
I was having the same trouble, it is because before the function you are not calling variables properly. You should call the function as provided in answer.
Joe Payne
Joe Payne 2022-2-28
Is that eulers method for solving the preditor pray system of 2 first order ODEs. Cus I'm doing a project on solving the preditor prey equation. If you are too what books/websites would you recommend?

请先登录,再进行评论。

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2016-3-26
Call the function like this
[x, y, t] = IVP(c)
  5 个评论

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Mathematics 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by