www.gusucode.com > mbcmodels 工具箱 matlab 源码程序 > mbcmodels/@localmod/evalpev.m

    function p= evalpev(x,L,Xfitdata,Yfitdata,individ)
%EVALPEV
%
% p= evalpev(x,L,Xfitdata,Yfitdata,individ);

%  Copyright 2000-2007 The MathWorks, Inc. and Ford Global Technologies, Inc.



if nargin<5
	individ=0;
end

[ri,s2,df]= var(L);
if isempty(ri) 
   if nargin>2
      L= pevinit(L,Xfitdata,Yfitdata);
      [ri,s2,df]= var(L);
   else
      ri=1;
   end
end


Jx= jacobian(L,x,true);
lev= Jx*ri;
p= sum(lev.*lev,2);

if individ
	% individual observation variance
   if ~isempty(L.covmodel);
       Xd = code(L,double(Xfitdata));
       yhat = eval(L,Xd);
       s2= diag(cov(L.covmodel,yhat,Xd)).*s2;
   end
   p= p+s2;
end