非线性拟合问题。

Matlab小白。。。最近做了一些荧光数据,需要用一个给定的表达式进行非线性拟合以求得需要的参数,文献上说用Qusia-Newton算法,懵逼状态。其中一组数据是
x=0,5,15,25,40,50,60,70,80,90,100,110,120,130,140,150,160,175
y=24,22,19,17,13,12,11,9.5,8,7.5,7,7,7.1,7.1,7.2,7,7.3,7.2
需要拟合的表达式是:
y=100+(i-100)*(1/(2*k*c))*(1+k*c+k*x-((1+k*c+k*x)^2-4*(k^2)*c*x)^0.5)
其中i,k,c是待求的参数。
大神们帮帮忙啊!!!

 Accepted Answer

cenov
cenov on 17 Nov 2022

0 votes

x=[0,5,15,25,40,50,60,70,80,90,100,110,120,130,140,150,160,175]';
y=[24,22,19,17,13,12,11,9.5,8,7.5,7,7,7.1,7.1,7.2,7,7.3,7.2]';
ft = fittype( '100+(a-100)*(1/(2*k*c))*(1+k*c+k*x-((1+k*c+k*x)^2-4*(k^2)*c*x)^0.5)');
[fitresult, gof] = fit( x, y, ft, 'StartPoint',[1 1 1] )

More Answers (0)

Categories

Tags

Asked:

on 17 Nov 2022

Answered:

on 17 Nov 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!