calling a c file to use ode45

3 次查看(过去 30 天)
kim
kim 2024-7-31
I am trying to call a c file that hold a derivative function. I want to call it with ode45, or something similar.
  1 个评论
James Tursa
James Tursa 2024-8-2
Have you ever written a mex function before? What does the derivative function C signature look like?

请先登录,再进行评论。

回答(1 个)

Steven Lord
Steven Lord 2024-7-31
You can pass a function handle to a MEX-file that you've created from a C or C++ file into ode45 as long as the signature of that MEX-file matches the signature ode45 requires its ODE function (the first input) to have. See the description of the odefun input argument on the ode45 documentation page.
"The function dydt = odefun(t,y), for a scalar t and a column vector y, must return a column vector dydt of data type single or double that corresponds to f(t,y). odefun must accept both input arguments t and y, even if one of the arguments is not used in the function."

类别

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