Why my simulink model is running in R2018b but not in R2015a ?
1 view (last 30 days)
I am using a Simulink Model originally developped under Matlab R2018a. The model is composed mostly of matlab functions blocks are more basic blocks. There is no other specific module needed than the ones included in Simulink.
The model runs fine in my R2018b matlab version.
But i have to make it run in Matlab R2015a version, because it's the only matlab version installed on the cluster i work on.
So I just Exported the model to previous version as it is suggested by matlab.
I got erros like "Undefined function or variable <my_variable>. The first assignment to a local variable determines its class"
This error occurs for only 2 variables in the whole model. These two act both as input and output for some functions. I attached a screenshot of the errors displayed by Simulink.
I am struggling with this issue because my model works perfectly on my local machine (where i have R2018b installed).
Do you think this might be only a version problem or a deeper error may have occured ?
Thank you for any help or tips on this issue
I wish you a very good day.
Do you use variable being passed inside as an array. The matlab function in the simulink may require the array size to be defined. I normally assign zeros(10,1) to value x and then assign x to the input variable. x is used inside later. This defines the array of length 10x1. if your function code is big and you use m_dot_air in the code. then pass the variable as m_dot_air1 as a paremeter. function(...,m_dot_air1,...). Inside the function say m_dot_air = zeros(10,1); m_dot_air = mdot_air1;
More Answers (2)
You can try the Signal Specification block from Simulink >> Signal Attributes >>. Perhaps this will work. Enable data type and signal dimension display. Format >> Port/Dsiplay >> Signal Dimensions. If you see any ? marks then that needs to be sorted out.