import { Point3d } from "../geometry3d/Point3dVector3d"; /** * Linear system operations on a matrix with data only on the diagonal and its immediate left and right neighbors * @internal */ export declare class TriDiagonalSystem { private _aLeft; private _aRight; private _aDiag; private _b; private _x; private _dataState; constructor(n: number); /** Reset to RawMatrix state with all coefficients zero */ reset(): void; /** Install data in a row of the matrix */ setRow(row: number, left: number, diag: number, right: number): void; /** Add to row of matrix */ addToRow(row: number, left: number, diag: number, right: number): void; /** Install data in the right side (B) vector */ setB(row: number, bb: number): void; /** Add to an entry in the right side (B) vector */ addToB(row: number, bb: number): void; /** Access data from the right side (B) vector */ getB(row: number): number; /** Install data in the solution (X) vector */ setX(row: number, xx: number): void; /** Access data from the solution (X) vector */ getX(row: number): number; /** Get method for matrix and vector order */ order(): number; /** Compute product of AX and save as B */ multiplyAX(): boolean; /** Compute product of AX and save as B */ multiplyAXPoints(pointX: Point3d[], pointB: Point3d[]): boolean; /** Multiply the stored factors together to return to plain matrix form */ defactor(): boolean; /** Factor the tridiagonal matrix to LU parts. b, x, not altered */ factor(): boolean; /** Solve AX=B. A is left in factored state. B unchanged. */ factorAndBackSubstitute(): boolean; /** Solve AX=B. A is left in factored state. B unchanged. vectorB and vectorX may be the same array */ factorAndBackSubstitutePointArrays(vectorB: Point3d[], vectorX: Point3d[]): boolean; /** Allocate a complete copy */ copy(): TriDiagonalSystem; /** return an array form that may be useful for display ... */ flatten(): any; /** return an array form that may be useful for display ... */ flattenWithPoints(xyzB: Point3d[]): any; } //# sourceMappingURL=TriDiagonalSystem.d.ts.map