why 'for' doesnt affect inner function?

5 visualizaciones (últimos 30 días)
Witold Sure
Witold Sure el 23 de Jun. de 2018
Comentada: Witold Sure el 23 de Jun. de 2018
hello Guys! im trying to have variable 'i' included in outside function called @witodefinicje. I wanna run ode for different 'i' inside @. The problem is that inside @ it stays the same. I have no clue whats wrong, please help
for i=0:50:200
j=j+1;
t = 0:0.01:20;
X0 = zeros(12,1);
X0(10,1) = -pi/2;
X0(11,1) = pi/2;
[t X] = ode45(@witodefinicje, t, X0);
A(j,1)=max(X(600:1800,8));
A(j,2)=i;
end
  2 comentarios
Jan
Jan el 23 de Jun. de 2018
Today I've formatted the code for you. Please do this by your own in following questions. Thanks. See the "{} Code" button.
What is "an outside function"? What does "inside @" mean? What stay the same?
Witold Sure
Witold Sure el 23 de Jun. de 2018
thank you, Jan. An outside function is a function included in other file then one you see. Inside @witodefinicje, parameter 'i' does not change, even though 'for' should work. Or am I wrong?

Iniciar sesión para comentar.

Respuesta aceptada

Jan
Jan el 23 de Jun. de 2018
Editada: Jan el 23 de Jun. de 2018
A bold guess:
X0 = zeros(12,1);
X0(10,1) = -pi/2;
X0(11,1) = pi/2;
t = 0:0.01:20;
for i = 0:50:200
[t, X] = ode45(@(t,x) witodefinicje(t, x, i), t, X0);
j = j + 1;
A(j,1) = max(X(600:1800, 8));
A(j,2) = i;
end
And in the function to be integrated:
function witodefinicje(t, x, i)
...
  1 comentario
Witold Sure
Witold Sure el 23 de Jun. de 2018
I suspected I've got to regard to fuction parameters, however I didn't know how to code it, due to too little experience. Thanks Jan, you're the man!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre App Building en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by