geterr.m

来自「其中提到遺傳學的程式碼與應用提供給次淚相向的研究者參考下載」· M 代码 · 共 35 行

M
35
字号
function PI=getErr(t,in,out,errType,time1,time2);
%% PI=getErr(t,in,out,errType,time1,time2);
%% errType=1, abs error
%% errType=2, abs error square
%% errType=3, time abs error
%% For example:
%sys=tf(10,[1 3 10]);[y,t]=step(sys);in=ones(size(t));
%errType=1; PI=getErr(t,in,y,errType)

if nargin<3
    error('# of input arguments must be at least 3');
elseif nargin==3
    errType=1; time1=t(1); time2=t(end);
elseif nargin==4
    time1=t(1); time2=t(end);
else
    ;
end

II=find(t>=time1 & t<=time2);
t=t(II);in=in(II);out=out(II);
if errType==1
    PI=sum(abs(in-out));
elseif errType==2
    PI=sum((in-out).^2);
elseif errType==3
    if t(1)<1, t=t+1; end;
    PI=sum(t.*abs(in-out));
else
    ;
end

%while PI<1000, PI=1.25*PI; end
%while PI>1300, PI=0.8*PI; end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?