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 关于腾讯云服务器中,PHP页面无法打开的问题
  • ¥60 如何把照片修复成原始拍摄图
  • ¥80 Exited too quickly (process log may have details)
  • ¥15 爬知乎登录之后内容加载不出来
  • ¥15 怎么用protues测量通频带
  • ¥15 zepelin使用sparkInterpreter 异常
  • ¥15 paho mqtt 接收不到消息
  • ¥15 函数r关于两个分量y,z方向上的图像,分开画r随y的图像,r随z的图像
  • ¥15 如何用Matlab求Pearcey函数的数值积分?