12 lines
407 B
Mathematica
12 lines
407 B
Mathematica
|
|
function fy=fpidfun(x,G,t,key)
|
||
|
|
% fpidfun - objective function for optimum fractional-order PID
|
||
|
|
|
||
|
|
% Copyright (c) Dingyu Xue, Northeastern University, China
|
||
|
|
% Last modified 28 March, 2017
|
||
|
|
% Last modified 19 May, 2022
|
||
|
|
arguments, x(1,:), G, t(:,1), key=1; end
|
||
|
|
C=fopid(x); dt=t(2)-t(1); e=step(feedback(1,G*C),t);
|
||
|
|
if key==1, fy=dt*sum(t.*abs(e)); else, fy=dt*sum(e.^2); end
|
||
|
|
disp([x(:).', fy])
|
||
|
|
end
|