Clear Filters
Clear Filters

Tunable parameter problem.

13 views (last 30 days)
Lucas Maiß
Lucas Maiß on 23 Nov 2017
Edited: Lucas Maiß on 29 Nov 2017
Hello Matlab Team,
we recently updated MATLAB from 2014b to 2016a. After doing so, we got a lot of errors from the coder that we haven't had before.
Error: Simulink Coder Error: This block is unable to get the address of its parameter "InputValues"because an operation converted the parameter to the non-trivial tunable expression "Variable(1:max(Variable))". Blocks that require a parameter address support direct use of tunable parameters. However, when an operation such as a data type conversion or math operation is applied, a non-trivial expression that cannot be accessed by address can result. For more information, including limitations and workarounds, see sections in the Simulink Coder documentation on tunable expressions and data type considerations for tunable workspace parameters.
This error could be solved by using "Variabel" only and then addapting the workspace, but then the next error occured.
Error: Simulink Coder Error: This block is unable to get the address of its parameter "RowIndex"because an operation converted the parameter to the non-trivial tunable expression "Variable([true diff(Variable)==1])". Blocks that require a parameter address support direct use of tunable parameters. However, when an operation such as a data type conversion or math operation is applied, a non-trivial expression that cannot be accessed by address can result. For more information, including limitations and workarounds, see sections in the Simulink Coder documentation on tunable expressions and data type considerations for tunable workspace parameters.
So my question is, why does MATLAB 2016a doesn't support this operations and is there a workaround? We got them all over the model and would not like to change it everywhere.
Sincerely
Lucas Maiß
  1 Comment
Lucas Maiß
Lucas Maiß on 29 Nov 2017
I found out that I can set the "Default parameter behavior = Inlined" so the errors does not occure. But I can not tune them any more. Is it possible to set the system to tunable and some blocks itself to inlined? Or can I use something like eval so it would work?

Sign in to comment.

Answers (0)

Categories

Find more on Simulink Functions in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!