當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R backsolve 求解上三角係統或下三角係統


R語言 backsolve 位於 base 包(package)。

說明

求解三角線性方程組。

用法

   backsolve(r, x, k = ncol(r), upper.tri = TRUE,
             transpose = FALSE)
forwardsolve(l, x, k = ncol(l), upper.tri = FALSE,
             transpose = FALSE)

參數

r, l

給出待求解係統係數的上(或下)三角矩陣。對角線下方(上方)的值將被忽略。

x

一個矩陣,其列給出方程的右側。

k

要使用的 r 的列數和 x 的行數。

upper.tri

邏輯性;如果TRUE(默認),則使用r的上三角部分。不然就低一號。

transpose

邏輯性;如果 TRUE ,則求解 得到 ,即 t(r) %*% y == x

細節

求解線性方程組,其中係數矩陣為上三角矩陣(或‘right’,‘R’)或下三角矩陣(‘left’,‘L’)。

x <- backsolve (R, b)解決 , 和
x <- forwardsolve(L, b)解決 , 分別。

r /l 必須至少具有 k 行和列,並且 x 必須至少具有 k 行。

這是 3 級 BLAS 例程 dtrsm 的包裝器。

三角係統的解。如果 x 是向量,結果將是向量;如果 x 是矩陣,結果將是矩陣。

例子

## upper triangular matrix 'r':
r <- rbind(c(1,2,3),
           c(0,1,1),
           c(0,0,2))
( y <- backsolve(r, x <- c(8,4,2)) ) # -1 3 1
r %*% y # == x = (8,4,2)
backsolve(r, x, transpose = TRUE) # 8 -12 -5

參考

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

Dongarra, J. J., Bunch, J. R., Moler, C. B. and Stewart, G. W. (1978) LINPACK Users Guide. Philadelphia: SIAM Publications.

也可以看看

cholqrsolve

相關用法


注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Solve an Upper or Lower Triangular System。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。