OR-Tools  8.2
TriangularMatrix

Detailed Description

Definition at line 502 of file sparse.h.

Public Member Functions

 TriangularMatrix ()
 
void PopulateFromTranspose (const TriangularMatrix &input)
 
void Swap (TriangularMatrix *other)
 
bool IsEmpty () const
 
RowIndex num_rows () const
 
ColIndex num_cols () const
 
EntryIndex num_entries () const
 
void Reset (RowIndex num_rows, ColIndex col_capacity)
 
void PopulateFromTriangularSparseMatrix (const SparseMatrix &input)
 
void AddTriangularColumn (const ColumnView &column, RowIndex diagonal_row)
 
void AddTriangularColumnWithGivenDiagonalEntry (const SparseColumn &column, RowIndex diagonal_row, Fractional diagonal_value)
 
void AddDiagonalOnlyColumn (Fractional diagonal_value)
 
void AddAndNormalizeTriangularColumn (const SparseColumn &column, RowIndex diagonal_row, Fractional diagonal_coefficient)
 
void ApplyRowPermutationToNonDiagonalEntries (const RowPermutation &row_perm)
 
void CopyColumnToSparseColumn (ColIndex col, SparseColumn *output) const
 
void CopyToSparseMatrix (SparseMatrix *output) const
 
ColIndex GetFirstNonIdentityColumn () const
 
Fractional GetDiagonalCoefficient (ColIndex col) const
 
bool ColumnIsDiagonalOnly (ColIndex col) const
 
void LowerSolve (DenseColumn *rhs) const
 
void UpperSolve (DenseColumn *rhs) const
 
void TransposeUpperSolve (DenseColumn *rhs) const
 
void LowerSolveStartingAt (ColIndex start, DenseColumn *rhs) const
 
void TransposeLowerSolve (DenseColumn *rhs) const
 
void HyperSparseSolve (DenseColumn *rhs, RowIndexVector *non_zero_rows) const
 
void HyperSparseSolveWithReversedNonZeros (DenseColumn *rhs, RowIndexVector *non_zero_rows) const
 
void TransposeHyperSparseSolve (DenseColumn *rhs, RowIndexVector *non_zero_rows) const
 
void TransposeHyperSparseSolveWithReversedNonZeros (DenseColumn *rhs, RowIndexVector *non_zero_rows) const
 
void ComputeRowsToConsiderWithDfs (RowIndexVector *non_zero_rows) const
 
void ComputeRowsToConsiderInSortedOrder (RowIndexVector *non_zero_rows, Fractional sparsity_ratio, Fractional num_ops_ratio) const
 
void ComputeRowsToConsiderInSortedOrder (RowIndexVector *non_zero_rows) const
 
void PermutedLowerSolve (const SparseColumn &rhs, const RowPermutation &row_perm, const RowMapping &partial_inverse_row_perm, SparseColumn *lower, SparseColumn *upper) const
 
void PermutedLowerSparseSolve (const ColumnView &rhs, const RowPermutation &row_perm, SparseColumn *lower, SparseColumn *upper)
 
bool IsLowerTriangular () const
 
bool IsUpperTriangular () const
 
void PermutedComputeRowsToConsider (const ColumnView &rhs, const RowPermutation &row_perm, RowIndexVector *lower_column_rows, RowIndexVector *upper_column_rows)
 
Fractional ComputeInverseInfinityNormUpperBound () const
 
Fractional ComputeInverseInfinityNorm () const
 

Private Member Functions

void PopulateFromTranspose (const CompactSparseMatrix &input)
 
void Reset (RowIndex num_rows)
 
void Swap (CompactSparseMatrix *other)
 

Constructor & Destructor Documentation

◆ TriangularMatrix()

TriangularMatrix ( )
inline

Definition at line 504 of file sparse.h.

Member Function Documentation

◆ AddAndNormalizeTriangularColumn()

void AddAndNormalizeTriangularColumn ( const SparseColumn column,
RowIndex  diagonal_row,
Fractional  diagonal_coefficient 
)

Definition at line 655 of file sparse.cc.

◆ AddDiagonalOnlyColumn()

void AddDiagonalOnlyColumn ( Fractional  diagonal_value)

Definition at line 636 of file sparse.cc.

◆ AddTriangularColumn()

void AddTriangularColumn ( const ColumnView column,
RowIndex  diagonal_row 
)

Definition at line 640 of file sparse.cc.

◆ AddTriangularColumnWithGivenDiagonalEntry()

void AddTriangularColumnWithGivenDiagonalEntry ( const SparseColumn column,
RowIndex  diagonal_row,
Fractional  diagonal_value 
)

Definition at line 672 of file sparse.cc.

◆ ApplyRowPermutationToNonDiagonalEntries()

void ApplyRowPermutationToNonDiagonalEntries ( const RowPermutation row_perm)

Definition at line 712 of file sparse.cc.

◆ ColumnIsDiagonalOnly()

bool ColumnIsDiagonalOnly ( ColIndex  col) const
inline

Definition at line 577 of file sparse.h.

◆ ComputeInverseInfinityNorm()

Fractional ComputeInverseInfinityNorm ( ) const

Definition at line 1382 of file sparse.cc.

◆ ComputeInverseInfinityNormUpperBound()

