Skip to content

Commit 0e9a8c5

Browse files
committed
docs: add tex eqns
--- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown status: passed - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: na - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: na - task: lint_typescript_tests status: na - task: lint_license_headers status: passed ---
1 parent e9c57eb commit 0e9a8c5

File tree

1 file changed

+64
-0
lines changed
  • lib/node_modules/@stdlib/lapack/base/dgttrf

1 file changed

+64
-0
lines changed

lib/node_modules/@stdlib/lapack/base/dgttrf/README.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,70 @@ limitations under the License.
2222

2323
> Compute an `LU` factorization of a real tridiagonal matrix `A` using elimination with partial pivoting and row interchanges.
2424
25+
<section class="intro">
26+
27+
The `dgttrf` routine computes an LU factorization of a real n-by-n tridiagonal matrix A using elimination with partial pivoting and row interchanges. The factorization has the form:
28+
29+
```math
30+
A = L U
31+
```
32+
33+
where L is a product of permutation and unit lower bidiagonal matrices and U is upper triangular with nonzeros in only the main diagonal and first two superdiagonals.
34+
35+
For a tridiagonal matrix A, its elements are stored in three arrays:
36+
37+
```math
38+
A = \begin{bmatrix}
39+
d_1 & du_1 & 0 & \cdots & 0 \\
40+
dl_1 & d_2 & du_2 & \cdots & 0 \\
41+
0 & dl_2 & d_3 & \ddots & \vdots \\
42+
\vdots & \ddots & \ddots & \ddots & du_{n-1}\\
43+
0 & \cdots & 0 & dl_{n-1} & d_n
44+
\end{bmatrix}
45+
```
46+
47+
where:
48+
49+
- `dl` contains the subdiagonal elements
50+
- `d` contains the diagonal elements
51+
- `du` contains the superdiagonal elements
52+
53+
After factorization, the elements of L and U overwrite the input arrays, where:
54+
55+
- `dl` contains the multipliers that define unit lower bidiagonal matrix L
56+
- `d` contains the diagonal elements of U
57+
- `du` and `du2` contain the elements of U on the first and second superdiagonals
58+
59+
The resulting L and U matrices have the following structure:
60+
61+
```math
62+
L = \begin{bmatrix}
63+
1 & 0 & 0 & \cdots & 0 \\
64+
l_1 & 1 & 0 & \cdots & 0 \\
65+
0 & l_2 & 1 & \ddots & \vdots \\
66+
\vdots & \ddots & \ddots & \ddots & 0 \\
67+
0 & \cdots & 0 & l_{n-1} & 1
68+
\end{bmatrix}
69+
```
70+
71+
```math
72+
U = \begin{bmatrix}
73+
u_{1,1} & u_{1,2} & u_{1,3} & \cdots & 0 \\
74+
0 & u_{2,2} & u_{2,3} & u_{2,4} & 0 \\
75+
0 & 0 & u_{3,3} & \ddots & \ddots \\
76+
\vdots & \vdots & \ddots & \ddots & u_{n-1,n}\\
77+
0 & 0 & \cdots & 0 & u_{n,n}
78+
\end{bmatrix}
79+
```
80+
81+
<!-- </equation> -->
82+
83+
where the `l_i` values are stored in `dl`, the diagonal elements `u_{i,i}` are stored in `d`, and the superdiagonal elements `u_{i,i+1}` and `u_{i,i+2}` are stored in `du` and `du2` respectively.
84+
85+
</section>
86+
87+
<!-- /.intro -->
88+
2589
<section class="usage">
2690

2791
## Usage

0 commit comments

Comments
 (0)