During compiling came across error 'too many input arguments'

1 visualización (últimos 30 días)
Program is solving second order differential equation using fourth order runga kutta method. Sliding mode control program is used as the controller. Error in line 15.

Respuesta aceptada

Walter Roberson
Walter Roberson el 24 de Mayo de 2016
You should get rid of the "clear all": it can only cause you problems inside functions.
Your line 15 has
control(state,time)
which shows the routine named control called with a state and a time. But further down you define the function control as taking a single argument named x not with two arguments.
  4 comentarios
Walter Roberson
Walter Roberson el 24 de Mayo de 2016
Your code passes time to Derivatives but Derivatives does not expect a second argument.
You are not using time in Derivatives so you probably do not need to pass it if your Derivatives routine is correct.
I see in your revised code that in your first call to control, you pass the entire vector of time but in all your other calls to control you pass only a variant of the current time, such as time(idx) plus something. This is inconsistent and hints at a logic error in your code.
On the other hand, your control function ignores the time that it is being passed so there is no point in passing the time if your control routine is correct.

Iniciar sesión para comentar.

Más respuestas (1)

SHIJINA P P
SHIJINA P P el 25 de Mayo de 2016
I got it, Thank you sir.

Categorías

Más información sobre Numerical Integration and Differential Equations en Help Center y File Exchange.

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by