Ode45 matlab coder function handle

3 views (last 30 days)
laminarflow
laminarflow on 20 Nov 2015
Answered: Ryan Livingston on 31 Dec 2015
Hi,
I am trying to generate a mex-file for the ode45 function. The problem is that when I try to auto-define the inputs, the coder won't take the function handle:
''Class function_handle is not supported by coder.type''
How can I fix this?
Thanks

Answers (1)

Ryan Livingston
Ryan Livingston on 31 Dec 2015
You cannot pass a function handle directly to a MEX file generated by MATLAB Coder. Just write a wrapper that calls ode45 in the way you like:
function y = foo(x)
%#codegen
y = ode45(@someFun,...);
and then generate code for foo:
codegen foo -args 1:10

Community Treasure Hunt

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

Start Hunting!