interpn not working inside of a Simulink function

4 次查看(过去 30 天)
The following function call:
vs = getAeroCoefficientsForVTail( 0, -10 ); works when running on the command line.
But, when running untitled_20210b.mdl, the Embedded Simulink MATLAB function calling getAeroCoefficientsForVTail complains saying "wong number of input arguments.".
This is weird behavior, since calling the function outside of the Embedded Simulink MATLAB function works.
Help appreciated in this very confusing problem.

回答(1 个)

Pavan Guntha
Pavan Guntha 2021-11-24
Hi Julien,
The issue occurs because of the follwing line in the code 'getAeroCoefficientsForVTail.m':
% Line 91:
coefficients = reshape( interpn( alpha_s, beta_s, LUT, alpha_deg, beta_deg, 'linear', -1 ), [1, 71] );
% Specifically the issue is with the arguments to the 'interpn' function.
The following error message is shown when the function is run through both MATLAB/ Simulink:
"The number of input coordinate arrays must match the dimensions of the sample values."
For more information on interpn, you could look at the documentation page here.
Hope it helps!

类别

Help CenterFile Exchange 中查找有关 Simulink Environment Customization 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by