Problem with non-linear fit

2 Ansichten (letzte 30 Tage)
R7 DR
R7 DR am 9 Okt. 2015
Kommentiert: Star Strider am 9 Okt. 2015
Hi I am trying to fit the data and find the constant values. my code is...
[T]=xlsread('Matlab.xlsx','sheet2','C5:C2685')
[alpha]=xlsread('Matlab.xlsx','sheet2','I5:I2685')%time
[dalpha_dt]=xlsread('Matlab.xlsx','sheet2','J5:J2685')
F=ones(size(alpha));
F=(1-alpha)
coeff0=[2.17E+22, 5] % initial guess
coeff=nlinfit([T,F],dalpha_dt,@model,coeff0);
A=coeff(:,1)
n=coeff(:,2)
Function:
function dhat=model(coef,a)
% par_fit = [a b]
a=coef(1);
b=coef(2);
T=a(:,1);
F=a(:,2);
% predicted model
dhat=a.*exp(208000./(8.3147*(T+273))).*(F^b);
return
I need to find the new coefficient values, but it is showing following error..Please tell me how to resolve this.
Error using nlinfit (line 205)
Error evaluating model function 'model'.
Error in fitting (line 16)
coeff=nlinfit([T,F],dalpha_dt,@model,coeff0);
Caused by:
Attempted to access a(:,2); index out of bounds because numel(a)=1.
Thanks

Antworten (2)

Star Strider
Star Strider am 9 Okt. 2015
You defined ‘a’ as a scalar (appropriately) so it is by definition a (1x1) ‘array’ (taking liberties with the concept here). It doesn’t have a second dimension.
How do you want to define ‘T’ and ‘F’?
  11 Kommentare
R7 DR
R7 DR am 9 Okt. 2015
Thank for the information.
I will try to find the solution using genetic algorithms. If I need any help I will come back to you.
Thanks for your time. Have a nice weekend.
Star Strider
Star Strider am 9 Okt. 2015
My pleasure.
You, too!

Melden Sie sich an, um zu kommentieren.


R7 DR
R7 DR am 9 Okt. 2015
Hi
The idea is that, I have data generated from the experiment. I can also calculate same kind of data from mathematical equation which is depended on two coefficients. Now I need to find these coefficients by fitting the mathematical data with experimental data.
The equations is...dalpha_dt= A*exp(-208000/(8.3417*(T+273)*(F^n)
T=loaded from the excel.
F=loaded from excel.
A & n are the coefficients I want to find.
I made the same calculation using excel with an initial guess of 'A & n' and the curves look like the following image.
Thanks
  1 Kommentar
R7 DR
R7 DR am 9 Okt. 2015
I dont know whether nonlinear function can be used or not for these kind of problems.
Thanks

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by