weixin_48854655 2023-02-15 01:52 采纳率: 28.6%
浏览 136
已结题

最小二乘法拟合未知参数

想用matlab最小二乘法拟合非线性方程的4个未知参数,并画出原始数据和拟合曲线的图像。一直运行错误不知道怎么修改,错误使用 * 内部矩阵维度必须一致。

请指点~谢谢!函数如图片,a,b,c,d未知。

img


img

  • 写回答

10条回答 默认 最新

  • A1358722560 2023-02-15 09:24
    关注

    从报错原因上看是维度不一致,可以进行以下修改:

    xdata=[1 2 3 4 5];
    ydata=[20 40 60 80 100];
    fun=@(a, x)x.^(a (1) .*x+a (2))./(a (3).*(a(4).^(a (1) .*x+a (2))) .*gamma (1+a (1) .*x+a(2))) ;
    x0=[0.3,1.2,400,200];
    A=lsqcurvefit(fun, x0, xdata, ydata)
    ydata=fun(A, xdata) 
    x=linspace(xdata(1),xdata(end)) ;
    y=fun (A, x) ;
    plot(xdata,ydata, 'o',xdata,ydata,'*',x,y)
    

    结果为:

    A =
    
       -0.3489    0.9364  399.9999  199.9995
    
    
    ydata =
    
        0.0001    0.0009    0.0037    0.0092    0.0103
    
    

    img


    可见能够正常运行
    如果问题得到解决请点 采纳~~

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(9条)

报告相同问题?

问题事件

  • 系统已结题 2月23日
  • 已采纳回答 2月15日
  • 赞助了问题酬金15元 2月15日
  • 创建了问题 2月15日

悬赏问题

  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载