How to use griddata in simulink's matlab function block?

Hi,
I want to use griddata in simulink's matlab function block. But when I do this I saw error statements in Simulink as shown below
  • The function 'griddata' is not supported for standalone code generation. See the documentation for coder.extrinsic to learn how you can use this function in simulation.
Can anyone tell me what would be the problem
Thank you,
Manoj.

 Accepted Answer

You can turn all acceleration off so that it does not attempt to generate code.
You can turn acceleration to the next lowest level, and put the line
coder.extrinsic('griddata');
in your code near the top. Code will be generated and will be able to call into matlab.
For any higher level of acceleration you would need to rewrite the code to not call griddata.

4 Comments

Hi,
I used coder.extrinsic and matlab showed me this
  • Function output 'isdref' cannot be an mxArray in this context. Consider preinitializing the output variable with a known type.
where isdref is one of my outputs
Initialize the variable with zeros() the size that you expect it to be. That signals to the coder to pull the contents of the variable back into the workspace instead of just carrying around a pointer to the variable.
Hi, when I intialize the variable for example like: isdref=zeros(100,1);
simulink showed me the following error.
Caused by:
  • Size mismatch for MATLAB expression 'griddata'. Expected = 1x100 Actual = 1x1
But when I intialized the variable like isdref=zeros(1,1) the model is working, but it doesn't give correct result.

Sign in to comment.

More Answers (0)

Categories

Products

Release

R2017b

Community Treasure Hunt

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

Start Hunting!