Methods
static LSGlobe.TridiagonalSystemSolver.solve (diagonal, lower, upper, right) → Array.< Cartesian3 >
解决线性方程组的三对角线系统。
Performance:
线性时间。
Name | Type | Description |
---|---|---|
diagonal
|
Array.<Number> |
长度为
n
的数组,其中包含系数矩阵的对角线。
|
lower
|
Array.<Number> |
长度为
n-1
的数组,其中包含系数矩阵的下对角线。
|
upper
|
Array.<Number> |
长度为
n-1
的数组,其中包含系数矩阵的对角线。
|
right
|
Array.< Cartesian3 > |
长度为
n
的笛卡尔坐标数组,位于方程组的右侧。
|
Returns:
一定长度的笛卡尔数组
ñ
那就是方程的三对角线系统的解。
Throws:
-
DeveloperError :对角线和右边的长度必须相同。
-
DeveloperError :下部和上部必须具有相同的长度。
-
DeveloperError :下和上必须比对角线的长度小一。
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 LSGlobe.Cartesian3(410757.0, -1595711.0, 1375302.0),
new LSGlobe.Cartesian3(-5986705.0, -2190640.0, 1099600.0),
new LSGlobe.Cartesian3(-12593180.0, 288588.0, -1755549.0),
new LSGlobe.Cartesian3(-5349898.0, 2457005.0, -2685438.0),
new LSGlobe.Cartesian3(845820.0, 1573488.0, -1205591.0)
];
var solution = LSGlobe.TridiagonalSystemSolver.solve(lowerDiagonal, diagonal, upperDiagonal, rightHandSide);