parameter Heligman pollard
이전 댓글 표시
hi all, i have data, x1=[0;1;5;10;15;20;25;30;35;40;45;50;55;60;65;70;75]; ydata=[0.00859 0.001714 0.001466 0.001308 0.00381 0.005388 0.005978 0.00673 0.009336 0.014156 0.021598 0.034274 0.05383 0.08526 0.136546 0.21604 0.329148];
with function is y=((b1.^((x+b2).^b3))+(b4.*exp(-b5.*(log(x./b6)).^2))+(b7.*(b8.^x)))/(1+((b1.^((x+b2).^b3))+(b4.*exp(-b5.*(log(x./b6)).^2))+(b7.*(b8.^x))));
and my questions is how to find parameter b1,b2....b8??
답변 (1개)
Given only 17 data points, estimation of 8 highly nonlinear parameters will be almost impossible. Sorry.
x1=[0;1;5;10;15;20;25;30;35;40;45;50;55;60;65;70;75];
ydata=[0.00859 0.001714 0.001466 0.001308 0.00381 0.005388 0.005978 0.00673 0.009336 0.014156 0.021598 0.034274 0.05383 0.08526 0.136546 0.21604 0.329148];
plot(x1,ydata,'o')
What is worse, the data varies over several orders of magnitude. And that will cause serious problems with convergence. And it looks like the first data point is in error, with a probable typo.
You will never be happy with the result. At the very least, it would be absolutely imperative to have extremely good starting values for the parameters.
카테고리
도움말 센터 및 File Exchange에서 MATLAB에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
