Generar código desde Curve Fitting Tool no funciona como esperaba

Hola a todos,
Estaba haciendo algunos fiteos con CFtool y, como tengo que analizar muchos datos, quería exportar el código desde CFTool y usar la función en un script. Mi idea es automatizar el proceso de analizar los vectores, así puedo llamar a la función todas las veces que necesite con todos los vectores que debo ajustar. Resulta trabajoso utilizar la interfaz de CFTool y hacer cada ajuste manualmente.
El problema es que cuando tengo el código generado con "Generate Code", la función que me entrega no puede ser usada con otro par de vectores que no sean los que estaban seleccionados en CFTool al momento de generar el código.
Por ejemplo, si genero el código para un ajuste de los vectores 'a' y 'b', obtengo la siguiente función con su código en un script:
function [fitresult, gof] = createFits(a, b)
Sin embargo, cuando trato de llamar a la función 'createFits' con otro par de vectores (presentes en mi workspace). Por ejemplo, tipeando en la Command Window:
createFits(c, d)
Obtengo los siguientes errores:
Error using fit>iFit (line 340)
Inf computed by model function, fitting cannot continue.
Try using or tightening upper and lower bounds on coefficients.
Error in fit (line 108)
[fitobj, goodness, output, convmsg] = iFit( xdatain, ydatain, fittypeobj, ...
Error in createFits (line 43)
[fitresult{1}, gof(1)] = fit( xData, yData, ft, opts );
He hasta intentado reemplazar los vectores 'a' y 'b' de todo el script de la función con 'c' y 'd' antes de llamarla, sin embargo solo funciona si la llamo con los vectores 'a' y 'b'.
¿Alguien sabe cómo modificar a la función createFits para poder usarla con cualquier par de vectores que desee?

Answers (0)

Categories

Products

Release

R2017b

Asked:

on 19 Oct 2021

Community Treasure Hunt

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

Start Hunting!