Why I do not have States or Inputs when using findop?

5 views (last 30 days)
I am trying to linearize a Simulink model of a Neural Network and I am having problems when setting the operating points. I set the Inputs and Outputs and compile the Simulink model, but then when I use 'findop' there are neither states nor Inputs and I get an error saying 'There are no free variables to optimize. Free either a state or an input.'.
How can I create/find operating Points?
This is the code:
>> sim1
Model Compilation for sim1 successful.
>> sim1_io(1)=linio('sim1/From Workspace',1,'input');
>> sim1_io(2)=linio('sim1/NN',1,'output');
>> setlinio('sim1',sim1_io);
>> sim1
>> opsim = findop('sim1',1)
Operating Point for the Model sim1.
(Time-Varying Components Evaluated at time t=1)
States: None
----------
Inputs: None
----------
>> opspec=operspec('sim1');
>> opspec=operspec('sim1');
>> opspec=initopspec(opspec,opsim);
>> opss=findop('sim1',opspec);
There are no free variables to optimize. Free either a state or an
input.

Answers (1)

Arkadiy Turevskiy
Arkadiy Turevskiy on 12 Dec 2016
States comes from blocks such as integrators or transfer functions or state space systems. In a neural net I don't think you have any integrators, and therefore you are not getting any states.
What is it that you are trying to do, I mean, can you explain why you need to trim your model?

Categories

Find more on Model Predictive Control Toolbox in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!