/>
%% 5. Розрахунок спектральної характеристики еталонного виходу
Ctheta = fwht (theta ');
fprintf ('5. СХ еталонного виходу n ');
pr_matrix (Ctheta, 'Ctheta');
%% 6. Синтез вхідного сигналу
Cu_0 = zeros (Nl, 1);
fprintf ('Початкові значення шуканих коефіцієнтів n ');
pr_matrix (Cu_0, 'Cu_0');
oshibka = sqrt ((As * Cu_0-Ctheta) '* (As * Cu_0-Ctheta));
fprintf ('Oshibka_0 =% E n ', oshibka);
my_function = @ (Cu) sqrt ((As * Cu-Ctheta) '* (As * Cu-Ctheta));
% optimset ('Display', 'iter', 'NonlEqnAlgorithm', 'gn', 'TolFun', 1e-8, ...
Cu = fsolve (my_function, Cu_0, ...
optimset ('NonlEqnAlgorithm', 'gn', 'TolFun', 1e-8, ...
'TolX', 1e-8, 'MaxFunEvals', 50000, 'MaxIter', 50000));
% Cu = inv (As) * Ctheta;
fprintf ('Оптимальні значення шуканих коефіцієнтів n ');
pr_matrix (Cu, 'Cu_opt');
oshibka = sqrt ((As * Cu-Ctheta) '* (As * Cu-Ctheta));
fprintf ('Oshibka_0 =% E n ', oshibka);
U = iwht (Cu) ';
tgl = t;
my_plot2 (t, U, 't, c ',' U (t) ');
В
%% 7. Аналіз отриманих результатів (метод Рунге-Кутта (ode45))
[tt, yy] = ode45 (@ ode_navedenija1, t, [0 0 0 0]);
theta_rr = yy (:, 1) ';
my_plot2 (t, [theta; theta_rr], 't, c ',' theta (t), радий ','', [' еталонний ';' реальний ']);
my_toc;
2) другорядні програми:
function dy = ode_navedenija1 (t, y);
global U tgl;
global Krp Trp Ksn Tsn DZsn V G Kdy Kv mu Tc Xmax;
a32 = -1/(Tsn ^ 2);
a33 = -2 * DZsn/Tsn;
a3f = Ksn/(Tsn ^ 2);
a42 = - (Krp/Trp) * (Kv-Kv * mu * Tc/(Tsn ^ 2) + Kdy * V/G);
a43 = - (Krp/Trp) * (Kv * (mu + Tc) -2 * Kv * mu * Tc * DZsn/Tsn);
a44 = -1/Trp;
a4f = - (Krp/Trp) * Kv * Ksn * mu * Tc/(Tsn ^ 2);
b4 = Krp/Trp;
u = spline (tgl, U, t);
dy = zeros (4,1);
dy (1) = y (2);
dy (2) = y (3);
y4 = y (4);
dy (3) = a32 * y (2) + a33 * y (3) + a3f * y4;
dy (4) = b4 * u + a42 * y (2) + a43 * y (3) + a44 * y (4) + a4f * y4;