How to refer to parameter from function in the loop.
17 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Michael
el 2 de Jun. de 2015
Comentada: Michael
el 2 de Jun. de 2015
I've got such problem. Whole code is compiling at my teachers computer, whereas on mine it says that: Undefined function or method 'y' for input arguments of type 'double' [Just the part of the code to which it refers]:
for i=round(length(t)/2):length(t)-1
if y(i,1)<-20 && y(i+1,1)>-20
t20=[t20,t(i)];
end
y is used in my func.m file. And now is the question: how to refer to it in my loop? I got no idea why it works there and not on my Matlab.
2 comentarios
Muhammad Usman Saleem
el 2 de Jun. de 2015
After looking on your question i can batter guide you....please share complete question
Muhammad Usman Saleem
el 2 de Jun. de 2015
to me this statement if y(i,1)<-20 && y(i+1,1)>-20 % is used as check means when (i,1)<-20 AND y(i+1,1)>-2 then do with t20???
Respuesta aceptada
Salaheddin Hosseinzadeh
el 2 de Jun. de 2015
Editada: Salaheddin Hosseinzadeh
el 2 de Jun. de 2015
Dear Michael,
You used y in your myfunc.m function, so it is not recognized in another function if you don't return as an output.
function y = myfunction(a,b,c)
% so this is your y function
% somewhere at the end of your function you have to assign y
% for example
y = a + b;
end
So later in another code, when you're using myfunction you get y back
% this is not myfunction (it's yourFunction) lol
function yourFunction(e,f,g)
% somewhere in this function you're calling myfunction
y = myfunction(a,b,c)
for i=round(length(t)/2):length(t)-1
if y(i,1)<-20 && y(i+1,1)>-20
t20=[t20,t(i)];
end
As I understood this is your problem, if I'm wrong please explain more ;)
Más respuestas (0)
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!