使用三對角矩陣算法(也稱為托馬斯算法)求解系數矩陣為三對角矩陣的線性方程組。
Methods
(static) solve(diagonal, lower, upper, right) → {Array.<Cartesian3>}
解線性方程組的三對角系統。
Parameters:
diagonal
(Array.<Number>)
長度為n
的數組,包含系數矩陣的對角線。
lower
(Array.<Number>)
長度為n - 1
的數組,包含系數矩陣的下對角線。
upper
(Array.<Number>)
長度為n - 1
的數組,包含系數矩陣的上對角線。
Example
var lowerDiagonal = [1.0, 1.0, 1.0, 1.0];
var diagonal = [2.0, 4.0, 4.0, 4.0, 2.0];
var upperDiagonal = [1.0, 1.0, 1.0, 1.0];
var rightHandSide = [
new bmgl.Cartesian3(410757.0, -1595711.0, 1375302.0),
new bmgl.Cartesian3(-5986705.0, -2190640.0, 1099600.0),
new bmgl.Cartesian3(-12593180.0, 288588.0, -1755549.0),
new bmgl.Cartesian3(-5349898.0, 2457005.0, -2685438.0),
new bmgl.Cartesian3(845820.0, 1573488.0, -1205591.0)
];
var solution = bmgl.TridiagonalSystemSolver.solve(lowerDiagonal, diagonal, upperDiagonal, rightHandSide);
Throws
-
DeveloperError : 對角線和右邊的長度必須相同。
-
DeveloperError : 上下長度必須相同。
-
DeveloperError : 上下對角線長度必須小于對角線長度。