dettriangular.mata
来自「是一个经济学管理应用软件 很难找的 但是经济学学生又必须用到」· MATA 代码 · 共 39 行
MATA
39 行
*! version 1.0.1 19jan2005
version 9.0
mata:
numeric scalar dettriangular(numeric matrix A)
{
real scalar i, n
numeric vector v
numeric scalar zum
real scalar sum, z, sgn
if ((n=rows(A)) != cols(A)) _error(3205)
if (n==0) return(iscomplex(A) ? C(1) : 1)
v = diagonal(A)
if (missing(v)) return(iscomplex(A) ? C(.) : .)
if (anyof(v, 0)) return(iscomplex(A) ? 0i : 0)
if (iscomplex(A)) {
sum = 0i
for (i=1; i<=n; i++) sum = sum + ln(v[i])
return(exp(sum))
}
sum = 0
for(sgn=i=1; i<=n; i++) {
if ((z=v[i])<0) {
z = -z ;
sgn = -sgn ;
}
sum = sum + ln(z)
}
return(sgn*exp(sum))
}
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?