Why does NextTimeHit always return 0 in Matlab S-Functions?

I need to compute the step size (i.e. dt) in the discrete update method of a Matlab S-Function whose Sample Time is set to be "Inherited" (i.e. [-1 0]). However, regardless of the Sample Time specification (e.g. Inherited, Continuous, Discrete, Variable), the "block.NextTimeHit" always return "0" even though it is decleared as R/W in its Matlab Documentation.
  1. Why does NextTimeHit always return 0 in Matlab S-Functions?
  2. How can I infer the actual step size in update method of (Discrete) Matlab S-Functions for inherited and variable sample times?

 Respuesta aceptada

Archit Dhanani
Archit Dhanani el 25 de Jul. de 2019
the NextTimeHit is the API used specifically for variable discrete rates. You can read more about it in the page:
To get the actual step size used in the update method, you will have to use Dwork vectors. The link below demonstrates an example for using Dwork vectors:

Más respuestas (0)

Productos

Versión

R2017b

Etiquetas

Preguntada:

el 3 de Jul. de 2018

Respondida:

el 25 de Jul. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by