| 查看: 920 | 回复: 1 | |||
[求助]
求助。matlab共享参数类的自定义公式拟合修改问题 已有1人参与
|
是共享参数类的自定义公式模拟,目的是求5个系数,y1-x1对应q0固定系数,y2-x2对应q1固定系数,依次类推四个系数。我这个代码是肯定不行呀- -,想要知道这个能不能求帮忙修改,并且把这几个曲线绘制到一张图上,谢谢谢谢谢谢![]() clear clc data = [36.287 34.765 38.875 37.683 33.580 27.010 34.720 35.470 42.726 37.060 38.475 42.038 31.388 30.550 33.480 37.460 44.688 38.646 40.391 43.510 30.339 24.934 25.711 29.321 43.517 39.432 41.318 42.936 29.632 26.228 27.102 28.644 44.222 38.646 42.530 41.718 28.211 24.991 27.792 29.638 43.771 40.398 42.454 44.425 27.862 25.291 26.591 27.814] q0=0; q1=0.2; q2=0.35; q3=0.5; x1 = data(:,1); x2 = data(:,2); x3 = data(:,3); x4 = data(:,4); y1 = data(:,5); y2 = data(:,6); y3 = data(:,7); y4 = data(:,8); f = @(a,b,c,d,e)[a.*x1./(b*q0^3+c*q0^2+d*q0+e); a.*x2./(b*q1^3+c*q1^2+d*q1+e); a.*x3./(b*q2^3+c*q2^2+d*q2+e); a.*x4./(b*q3^3+c*q3^2+d*q3+e)] [X,RESNORM,RESIDUAL,EXITFLAG,OUTPUT,LAMBDA] = lsqcurvefit(f, [1 1 1 1 1 ], [x1;x2;x3;x4],[y1;y2;y3;y4],[0 0 0 0 0 0],[],[]) |
» 本帖@通知
» 猜你喜欢
复试调剂
已经有4人回复
东华理工大学化材专业26届硕士博士申请
已经有4人回复
328求调剂
已经有6人回复
复试调剂
已经有10人回复
焦虑
已经有7人回复
一志愿哈工大材料324分求调剂
已经有5人回复
267一志愿南京工业大学0817化工求调剂
已经有5人回复
304求调剂
已经有3人回复
290求调剂
已经有8人回复
268求调剂
已经有4人回复
hollya
至尊木虫 (文坛精英)
葛城?{美
- 应助: 744 (博后)
- 金币: 44165.3
- 散金: 1143
- 红花: 127
- 沙发: 780
- 帖子: 24910
- 在线: 835小时
- 虫号: 458790
- 注册: 2007-11-13
- 性别: MM
- 专业: 计算机软件
【答案】应助回帖
|
楼主,你这个函数好像就是个线性方程,f(x)=kx, 这样拟合结果可能不太好啊。而且就算有5个参数需要似合,5个也不是相互独立的。 你看看下面的这个:其中 k1=b/a,k2=c/a,k3=d/a,k4=e/a data = [36.287 34.765 38.875 37.683 33.580 27.010 34.720 35.470 42.726 37.060 38.475 42.038 31.388 30.550 33.480 37.460 44.688 38.646 40.391 43.510 30.339 24.934 25.711 29.321 43.517 39.432 41.318 42.936 29.632 26.228 27.102 28.644 44.222 38.646 42.530 41.718 28.211 24.991 27.792 29.638 43.771 40.398 42.454 44.425 27.862 25.291 26.591 27.814] q0=0; q1=0.2; q2=0.35; q3=0.5; q=[q0,q1,q2,q3] Q=[q.^3;q.^2;q;ones(1,4)] xdata=data(:,1:4) ydata=data(:,5:8) f = @(k,x) x./repmat([k(1),k(2),k(3),k(4)]*Q,6,1) k0=[1 1 1 1] k = lsqcurvefit(f,k0,xdata,ydata) f_fit=f(k,xdata) plot(xdata(:,1),ydata(:,1),'o',xdata(:,1),f_fit(:,1),... xdata(:,2),ydata(:,2),'*',xdata(:,2),f_fit(:,2),... xdata(:,3),ydata(:,3),'+',xdata(:,3),f_fit(:,3),... xdata(:,4),ydata(:,4),'x',xdata(:,4),f_fit(:,4)) |

2楼2019-02-02 02:45:25













是共享参数类的自定义公式模拟,目的是求5个系数,y1-x1对应q0固定系数,y2-x2对应q1固定系数,依次类推四个系数。我这个代码是肯定不行呀- -,想要知道这个能不能求帮忙修改,并且把这几个曲线绘制到一张图上,谢谢谢谢谢谢
回复此楼
5