Borrar filtros
Borrar filtros

How can I run a fixed time step NARX through ode45?

2 visualizaciones (últimos 30 días)
Hello,
I am trying to let a NARX work as a control predictor for a mass-spring-damper system which requires differential equation to be described (it is therefore solved with ode45). Such NARX must produce an output for each time step, so it is called inside the function that is solved by ode45.
The problem: ode45 works with variable time steps. Therefore the input delays of the NARX belong to inconsistent time positions with respect to the constant time step series used to train the NARX.
How can I solve (or workaround) this problem? Could delay differential equation solver help me? Is there a way to modify the built-in ode45 in the way I need?
Thank you in advance.

Respuesta aceptada

Enrico Fioresi
Enrico Fioresi el 7 de Jun. de 2023
I just found out that there are these external functions (not built in the latest Matlab versions) that allow you to solve ODEs with fixed time steps (ode1, ... , ode5). I have tested them, and although they take several times longer than ode45 for the same quality result, they work for my problem.
They can be downloaded here.

Más respuestas (0)

Categorías

Más información sobre Sequence and Numeric Feature Data Workflows en Help Center y File Exchange.

Productos


Versión

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by