Non-constant expression or empty matrix .This expression must be constant because its value determines the size or class of some expression

6 views (last 30 days)
function I am going to convert from .m to .c file using matlab coder while doing it so i am getting error in
this line of below shown code i.e fieldName = char(theFields(match))% case-sensitive field name
code :

Answers (1)

Walter Roberson
Walter Roberson on 1 Feb 2022
theParam = model.(fieldName);
That struct potentially have a different type for each field, so the type of theParam is not fixed, and so cannot be compiled for.
If you were to initialize theParam to a fixed size and type then possibly you could get further.
  3 Comments
Jeevan Kulal
Jeevan Kulal on 1 Feb 2022
Edited: Jeevan Kulal on 2 Feb 2022
function theParam = getParamESC(paramName,temp,model)
theParam = zeros(1,1,"double");
.....further code
i have initialized as shown above, but still getting the same error.

Sign in to comment.

Categories

Find more on Structures 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!