⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hessi.m

📁 极值理论中各种函数及图像的程序。matlab实现。
💻 M
字号:
function c=hessi(func,x,excess),
ep=0.0001;
eps=ep*x;
n=length(x);
m=zeros(n,n);
for i=1:n,
    for j=1:n,
        x1=x;
        x1(i)=x1(i)+eps(i);
        x1(j)=x1(j)+eps(j);
        x2=x;
        x2(i)=x2(i)+eps(i);
        x2(j)=x2(j)-eps(j);
        x3=x;
        x3(i)=x3(i)-eps(i);
        x3(j)=x3(j)+eps(j);
        x4=x;
        x4(i)=x4(i)-eps(i);
        x4(j)=x4(j)-eps(j);
        
        
        m(i,j)=eval(['(' func '(x1,excess)-' func '(x2,excess)-' func '(x3,excess)+' func '(x4,excess)' ')' '/(4*eps(' num2str(i) ')*eps(' num2str(j) '))' ]);
    end
end

        c=inv(m);
        function f=negloglik(theta,excess)
    xi = theta(1);
    
    beta = theta(2);
	
    cond1 = beta <= 0;
	cond2 = (xi <= 0) & (max(excess) > ( - beta/xi));
    if(cond1 | cond2)
		f =NaN;
    else
        y = log(1 + (xi * excess)./beta);
		y = y./xi;
		f = length(excess) * log(beta) + (1 + xi) * sum(y);
    end
        
%         "hess" <- function(f, x)
% {
% #a function by Stuart Coles
% 	ep <- 0.0001
% 	eps <- ep * x
% 	n <- length(x)
% 	m <- matrix(0, ncol = n, nrow = n)
% 	for(i in 1:n) {
% 		for(j in 1:n) {
% 			x1 <- x
% 			x1[i] <- x1[i] + eps[i]
% 			x1[j] <- x1[j] + eps[j]
% 			x2 <- x
% 			x2[i] <- x2[i] + eps[i]
% 			x2[j] <- x2[j] - eps[j]
% 			x3 <- x
% 			x3[i] <- x3[i] - eps[i]
% 			x3[j] <- x3[j] + eps[j]
% 			x4 <- x
% 			x4[i] <- x4[i] - eps[i]
% 			x4[j] <- x4[j] - eps[j]
% 			m[i, j] <- (f(x1) - f(x2) - f(x3) + f(x4))/(4 * 
% 				eps[i] * eps[j])
% 		}
% 	}
% 	solve(m)
% }
%

⌨️ 快捷键说明

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