SkillAgentSearch skills...

Tdma

In numerical linear algebra, the tridiagonal matrix algorithm, also known as the Thomas algorithm (named after Llewellyn Thomas), is a simplified form of Gaussian elimination that can be used to solve tridiagonal systems of equations.

Install / Use

/learn @armancodv/Tdma
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

TDMA (Tridiagonal matrix algorithm)

In numerical linear algebra, the tridiagonal matrix algorithm, also known as the Thomas algorithm (named after Llewellyn Thomas), is a simplified form of Gaussian elimination that can be used to solve tridiagonal systems of equations. A tridiagonal system for n unknowns may be written as

Equations

where Equations and Equations.

Equations

Install

npm install tdma

Sample Code

Using coefficientMatrix

const tdma = require('tdma');

const coefficientMatrix = [
    [2, 3, 0, 0],
    [6, 3, 9, 0],
    [0, 2, 5, 2],
    [0, 0, 4, 3]
];
const rigthHandSideVector = [21, 69, 34, 22];

const answer = tdma.solver(coefficientMatrix, rigthHandSideVector);
console.log(answer);

Using Diagonals

const tdma = require('tdma');

const a = [0, 6, 2, 4];
const b = [2, 3, 5, 3];
const c = [3, 9, 2, 0];
const d = [21, 69, 34, 22];

const answer = tdma.tdma(a, b, c, d);
console.log(answer);

Method

The forward sweep consists of modifying the coefficients as follows, denoting the new coefficients with primes:

Equations

and

Equations

The solution is then obtained by back substitution:

Equations

Equations

The method above preserves the original coefficient vectors. If this is not required, then a much simpler form of the algorithm is

Equations

followed by the back substitution

Equations

Equations

Reference: https://en.wikipedia.org/wiki/Tridiagonal_matrix_algorithm

Related Skills

View on GitHub
GitHub Stars9
CategoryDevelopment
Updated2y ago
Forks0

Languages

JavaScript

Security Score

75/100

Audited on Oct 8, 2023

No findings