How I get eigenvalues from 4x4 matrix is positive?

1 Ansicht (letzte 30 Tage)
Ivan Dwi Putra
Ivan Dwi Putra am 25 Jun. 2020
This is my matlab code represent the my model
%Parameter Massa
m1 = 8095; % massa train set 1 dalam kg
m2 = 8500; % massa train set 2 dalam kg
g = 10;
%Parameter Gaya
f1 = 205.10^3; % dalam N
f2 = 302.10^3; % dalam N
c_0_1 = 0.01176;
c_1_1 = 0.00077616;
c_2_1 = 4.48 ;
c_0_2 = 0.01176 ;
c_1_2 = 0.00077616;
c_2_2 = 4.48;
v_0 = 300;
hstar = 120;
a_1 = -1./m1.*(c_1_1 + 2.*c_2_1.*v_0);
a_2 = -1./m2.*(c_1_2 + 2.*c_2_2.*v_0);
a_1_head = 1-(a_1.*hstar);
a_2_head = 1-(a_2.*hstar);
b = 1;
p_1 = -1./m1.*(c_0_1 - c_2_1.*(v_0).^2);
p_2 = -1./m2.*(c_0_2 - c_2_2.*(v_0).^2);
A = [0 a_1_head 0 0;
0 0 0 0;
0 (a_2_head - 1) 0 a_2_head;
0 0 0 0
];
B = [-b.*hstar 0;
b 0;
0 -b.*hstar;
-b b
];
U_t = [f1; f2;];
W = [((a_1 - 1).*v_0) - (p_1.*hstar);
0;
((a_2 - 1).*v_0) - (p_2.*hstar);
((a_1 - 1).*v_0) - (p_1.*hstar);
];
C = [1 0 0 0;
0 1 0 0;
0 0 1 0;
0 0 0 1;];
Q = [19999 0 0 0;
0 19999 0 0;
0 0 19999 0;
0 0 0 19999;];
R = [599999999.9999 0;
0 59999999.9999;];
I would like to find X, K ,L using icare
My goal to find all eigenvalues (L) from X matrix 4x4 is all positive > 0
[X1,K1,L1] = icare(A,B,Q,R)
But I never get all eigenvalues positive
This is what i got
X1 =
1.0e+09 *
0.0001 0.0206 0.0000 0.0002
0.0206 5.7871 0.0170 2.3214
0.0000 0.0170 0.0001 0.0169
0.0002 2.3214 0.0169 2.3099
K1 =
0.0058 1.6534 -0.0001 -0.0149
0.0004 4.7137 0.0183 4.6848
L1 =
-0.3283
-0.4419
-0.5336
-2.1662

Antworten (0)

Kategorien

Mehr zu Mathematics and Optimization finden Sie in Help Center und File Exchange

Produkte


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by