function Ed = Emaxdev(calF,P) global m n F global EF %EF = []; %for fi = 1:F % f = calF(:,fi); % EF(fi) = getEPn(f,P); %end Ed = 0; for xi=1:m^n x = i2c(xi,m,n); Ed = Ed + getmaxdev(calF,P,x)*P(xi); end return function s = getPn(f,X) global m n s = 0; for i = 1:n s = s + f(X(i)); end % don't normalize by n! return function Es = getEPn(f,P) global m n Es = 0; for xi=1:m^n x = i2c(xi,m,n); Es = Es + getPn(f,x)*P(xi); end return function d = getmaxdev(calF,P,X) global m n F global EF d = 0; for fi = 1:F f = calF(:,fi); %d = max(d,abs(getPn(f,X) - getEPn(f,P))); %d = max(d,abs(getPn(f,X) - EF(fi) )); d = max(d,abs(getPn(f,X))); end return function c=i2c(i,m,n) dims = repmat(m,[1 n]); c = ind2coord(i,dims); return