clc;
clear;
close all;
%% Данные варианта 16
A = [-0.4496, 0.02515, -0.8471;
-0.4713, -0.3802, 0.8445;
0.7043, -0.9668, -0.2088];
B = [-0.4613;
0;
-0.3745];
C = [-0.5826, 0.2226, 0.7795];
D = 0;
%% Желаемые корни
L = [-0.8, -0.9, -1.0];
%% Расчет
K = acker(A, B, L);
S = A - B*K;
k0 = -1 / (C * (S \ B));
%% Что получили
disp('Коэффициенты регулятора K:');
disp(K);
disp('Матрица замкнутой системы S = A - B*K:');
disp(S);
disp('Коэффициент k0:');
disp(k0);
disp('Собственные значения исходной системы eig(A):');
disp(eig(A));
disp('Собственные значения замкнутой системы eig(S):');
disp(eig(S));
%% Моделирование
sys_old = ss(A, B, C, D);
sys_new = ss(S, B*k0, C, D);
%% График
figure;
step(sys_old, 'r', sys_new, 'b');
grid on;
title('Переходные процессы по выходу y');
xlabel('Время, с');
ylabel('y');
legend('Исходный объект', 'Система с регулятором', 'Location', 'best');