本帖最后由 xiaoyuxuanlc 于 2014-8-4 22:34 编辑
function yy=myfun(beta,x)
a=beta(1);
b=beta(2);
c=beta(3);
d=beta(4);
x1=x(:,1);
x2=x(:,2);
x3=x(:,3);
x4=x(:,4);
x5=x(:,5);
yy=exp(beta(1)+beta(2).*x1+beta(3).*x3+beta(4).*x5)./(exp(beta(1)+beta(2).*x1+beta(3).*x3+beta(4).*x5)+exp(beta(2).*x2+beta(3).*x4));
.......................................................................................................................................
P=[1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0];
T1=[45 30 50 35 15 25 45 30 25 40 38 20 50 42 45 20 45 40 42 25 20 50 40 45 35 30 30 15 35 40 20 25 35 30 25 20 50 45 40 35 40 25 20 50 35 40 25 20 15 30 20 35 40 45 35 25 20 50 35 40 35 25 33 50 36 40 25 40 25 28 30 35 32 18 40 40 25 28 42 38 27 30 45 35 20 40 35 20 35 30 25 30 40 50 35 25 20 30 45 30 35];
T2=[40 30 60 30 30 20 40 25 35 30 35 35 45 55 40 20 40 35 55 20 15 45 35 42 40 45 50 30 50 45 35 20 30 45 40 30 60 50 55 40 45 40 30 60 30 50 20 25 25 40 25 40 50 50 55 30 35 60 45 50 50 30 45 65 40 55 40 45 45 35 45 50 55 30 45 30 20 20 30 25 15 25 30 20 15 30 25 15 20 20 15 20 25 30 20 15 10 20 25 15 20];
F1=[24 16 20 12 18 16 8 8 18 8 20 15 20 25 16 8 32 20 12 24 8 15 18 12 36 16 24 20 16 20 16 24 16 20 24 30 28 8 24 18 20 16 30 22 28 26 36 18 36 20 24 18 32 36 24 34 30 24 8 18 12 24 20 16 28 30 26 14 12 18 26 24 10 12 14 28 34 36 28 30 28 32 38 30 36 34 36 30 28 26 34 24 36 24 22 30 36 35 28 26 36];
F2=[36 48 60 36 56 84 48 36 30 36 48 28 48 30 36 36 36 48 76 40 64 48 48 36 42 32 35 32 36 32 36 38 30 32 44 64 56 32 40 32 48 32 44 36 56 44 48 44 60 52 60 48 52 60 56 64 60 60 36 44 56 48 60 40 60 64 60 36 32 44 52 52 36 32 36 56 48 64 44 32 36 40 56 52 60 56 60 52 52 48 56 32 60 32 48 64 64 40 44 48 48];
Q=[5 15 10 2 5 10 15 5 5 10 5 5 5 10 2 5 2 2 5 5 10 10 5 2 5 2 2 5 5 5 5 1 1 5 5 3 10 5 15 10 3 5 5 5 10 10 5 5 5 10 5 5 5 5 5 7 2 3 5 5 3 5 2 1 1 3 2 5 2 7 5 3 10 5 8 5 10 15 10 5 15 2 10 15 15 3 2 5 5 2 10 15 2 3 10 15 3 5 10 10 5];
p=P';
t1=T1';
t2=T2';
f1=F1';
f2=F2';
q=Q';
x=[t1,t2,f1,f2,q];
>> y=p;
>> beta0=[1,1,1,1]'
;>> x1=t1;
>> x2=t2;
>> x3=f1;
>> x4=f2
;>> x5=q;
>> [beta,r,j]=nlinfit(x,y,@myfun,beta0);
Error using nlinfit (line 204)Error evaluating model function 'myfun'.
Caused by: Undefined function or variable 'y'.
真的不知道问题出在哪,希望大神帮忙看一下,拜谢