amour120
2009-01-11, 16:32
我的M文件编辑如下:
x=('double');
function [beta,g]=zhaoguofan26(x) %编写m 文件
beta=sqrt(((x(1)-38)/3.8)^2+((x(2)-54)/2.7)^2); %目标函数
g(1)=x(1)*x(2) -1140; %等式约束条件,等式约束条件要求置于最前
g(2)= -x(1); % x(1)表示f,要求x(1)>0
g(3)= -x(2); % x(2)表示W,要求x(2)>0
当我调用M文件的时候就弹出错误提示:Function definitions are not permitted at the prompt or in scripts.(能在命令窗口或者脚本文件中定义函数
)
以下为实例:命令窗口操作:
%在命令窗口中调用m 文件
>> x0=[38 54]; %给出初始值,一般取均值就可
>> options(13)=1; %设定options(13)的参数,约束条件中最前面的是一个等式
约束条件
>> [x,options]=constr('zhaoguofan26',x0,options); %用命令constr 调用m 文件
>> [beta,g]=zhaoguofan26(x)%
我在哪里出错了呢,大家帮忙下:lol:
x=('double');
function [beta,g]=zhaoguofan26(x) %编写m 文件
beta=sqrt(((x(1)-38)/3.8)^2+((x(2)-54)/2.7)^2); %目标函数
g(1)=x(1)*x(2) -1140; %等式约束条件,等式约束条件要求置于最前
g(2)= -x(1); % x(1)表示f,要求x(1)>0
g(3)= -x(2); % x(2)表示W,要求x(2)>0
当我调用M文件的时候就弹出错误提示:Function definitions are not permitted at the prompt or in scripts.(能在命令窗口或者脚本文件中定义函数
)
以下为实例:命令窗口操作:
%在命令窗口中调用m 文件
>> x0=[38 54]; %给出初始值,一般取均值就可
>> options(13)=1; %设定options(13)的参数,约束条件中最前面的是一个等式
约束条件
>> [x,options]=constr('zhaoguofan26',x0,options); %用命令constr 调用m 文件
>> [beta,g]=zhaoguofan26(x)%
我在哪里出错了呢,大家帮忙下:lol: