Lsqcurvefit错误:在调用replace时输出参数“s”没有被赋值

2次查看(最近30天)
JJ羊肉
JJ羊肉 2021年6月15日
编辑: JJ羊肉2021年6月15日
我使用lsqcurvefit进行大量的非线性曲线拟合。自从我升级到2020b之后,我不认为我尝试过使用它,但现在我不确定是否我犯了一个代码错误,或者是否在更新中有什么改变。
我有一个调用lsqcurvefit是有效的,另一个是无效的,我不能弄清楚。我试着编写了一个非常简单的例子来看看会发生什么。
myFun = @(a,xdata) a*xdata;函数f(x) = a*x
x = 1:20;
y = 2 * x;%只是把x乘以2
一个= lsqcurvefit (myFun 2 x, y);% A应该是2,因为我要拟合一些线性数据
然后这是我得到的错误信息:
输出参数“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,以避免得到这个错误或我输入的错误。
1评论
JJ羊肉
JJ羊肉 2021年6月15日
我不知道什么改变了,但我重新启动MATLAB,它似乎在工作?运行完全相同的代码,但现在没有错误。我还是不太清楚到底发生了什么,所以我就不讲了,以防其他人也发生类似的事情。

登录评论。

答案(0)

下载188bet金宝搏


释放

R2020b

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!