我使用lsqcurvefit进行大量的非线性曲线拟合。自从我升级到2020b之后,我不认为我尝试过使用它,但现在我不确定是否我犯了一个代码错误,或者是否在更新中有什么改变。
我有一个调用lsqcurvefit是有效的,另一个是无效的,我不能弄清楚。我试着编写了一个非常简单的例子来看看会发生什么。
myFun = @(a,xdata) a*xdata;
x = 1:20;
y = 2 * x;
一个= lsqcurvefit (myFun 2 x, y);
然后这是我得到的错误信息:
输出参数“s”(可能还有其他)在调用“replace”时没有分配。
snls错误(第269行)
msgData ={{取代(是否“详细”,“基本”)},…
lsqncommon错误(第178行)
snl (xC funfcn,磅,乌兰巴托,flags.verbosity,选项,defaultopt, initVals.F, initVals。J,调用者,…
lsqcurvefit错误(第278行)
lsqncommon (funfcn xCurrent,磅,乌兰巴托,选项,defaultopt, optimgetFlag,调用者,…
titled2错误(第4行)
一个= lsqcurvefit (myFun 2 x, y);
据我所知,“替换”这个口号有问题。函数snls.m中的M
我认为它与使用单引号'str'和双引号"str"定义的字符串有关,在"snls "的replace函数中使用之前。文件,但我不确定。我真的不知道如何调整我的调用lsqcurvefit,以避免得到这个错误或我输入的错误。