当前位置 :
functionf=myfun(x)矩阵定义省略forj=1:28a=0;fori=1;27;a=a+x(i)*A(i,j)*T(i);endJT1(j)=a;endforj=1:28a=0;fori=1;27;a=a+x(2*i)*A(i,j)*T(i);endJT2(j)=a;endforj=1:28a=0;fori=1;27;a=a+x(i*3)*A(i,j)*T(i);endJT3(j)=a;endN=[0,0];fori=1:27forj=
3人问答
问题描述:

functionf=myfun(x)

矩阵定义省略

forj=1:28

a=0;

fori=1;27;

a=a+x(i)*A(i,j)*T(i);

end

JT1(j)=a;

end

forj=1:28

a=0;

fori=1;27;

a=a+x(2*i)*A(i,j)*T(i);

end

JT2(j)=a;

end

forj=1:28

a=0;

fori=1;27;

a=a+x(i*3)*A(i,j)*T(i);

end

JT3(j)=a;

end

N=[0,0];

fori=1:27

forj=1:28

ifx(2*i)==1&&A(i,j)==1;

N(k)=j;k=k+1;

end

end

end

a=N(1);b=N(2);

ifJT1(a)-JT1(b)>0;%这步就是错的

WT1(a)=JT1(a)-JT1(b);

elseWT1(b)=JT1(b)-JT1(a);

end

k=1;

fori=1:27

forj=1:28

ifx(3*i)==1&&A(i,j)==1;

N(k)=j;k=k+1;

end

end

end

a=N(1);b=N(2);

ifJT2(a)+WT1(a)>JT2(b)+WT1(b)

WT2(a)=JT2(a)+WT1(a)-JT2(b)+WT1(b);

elseWT2(b)=JT2(b)+WT1(b)-JT2(a)+WT1(a);

end

m=0;

forj=1:28

ifJT1(m)+JT2(m)+JT3(m)+WT1(m)+WT2(m)

代华锋回答:
  你是如何判断你的代码出错了呢?如果你能通过某种依据确定程序执行到某一行时结果不对,那么就可以逐步的检查之前的代码来缩小搜索范围,并最终准确定位.而且值得一提的是,你代码里大量的出现一些有问题的行,例如,你经...
傅双玲回答:
  是要用fmincon来调用,运行到标记位就出错
代华锋回答:
  首先把你for里的那些;改成:再说。你可以任意给一个x然后调用函数去验证一下结果,正确无误后再用在fmincon里。
最新更新
PC端 | 移动端 | mip端
字典翻译(zidianfy.com)汇总了汉语字典,新华字典,成语字典,组词,词语,在线查字典,中文字典,英汉字典,在线字典,康熙字典等等,是学生查询学习资料的好帮手,是老师教学的好助手。
声明:本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
电话:  邮箱:
Copyright©2009-2021 字典翻译 zidianfy.com 版权所有 闽ICP备2022014709号-7
lyric 頭條新聞