ENH: improvements, modernization of matrix containers (#1220)
- add iterators, begin/end, empty() methods for STL behaviour. Use standard algorithms where possible * std::fill, std::copy * std::min_element, std::max_element - access methods consistent with other OpenFOAM containers: * data(), cdata(), uniform() - Use ListPolicy to impose output line breaks - Can recover matrix storage for re-use elsewhere. For example, to populate values with 2D i-j addressing and later release it as flat linear storage. - construct/assign moveable - added minMax() function for Matrix - additional inplace +=, -=, *=, /= operations - add named methods at() and rowData() to Matrix. Allows a better distinction between linear and row-based addressing - low-level matrix solve on List/UList instead of Field
Showing
- applications/test/Matrix/Test-Matrix.C 63 additions, 25 deletionsapplications/test/Matrix/Test-Matrix.C
- src/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.C 38 additions, 26 deletionssrc/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.C
- src/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.H 18 additions, 15 deletionssrc/OpenFOAM/matrices/DiagonalMatrix/DiagonalMatrix.H
- src/OpenFOAM/matrices/LLTMatrix/LLTMatrix.C 19 additions, 21 deletionssrc/OpenFOAM/matrices/LLTMatrix/LLTMatrix.C
- src/OpenFOAM/matrices/LLTMatrix/LLTMatrix.H 9 additions, 10 deletionssrc/OpenFOAM/matrices/LLTMatrix/LLTMatrix.H
- src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.H 2 additions, 2 deletionssrc/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrix.H
- src/OpenFOAM/matrices/LUscalarMatrix/LUscalarMatrixTemplates.C 15 additions, 22 deletions...penFOAM/matrices/LUscalarMatrix/LUscalarMatrixTemplates.C
- src/OpenFOAM/matrices/Matrix/Matrix.C 298 additions, 261 deletionssrc/OpenFOAM/matrices/Matrix/Matrix.C
- src/OpenFOAM/matrices/Matrix/Matrix.H 233 additions, 108 deletionssrc/OpenFOAM/matrices/Matrix/Matrix.H
- src/OpenFOAM/matrices/Matrix/MatrixI.H 189 additions, 26 deletionssrc/OpenFOAM/matrices/Matrix/MatrixI.H
- src/OpenFOAM/matrices/Matrix/MatrixIO.C 84 additions, 92 deletionssrc/OpenFOAM/matrices/Matrix/MatrixIO.C
- src/OpenFOAM/matrices/QRMatrix/QRMatrix.C 16 additions, 15 deletionssrc/OpenFOAM/matrices/QRMatrix/QRMatrix.C
- src/OpenFOAM/matrices/QRMatrix/QRMatrix.H 13 additions, 12 deletionssrc/OpenFOAM/matrices/QRMatrix/QRMatrix.H
- src/OpenFOAM/matrices/QRMatrix/QRMatrixI.H 1 addition, 1 deletionsrc/OpenFOAM/matrices/QRMatrix/QRMatrixI.H
- src/OpenFOAM/matrices/RectangularMatrix/RectangularMatrix.H 9 additions, 6 deletionssrc/OpenFOAM/matrices/RectangularMatrix/RectangularMatrix.H
- src/OpenFOAM/matrices/RectangularMatrix/RectangularMatrixI.H 11 additions, 4 deletionssrc/OpenFOAM/matrices/RectangularMatrix/RectangularMatrixI.H
- src/OpenFOAM/matrices/SquareMatrix/SquareMatrix.H 21 additions, 17 deletionssrc/OpenFOAM/matrices/SquareMatrix/SquareMatrix.H
- src/OpenFOAM/matrices/SquareMatrix/SquareMatrixI.H 32 additions, 17 deletionssrc/OpenFOAM/matrices/SquareMatrix/SquareMatrixI.H
- src/OpenFOAM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrix.H 6 additions, 6 deletions...AM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrix.H
- src/OpenFOAM/matrices/SymmetricSquareMatrix/SymmetricSquareMatrixI.H 12 additions, 12 deletions...M/matrices/SymmetricSquareMatrix/SymmetricSquareMatrixI.H
Please register or sign in to comment