Simulink Error "Attempt to extract field 'p1' from 'mxArray'"
Afficher commentaires plus anciens
I'm creating a parabolic curve fit then trying to send the parameters to another function block. It works in Matlab, but when I put it into function block
function coefficients = my_block(Start, Steps, Setpoint)
coder.extrinsic('fit');
%#codegen
coefficients = [0;0;0];
x = [0; Steps; Steps*2];
y = [Start; Setpoint; Start];
f = fit(x,y,'poly2');
coefficients(1) = f.p1;
coefficients(2) = f.p2;
coefficients(3) = f.p3;
I get the error above. Simple fix?
Réponses (2)
Swatantra Mahato
le 8 Nov 2021
Hi Dave,
The output of the extrinsic function 'fit' would be an mxArray, which is likely leading to the error when trying to extract 'p1' in the line
coefficients(1) = f.p1;
You can refer to the following link to work with output of an extrinsic function
Hope this helps
Jere Knuutinen
le 6 Août 2024
0 votes
Did you find solution for this problem?
Catégories
En savoir plus sur Linear and Nonlinear Regression dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!