Package com.powsybl.math.matrix
Interface LUDecomposition
- All Superinterfaces:
AutoCloseable
LU decomposition utility class. As some decomposition implementation may allocate resources that need to be released
a try-with-resource block has to be used to ensure correct resource management.
try (LUDecomposition decomposition = m.decomposeLU()) { decomposition.solve(...) }
- Author:
- Geoffroy Jamgotchian <geoffroy.jamgotchian at rte-france.com>
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
void
solve
(double[] b) Solve A * x = b where b is a column vector.void
solve
(DenseMatrix b) Solve A * x = b where b is a dense matrix.void
solveTransposed
(double[] b) Solve AT * x = b where b is a column vector.void
Solve AT * x = b where b is a dense matrix.default void
update()
Method to call when matrix has been updated to refresh LU decomposition so that new data can be taken into account in nextsolve(double[])
orsolve(DenseMatrix)
.void
update
(boolean allowIncrementalUpdate) Method to call when matrix has been updated to refresh LU decomposition so that new data can be taken into account in nextsolve(double[])
orsolve(DenseMatrix)
.
-
Method Details
-
update
void update(boolean allowIncrementalUpdate) Method to call when matrix has been updated to refresh LU decomposition so that new data can be taken into account in nextsolve(double[])
orsolve(DenseMatrix)
.- Parameters:
allowIncrementalUpdate
- allow decomposition incremental update (so using previous decomposition values)
-
update
default void update()Method to call when matrix has been updated to refresh LU decomposition so that new data can be taken into account in nextsolve(double[])
orsolve(DenseMatrix)
. -
solve
void solve(double[] b) Solve A * x = b where b is a column vector.- Parameters:
b
- a column vector
-
solveTransposed
void solveTransposed(double[] b) Solve AT * x = b where b is a column vector.- Parameters:
b
- a column vector
-
solve
Solve A * x = b where b is a dense matrix.- Parameters:
b
- a matrix
-
solveTransposed
Solve AT * x = b where b is a dense matrix.- Parameters:
b
- a matrix
-
close
void close()- Specified by:
close
in interfaceAutoCloseable
-