Det_JPH {lazy.symbolic}R Documentation

スウィープ演算による記号行列の行列式

Description

日本語ヘルプファイル: Det_JPH

Arguments

A

正方行列

loc

ピボット位置のベクトル

log

= 1 の場合、対数行列式を計算

simplify

= 0 の場合、Simplify や remove_paren を使わない
= 1 の場合、Simplify を使用

debug

= 1 の場合、詳細を表示

Details

英語のヘルプファイル: Det

スウィープ演算子の定義
C <- matSweep( A, p ) は以下を意味します:
c[i,j] <- c[i,j] - c[i,p]*c[p,j]/c[p,p]
c[p,] <- c[p,]/c[p,p]
c[,p] <- - c[,p]/c[p,p]

# A の逆行列
matSweep( A, 1:ncol(A) ) == solve(A)
これは Inv(A) と等価です。

行列 A の行列式は、スウィープ演算を用いて A を反転させる際の すべてのピボット c[p,p] の積として与えられます。

Value

行列 A の行列式

Examples


# 2 x 2 行列 A の行列式
A <- demomat(2,2,root="a")
Det(A)
Det(A,log=1)

# n x n (遅い!)
set.seed(1701)
n=3
B <- demomat(n,n,root="b")
dd <- Det(B)
Bn <- matrix(runif(n*n),n)
Print(Eval(dd,B=Bn),det(Bn))

# 完全記号化された分割行列: SMdim 属性はないが
# fullsymb 属性を持つ
Ap=demomat(2,2,root="A", fullsymb=1)
Print(Ap)
Det(Ap)
Det(Ap, 2:1)



[Package lazy.symbolic version 1.0.0.20250830 ]