该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

function [ t ] = solution( x )

%UNTITLED2 此处显示有关此函数的摘要

% 此处显示详细说明

global tl Wturb UA

j=0;

i=tl+1;

%为各个参数数组预制内存

Etz=(i:1:x);

Ewnet=ones(size(Etz));

EUA=zeros(size(Etz));

i=i-1;

while i

i=i+1;

k=Wnet(i);

if k~=Wturb

j=j+1;%逐项赋值

Etz(j)=i;

Ewnet(j)=k(1);

EUA(j)=-UA;

end

end

u=length(Etz);

r=j;

j2=j+1;

while r

r=r+1;

Etz(j2)=[];%清除无数据空间

Ewnet(j2)=[];

EUA(j2)=[];

end

i=1;

u=length(Etz);

%以净输出功为目标

m=1;

max11=Ewnet(1);

while i

i=i+1;

v=Ewnet(i);

if v>max11

max11=v;

m=i;

end

end

%以UA为目标求最值

i=1;

n=1;

max22=EUA(1);

while i

i=i+1;

v=EUA(i);

if v>max22

max22=v;

n=i;

end

end

max21=Ewnet(n);

max12=EUA(m);

b=max12-max22;

c=max21-max11;

a=b+c;

ph=b/a;

ps=c/a;

i=1;

t=Etz(i);

n=ph.*Ewnet(i)+ps.*EUA(i);

while i

i=i+1;

k=ph.*Ewnet(i)+ps.*EUA(i);

if k>n

n=k;

t=Etz(i);

end

end

end