9
У меня есть следующие функции:MATLAB: Как передать параметр функции?
function ypdiff = ypdiff(t,y)
a = 0.01;
b = 0.1;
ypdiff(1) = -a*y(1)*y(2);
ypdiff(2) = b*y(1)*y(2)-b*y(2);
ypdiff(3) = b*y(2);
ypdiff = [ypdiff(1) ypdiff(2) ypdiff(3)]';
Если я хочу, чтобы решить эту проблему, я бы вызвать функцию ode45 следующим образом:
[t y] = ode45(@ypdiff, [to tf], yo);
Но если я хочу передать параметр этой функции, как использовать функцию ode45? В частности, я пытаюсь по следующей рецептуре:
function ypdiff = ypdiff(t,y,u)
a = 0.01;
b = 0.1;
ypdiff(1) = -a*u*y(1)*y(2);
ypdiff(2) = b*u*y(1)*y(2)-b*y(2);
ypdiff(3) = b*u*y(2);
ypdiff = [ypdiff(1) ypdiff(2) ypdiff(3)]';
Great ... Спасибо большое .. Но , Я не мог заставить его работать, пока я не удалил символ «:» – Legend
yep, это была опечатка, извините;) – catchmeifyoutry
О ... Спасибо за разъяснение :) – Legend