Fractional ComputeInverseInfinityNormUpperBound ( ) const

Definition at line 1357 of file sparse.cc.

◆ ComputeRowsToConsiderInSortedOrder() [1/2]

void ComputeRowsToConsiderInSortedOrder ( RowIndexVector non_zero_rows) const

Definition at line 1306 of file sparse.cc.

◆ ComputeRowsToConsiderInSortedOrder() [2/2]

void ComputeRowsToConsiderInSortedOrder ( RowIndexVector non_zero_rows,
Fractional  sparsity_ratio,
Fractional  num_ops_ratio 
) const

Definition at line 1314 of file sparse.cc.

◆ ComputeRowsToConsiderWithDfs()

void ComputeRowsToConsiderWithDfs ( RowIndexVector non_zero_rows) const

Definition at line 1229 of file sparse.cc.

◆ CopyColumnToSparseColumn()

void CopyColumnToSparseColumn ( ColIndex  col,
SparseColumn output 
) const

Definition at line 720 of file sparse.cc.

◆ CopyToSparseMatrix()

void CopyToSparseMatrix ( SparseMatrix output) const

Definition at line 730 of file sparse.cc.

◆ GetDiagonalCoefficient()

Fractional GetDiagonalCoefficient ( ColIndex  col) const
inline

Definition at line 572 of file sparse.h.

◆ GetFirstNonIdentityColumn()

ColIndex GetFirstNonIdentityColumn ( ) const
inline

Definition at line 567 of file sparse.h.

◆ HyperSparseSolve()

void HyperSparseSolve ( DenseColumn rhs,
RowIndexVector non_zero_rows 
) const

Definition at line 869 of file sparse.cc.

◆ HyperSparseSolveWithReversedNonZeros()

void HyperSparseSolveWithReversedNonZeros ( DenseColumn rhs,
RowIndexVector non_zero_rows 
) const

Definition at line 899 of file sparse.cc.

◆ IsEmpty()

bool IsEmpty ( ) const
inline

Definition at line 511 of file sparse.h.

◆ IsLowerTriangular()

bool IsLowerTriangular ( ) const

Definition at line 692 of file sparse.cc.

◆ IsUpperTriangular()

bool IsUpperTriangular ( ) const

Definition at line 702 of file sparse.cc.

◆ LowerSolve()

void LowerSolve ( DenseColumn rhs) const

Definition at line 737 of file sparse.cc.

◆ LowerSolveStartingAt()

void LowerSolveStartingAt ( ColIndex  start,
DenseColumn rhs 
) const

Definition at line 741 of file sparse.cc.

◆ num_cols()

ColIndex num_cols ( ) const
inline

Definition at line 513 of file sparse.h.

◆ num_entries()

EntryIndex num_entries ( ) const
inline

Definition at line 514 of file sparse.h.

◆ num_rows()

RowIndex num_rows ( ) const
inline

Definition at line 512 of file sparse.h.

◆ PermutedComputeRowsToConsider()

void PermutedComputeRowsToConsider ( const ColumnView rhs,
const RowPermutation row_perm,
RowIndexVector lower_column_rows,
RowIndexVector upper_column_rows 
)

Definition at line 1116 of file sparse.cc.

◆ PermutedLowerSolve()

void PermutedLowerSolve ( const SparseColumn rhs,
const RowPermutation row_perm,
const RowMapping partial_inverse_row_perm,
SparseColumn lower,
SparseColumn upper 
) const

Definition at line 998 of file sparse.cc.

◆ PermutedLowerSparseSolve()

void PermutedLowerSparseSolve ( const ColumnView rhs,
const RowPermutation row_perm,
SparseColumn lower,
SparseColumn upper 
)

Definition at line 1038 of file sparse.cc.

◆ PopulateFromTranspose()

void PopulateFromTranspose ( const TriangularMatrix input)

Definition at line 491 of file sparse.cc.

◆ PopulateFromTriangularSparseMatrix()

void PopulateFromTriangularSparseMatrix ( const SparseMatrix input)

Definition at line 683 of file sparse.cc.

◆ Reset()

void Reset ( RowIndex  num_rows,
ColIndex  col_capacity 
)

Definition at line 524 of file sparse.cc.

◆ Swap()

void Swap ( TriangularMatrix other)

Definition at line 593 of file sparse.cc.

◆ TransposeHyperSparseSolve()

void TransposeHyperSparseSolve ( DenseColumn rhs,
RowIndexVector non_zero_rows 
) const

Definition at line 930 of file sparse.cc.

◆ TransposeHyperSparseSolveWithReversedNonZeros()

void TransposeHyperSparseSolveWithReversedNonZeros ( DenseColumn rhs,
RowIndexVector non_zero_rows 
) const

Definition at line 960 of file sparse.cc.

◆ TransposeLowerSolve()

void TransposeLowerSolve ( DenseColumn rhs) const

Definition at line 831 of file sparse.cc.

◆ TransposeUpperSolve()

void TransposeUpperSolve ( DenseColumn rhs) const

Definition at line 801 of file sparse.cc.

◆ UpperSolve()

void UpperSolve ( DenseColumn rhs) const

Definition at line 770 of file sparse.cc.


The documentation for this class was generated from the following files: