Skip to content

Commit 6988c53

Browse files
committed
Adds final reproducible results for examples from literature
1 parent 964f004 commit 6988c53

8 files changed

Lines changed: 19 additions & 12 deletions

File tree

Examples_from_literature_validation/Examples_from_literature.m

Lines changed: 19 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,15 @@
1414
G_veh=tf([3,3],[1,1,25,0,0]);
1515
% Sector bounds
1616
m=1; % lower bound on the sector
17-
L=1:0.1:3; % Upper bound on the sector
17+
L=1:0.5:8; % Upper bound on the sector
1818
n_L=length(L);
1919
case 2
2020
% Example from Chen and Wen(not a vehicle): the optimal multiplier method
2121
% for nonlinear robustness analysis
2222
G_veh=tf([1,1],[1,1,25,0,0]);
2323
% Sector bounds
2424
m=1; % lower bound on the sector
25-
L=1:0.1:3; % Upper bound on the sector
25+
L=1:0.5:10; % Upper bound on the sector
2626
n_L=length(L);
2727
case 3
2828
% Example from Scherer and Weiland, LMI notes in control
@@ -44,8 +44,8 @@
4444
D=zeros(3);D(3,2)=1;
4545
G_veh=ss(A,B,C,D);
4646
% Sector bounds
47-
m=1; % lower bound on the sector
48-
L=1:0.1:3; % Upper bound on the sector
47+
m=0; % lower bound on the sector
48+
L=0:0.1:1; % Upper bound on the sector
4949
n_L=length(L);
5050
case 5
5151
% Example from Fetzer and Scherer page 3389 Example 4.9 (not a vehicle)
@@ -62,8 +62,8 @@
6262
D=zeros(4);
6363
G_veh=ss(A,B,C,D);
6464
% Sector bounds
65-
m=1; % lower bound on the sector
66-
L=1:0.1:3; % Upper bound on the sector
65+
m=0; % lower bound on the sector
66+
L=0:0.1:3; % Upper bound on the sector
6767
n_L=length(L);
6868
end
6969

@@ -90,21 +90,21 @@
9090
multiplier_class.id=6;
9191
multiplier_class.rho=-1;
9292
multiplier_class.psi_order=1;
93-
multiplier_class.odd_flag=0;
93+
multiplier_class.odd_flag=1;
9494
multiplier_class.causal_flag=0; % 1: causal, -1:anti-causal, 0:non-causal
9595
save_path=['.\data\mult_flag_non_causal_',num2str(multiplier_flag(1,i))];
9696
case 61
9797
multiplier_class.id=6;
9898
multiplier_class.rho=-1;
9999
multiplier_class.psi_order=1;
100-
multiplier_class.odd_flag=0;
100+
multiplier_class.odd_flag=1;
101101
multiplier_class.causal_flag=1; % 1: causal, -1:anti-causal, 0:non-causal
102102
save_path=['.\data\mult_flag_causal_',num2str(multiplier_flag(1,i))];
103103
case 59
104104
multiplier_class.id=6;
105105
multiplier_class.rho=-1;
106106
multiplier_class.psi_order=1;
107-
multiplier_class.odd_flag=0;
107+
multiplier_class.odd_flag=1;
108108
multiplier_class.causal_flag=-1; % 1: causal, -1:anti-causal, 0:non-causal
109109
save_path=['.\data\mult_flag_anti_causal_',num2str(multiplier_flag(1,i))];
110110
end
@@ -116,8 +116,16 @@
116116
end
117117
% Generate example quadratic fields (Linear feedback) to test conservatism
118118
alpha_best=zeros(1,n_L);
119-
for i=1:n_L
120-
G_cl=feedback(G_veh,L(1,i),-1);
119+
for i=1:n_L
120+
if example<=3
121+
G_cl=feedback(G_veh,L(1,i),-1);
122+
elseif example==4
123+
H=diag(m+L(i)*rand(3,1));
124+
G_cl=feedback(G_veh,H,-1);
125+
elseif example==5
126+
H=diag(m+L(i)*rand(4,1));
127+
G_cl=feedback(G_veh,H,-1);
128+
end
121129
alpha_best(1,i)=-1*max(real(pole(G_cl)));
122130
end
123131
save('.\data\lb_lin');
0 Bytes
Binary file not shown.
0 Bytes
Binary file not shown.
Binary file not shown.
9 Bytes
Binary file not shown.
Binary file not shown.
10.7 KB
Binary file not shown.

Examples_from_literature_validation/plot_data.m

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
legend('CC($P_1=0,P_3=0$)','ZF causal ($P_1=0$)','ZF anti-causal ($P_3=0$)','ZF','Example fields')
1313
xlabel('L')
1414
ylabel('$\alpha$')
15-
ylim([0,0.5])
1615
title('Convergence rates(exponents) for non-minimum phase example')
1716
savefig('example_convergence_rate')
1817
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

0 commit comments

Comments
 (0)