Calling a function using ode45 in App Designer results in unrecognized function

2 次查看(过去 30 天)
In a private method function in App Designer I am using an ode45 call that refers to another function defined within the same app and private method section. Code View underlines the function name saying "Use fra_int(app, ...) to call this function", this despite already including app as it is recommending. The code sample is shown below.
sol_id = ode45(@(ts,y) fra_int(app,ts,y,id,t), [min(t),max(t)], 0);
The function itself doesn't indicate any problems. The intent is to use ode45 to integrate the input "id" over the time span defined. Any suggestions? Thanks in advance!
function dydt = fra_int(~,ts,~,u,t)
% 1st derivative at time ts is linear interpolation over vectors t & u
dydt = interp1(t,u,ts);
end
  1 个评论
Pat Gipper
Pat Gipper 2021-1-7
Solved my own problem. I inserted function fra_int prior to the end statement of the function making the call. Once I had done this I no longer needed to include the "app" in in the ode45 call, and the first "~" is removed from the function definition.

请先登录,再进行评论。

回答(1 个)

Pat Gipper
Pat Gipper 2021-2-8
Note that I had answered my own question.

类别

Help CenterFile Exchange 中查找有关 Ordinary Differential Equations 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by