Why does my code open the code for fittype, and then ask me to click continue?

1 visualización (últimos 30 días)
I am a fairly new Matlab user. Right now, I am trying to create a code to fit a surface with 4 coefficients. Here is my code:
ft=fittype( @(a, b, c, d, x, y) a.*x.^b+c.*x.^2.*y+d.*x.^1.5.*y.^0.5, 'independent', {'x', 'y'},'dependent', 'z' );
fit=fit([polarization,frequency],losses,ft);
Where polarization, frequency, and losses are all 55x1 double arrays. However, when I run the code, it will stop, and display this message in the command window:
314 [varargin{:}] = convertStringsToChars(varargin{:});
K>>
It then takes me to the fittype.m file and leaves me at line 314. The code then will not run anymore until I hit enter on my keyboard and then continue on the top panel. However, the curve it produces doesn't seem logical, but that may be a different problem. Why does this happen and how can I fix it? Any help is greatly appreciated. Thank you.

Respuesta aceptada

ProblemSolver
ProblemSolver el 5 de Jul. de 2023
This is because you are passing different data type:
ft=fittype( @(a, b, c, d, x, y) a.*x.^b+c.*x.^2.*y+d.*x.^1.5.*y.^0.5, 'independent', {'x', 'y'},'dependent', 'z' );
This line is expecting you to enter character arrays (as in strings) for the independent and dependent arguments, however you are passing cell arrays of string instead. Therefore you have to convert those using a MATLAB function called 'char'. Something like this:
x = char('x');
This should resolve the issue.

Más respuestas (0)

Categorías

Más información sobre Linear and Nonlinear Regression en Help Center y File Exchange.

Productos


Versión

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by