我是靠谱客的博主 甜甜棉花糖,这篇文章主要介绍matlab for in,matlab LMI取参数用for循环 怎么调用tmin,现在分享给大家,希望可以做个参考。

各位大神好,上一帖子表达不清楚,我的例子找不到可行解,我就想让有一些参数进行for循环,让电脑帮我找使得tmin<0的可行解,请问怎么调用tmin呢?

比如以下例子,让参数m,n,c做循环,如果tmin<0,则跳出循环。可是这里的if语句是无效的,怎么写才有效?

for m=0.01:0.01:0.99;

n=0.99-m;

for c=0.01:0.01:9.9;

A=[0.25,0;0,0.2];

%D=[-0.002,0;0,-0.002];

T=[0.1,0;0,0.1];     %Gamma

B=[0.05,0;0,0.05];  %check{B}

J=[0,0;0,0];         %hat{B}

W=[0.05,0;0,0.05];

B1=[0.02,0;0,0.02];       %B_{iN_i}取固定的矩阵

r=16;           %lamda

%c=9.9;

e=10;      %tau~

M=2;      %复杂网络的节点

pg=1;   % feedback gain

g11=99.9-pg/c;   % f11=100

g12=0.0997;    %f12=-2

g21=0.0997;

g22=-0.0997;

a11=g11*g11+g21*g21;     %aij 是矩阵G的元素

a12=g11*g12+g21*g22;

a21=g12*g11+g22*g21;

a22=g12*g12+g22*g22;

f=1.01;   %eta

dk=2;   %时滞dk;

y=exp(0.5*r);

x=exp(-r*(dk+1));

% m=0.9 ;  %alpha

% n=0.01;  %beta

%x=log(f)/t;

setlmis([]);

P=lmivar(1,[2 1]);

U=lmivar(1,[1 0;1 0]);

u=lmivar(1,[1 1]);     %zeta

%网络节点取i=1;

% 1st LMI

BRL=newlmi;

lmiterm([BRL 1 1 P],1,1);

lmiterm([-BRL 1 1 u],1,eye(2)); %eye(2)表示2阶单位矩阵

% 2nd LMI

Xpos=newlmi;

lmiterm([Xpos 1 1 P],A',A);

lmiterm([Xpos 1 1 P],0.5*c*c*(a11*a11+a12*a12)*T,T);

lmiterm([Xpos 1 1 P],0.5*M*c*c*T,T);

lmiterm([Xpos 1 1 P],c*(g11*g11+g12*g12)*A',A);

lmiterm([Xpos 1 1 P],2*M*c*T,T);

lmiterm([Xpos 1 1 u],W',W);

lmiterm([Xpos 1 1 P],-m,exp(-r));

lmiterm([Xpos 1 3 P],A',1);

lmiterm([Xpos 2 2 U],-1,J);

lmiterm([Xpos 2 2 P],-n,x);

lmiterm([Xpos 2 3 U],1,B);

lmiterm([Xpos 3 3 P],1,1);

lmiterm([Xpos 3 3 P],c*(g11*g11+g12*g12),1);

lmiterm([Xpos 3 3 U],-1,1);

%3th LMI

LXK=newlmi;

lmiterm([LXK 1 1 P],-f,1);

lmiterm([LXK 1 2 P],(eye(2)+B1)',y);

lmiterm([LXK 2 2 P],-1,1);

%4th LMI

ABC=newlmi;

lmiterm([-ABC 1 1 P],1,1);

%5th LMI

LKO=newlmi;

lmiterm([-LKO 1 1 U],1,1);

%6th LMI

MJL=newlmi;

lmiterm([-MJL 1 1 u],1,1);

%lmiterm([-1 1 1 0],f);

%lmiterm([1 1 1 0],x);

lmis=getlmis;

[tmin,xfeas]=feasp(lmis)

if tmin<0

break;

P=dec2mat(lmis,xfeas,P)

U=dec2mat(lmis,xfeas,U)

u=dec2mat(lmis,xfeas,u)

end

end

end

end

最后

以上就是甜甜棉花糖最近收集整理的关于matlab for in,matlab LMI取参数用for循环 怎么调用tmin的全部内容,更多相关matlab内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部