2009-05-12, 21:36
function f=funr1(x)
f=(1.56*10^(-1)*7.000*4*[x(1)*x(3)+0.5*(x(4)-x(3)-6.000)*(x(1)+x(2))+x(2)*6.000]);
function [c,ceq] = myconr1(x)
α=x(3)/(x(4)-6.000);
β=x(1)/x(2);
γ=α/β;
k=γ^3-1.5*(1-α)^3/(1-β)^3*sqrt((2lnβ+4*(1-β)*(1-γ)/(1-α)-(1-γ)^2*(1-β)^2/(1-α)^2)^2)-1;
c(1)=0.800-x(1);
c(2)=x(2)-1.500;
c(3)=0.1+x(1)-x(2);
c(4)=x(4)-66.000;
C(5)=sqrt((K-92.4)/92.4)-0.015;
C(6)=6*15153.000*x(3)/(4*7.000*x(1)^2)-300.000;
C(7)=1.5*15153.000*(x2-x1)/(7.000*4*(x(1)*(x(4)-6.000)-x(2)*x(3)))*((x(4)-6.000-x(3))/(x(2)-x(1)))^2-420.000;
Cep=0;
x0 = [1.000;1.000;1.000;1.000];
lb=zeros(4,1);
ub=[];
A=[];
b=[];
Aeq=[];
beq=[];
options=optimset('LargeScale','off','Display','off');
[x,fval,exitflag,output]=fmincon(@funr1,x0,A,b,Aeq,beq,lb,ub,@myconr1,options)
??? Error using ==> fmincon
FMINCON cannot continue because user supplied nonlinear constraint function
failed with the following error:
Error: File: d:\MATLAB7\work\myconr1.m Line: 2 Column: 1
Missing variable or function.
Error in ==> myresr1 at 9
[x,fval,exitflag,output]=fmincon(@funr1,x0,A,b,Aeq,beq,lb,ub,@myconr1,options)
f=(1.56*10^(-1)*7.000*4*[x(1)*x(3)+0.5*(x(4)-x(3)-6.000)*(x(1)+x(2))+x(2)*6.000]);
function [c,ceq] = myconr1(x)
α=x(3)/(x(4)-6.000);
β=x(1)/x(2);
γ=α/β;
k=γ^3-1.5*(1-α)^3/(1-β)^3*sqrt((2lnβ+4*(1-β)*(1-γ)/(1-α)-(1-γ)^2*(1-β)^2/(1-α)^2)^2)-1;
c(1)=0.800-x(1);
c(2)=x(2)-1.500;
c(3)=0.1+x(1)-x(2);
c(4)=x(4)-66.000;
C(5)=sqrt((K-92.4)/92.4)-0.015;
C(6)=6*15153.000*x(3)/(4*7.000*x(1)^2)-300.000;
C(7)=1.5*15153.000*(x2-x1)/(7.000*4*(x(1)*(x(4)-6.000)-x(2)*x(3)))*((x(4)-6.000-x(3))/(x(2)-x(1)))^2-420.000;
Cep=0;
x0 = [1.000;1.000;1.000;1.000];
lb=zeros(4,1);
ub=[];
A=[];
b=[];
Aeq=[];
beq=[];
options=optimset('LargeScale','off','Display','off');
[x,fval,exitflag,output]=fmincon(@funr1,x0,A,b,Aeq,beq,lb,ub,@myconr1,options)
??? Error using ==> fmincon
FMINCON cannot continue because user supplied nonlinear constraint function
failed with the following error:
Error: File: d:\MATLAB7\work\myconr1.m Line: 2 Column: 1
Missing variable or function.
Error in ==> myresr1 at 9
[x,fval,exitflag,output]=fmincon(@funr1,x0,A,b,Aeq,beq,lb,ub,@myconr1,options)