Block Tridiagonal Solver

버전 1.0.3 (1.6 KB) 작성자: Lateef Adewale Kareem
Solves the block tridiagonal system Ax=d, where a, b, and c are the three diagonals of A.
다운로드 수: 19
업데이트 날짜: 2022/5/28

라이선스 보기

% Solves the block tridiagonal system Ax=d, where a, b, and c are the three
% diagonals of A. If the size of the block is n-by-n, then b is M*n-by-n, d
% is M*n-by-*, a and c are each (M-1)*n-by-n.
%
% M = 12; n = 3;
% a = rand((M-1)*n,n); b = 3+2*rand(M*n,n); c = rand((M-1)*n,n);
% d = rand(M*n,10);
% x = BlockTriSolve(a, b, c, d);
%
% We can make block matrix A = BlockDiag(a, n, n, -1) + BlockDiag(b, n, n)
% + BlockDiag(c, n, n, 1); and then x = A\d to confirm the solution.
%
% Computational Cost of this method is 2M(13n^3/3+4n^2-4n/3). The cost is
% of order M*n^3. This is better than the backslash which is order (M*n)^3

인용 양식

Lateef Adewale Kareem (2024). Block Tridiagonal Solver (https://www.mathworks.com/matlabcentral/fileexchange/76078-block-tridiagonal-solver), MATLAB Central File Exchange. 검색됨 .

MATLAB 릴리스 호환 정보
개발 환경: R2020a
모든 릴리스와 호환
플랫폼 호환성
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
버전 게시됨 릴리스 정보
1.0.3

Eliminated the zeros in front of a

1.0.2

Optimized for speed

1.0.1

Title change for improved visibility

1.0.0