您好!再请教一个问题,还是这个积分函数,开始是基于AR(1)过程求休哈特图的ARL,如果求解EWMA图的ARL,怎样修改积分限,谢谢!
echo off all
clear
clc
m=3;mu=0;v=1;s=0;d=3;fi=0.6;
rfi(1)=0;rfi(2)=0.3;rfi(3)=-0.3;rfi(4)=0.6;rfi(5)=-0.6;rfi(6)=0.9;rfi(7)=-0.9;
deta=0:0.25:d;h=0.05;n=2*fix(m/h);nn=n+1;
one=eye(nn,nn); b=ones(nn,1)*-1;
ai=zeros(nn,1);
bi=ai;n1=ai;n2=ai;
y=zeros(7,length(deta));
for i=1:nn
bi(i)=mu+m;
ai(i)=mu-m;
n1(i)=fix((ai(i)+m-mu)/h)+1;
n2(i)=fix((bi(i)+m-mu)/h)+1;
end
for r=1:7
for k=1:length(deta)
a=zeros(nn,nn);
for i=1:nn
at=zeros(1,nn);
for j=1:nn
if j>n1(i) && j<n2(i)
xx=ai(i)+h*(j-n1(i))-rfi(r)*s*(-m+h*(i-1))-(1-rfi(r))*(mu+deta(k)*v);
at(1,j)=h*normpdf(xx,0,v);
elseif j==n1(i)
xx=ai(i)-rfi(r)*s*(-m+h*(i-1))-(1-rfi(r))*(mu+deta(k)*v);
at(1,j)=(h/2)*normpdf(xx,0,v);
elseif j==n2(i)
xx=bi(i)-rfi(r)*s*(-m+h*(i-1))-(1-rfi(r))*(mu+deta(k)*v);
at(1,j)=(h/2)*normpdf(xx,0,v);
end
end
a(i,:)=at(1,:);
end
a=a-one;
if det(a)==0
disp "ZERO DETERMINANT FOR LIEAR SYSTEM"
else
x=a\b;
arl(k)=(h/2)*(normpdf(mu-m-(1-rfi(r))*(mu+deta(k)*v),0,1)*x(1)+normpdf(mu+m-(1-rfi(r))*(mu+deta(k)*v),0,1)*x(nn));
arg=normpdf(h*(1:1:n-1)+mu-m-(1-rfi(r))*(mu+deta(k)*v),0,1);
x=x(2:n);
arl(k)=arl(k)+arg*h*x+1;
end
end
y(r,:)=arl;
end
18# epoh