calling a c file to use ode45

3 Ansichten (letzte 30 Tage)
kim
kim am 31 Jul. 2024
Kommentiert: James Tursa am 2 Aug. 2024
I am trying to call a c file that hold a derivative function. I want to call it with ode45, or something similar.
  1 Kommentar
James Tursa
James Tursa am 2 Aug. 2024
Have you ever written a mex function before? What does the derivative function C signature look like?

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Steven Lord
Steven Lord am 31 Jul. 2024
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."

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by