system dimension parameters
nb = 3;
nnm1 = 2;
ns = 1;
ni = 1;
#
nt = 2 * nb + nnm1;
no = nt - ns;
circuit parameters
R = 1e3;
C = 100e-6;
adjusted tableau matrix
T = [
1 1 0 0 0 0 0 0 0 0
0 -1 1 0 0 0 0 0 0 0
0 0 0 1 0 -1 0 0 0 0
0 0 0 0 1 -1 1 0 0 0
0 0 0 0 0 0 -1 0 -1 0
0 0 0 1 0 0 0 0 0 1
0 -R 0 0 1 0 0 0 0 0
0 0 -1 0 0 0 0 C 0 0
];
reduced row echelon form
Trref = rref(T)
extract state-space model matrices
if (Trref(nt, nt) == 1)
A = Trref(no + 1 : nt, nt + 1 : nt + ns)
B = Trref(no + 1 : nt, nt + ns + 1 : nt + ns + ni)
C = Trref(1 : no, nt + 1 : nt + ns)
D = Trref(1 : no, nt + ns + 1 : nt + ns + ni)
elseif
disp('somethong wrong, possible algebraic degeneration')
endif
save Ap1 A
save Bp1 B
save Cp1 C
save Dp1 D
find eigenfrequencies of the state-space model
poles = eig(A)
save polesp1 poles