Function return multiple variables

342 visualizzazioni (ultimi 30 giorni)
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 Commenti
Nagarjun Vinukonda
Nagarjun Vinukonda il 25 Ott 2020
Modificato: Nagarjun Vinukonda il 25 Ott 2020
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 il 28 Feb 2022
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?

Accedi per commentare.

Risposta accettata

Azzi Abdelmalek
Azzi Abdelmalek il 26 Mar 2016
Call the function like this
[x, y, t] = IVP(c)
  5 Commenti

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Mathematics in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by