TridiagonalSystemSolver

使用三对角矩阵算法(也称为 Thomas 算法)来求解系数矩阵为三对角矩阵的线性方程组。

Methods

static Cesium.TridiagonalSystemSolver.solve(diagonal, lower, upper, right)Array.<Cartesian3>

求解三对角线性方程组。
Performance:

Linear time.

Name Type Description
diagonal Array.<number> 长度为 n 的数组,包含系数矩阵的对角线。
lower Array.<number> 长度为 n - 1 的数组,包含系数矩阵的下对角线。
upper Array.<number> 长度为 n - 1 的数组,包含系数矩阵的上对角线。
right Array.<Cartesian3> 长度为 n 的 Cartesian 数组,作为方程组的右侧。
Returns:
长度为 n 的 Cartesian 数组,作为三对角方程组的解。
Throws:
Example:
const lowerDiagonal = [1.0, 1.0, 1.0, 1.0];
const diagonal = [2.0, 4.0, 4.0, 4.0, 2.0];
const upperDiagonal = [1.0, 1.0, 1.0, 1.0];
const rightHandSide = [
    new Cesium.Cartesian3(410757.0, -1595711.0, 1375302.0),
    new Cesium.Cartesian3(-5986705.0, -2190640.0, 1099600.0),
    new Cesium.Cartesian3(-12593180.0, 288588.0, -1755549.0),
    new Cesium.Cartesian3(-5349898.0, 2457005.0, -2685438.0),
    new Cesium.Cartesian3(845820.0, 1573488.0, -1205591.0)
];

const solution = Cesium.TridiagonalSystemSolver.solve(lowerDiagonal, diagonal, upperDiagonal, rightHandSide);
需要帮助?获取答案的最快方式是在 Cesium 论坛 上向社区和团队提问。