Loading Documentation/Examples/Matrices/MultidiagonalMatrix/MultidiagonalMatrixExample_Constructor.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -14,8 +14,8 @@ void laplaceOperatorMatrix() */ const int gridSize( 4 ); const int matrixSize = gridSize * gridSize; TNL::Containers::Vector< int, Device > shifts { - gridSize, -1, 0, 1, gridSize }; TNL::Matrices::MultidiagonalMatrix< double, Device > matrix( matrixSize, matrixSize, shifts ); TNL::Containers::Vector< int, Device > offsets { - gridSize, -1, 0, 1, gridSize }; TNL::Matrices::MultidiagonalMatrix< double, Device > matrix( matrixSize, matrixSize, offsets ); auto matrixView = matrix.getView(); auto f = [=] __cuda_callable__ ( int i, int j ) mutable { const int elementIdx = j * gridSize + i; Loading src/TNL/Matrices/MultidiagonalMatrix.hpp +4 −4 Original line number Diff line number Diff line Loading @@ -41,7 +41,7 @@ MultidiagonalMatrix( const IndexType rows, const IndexType columns, const Vector& diagonalsOffsets ) { TNL_ASSERT_GT( diagonalsOffsets.getSize(), 0, "Cannot construct mutltidiagonal matrix with no diagonals shifts." ); TNL_ASSERT_GT( diagonalsOffsets.getSize(), 0, "Cannot construct multidiagonal matrix with no diagonals offsets." ); this->setDimensions( rows, columns, diagonalsOffsets ); } Loading @@ -57,9 +57,9 @@ MultidiagonalMatrix( const IndexType rows, const IndexType columns, const std::initializer_list< ListIndex > diagonalsOffsets ) { Containers::Vector< IndexType, DeviceType, IndexType > shifts( diagonalsOffsets ); TNL_ASSERT_GT( shifts.getSize(), 0, "Cannot construct multidiagonal matrix with no diagonals shifts." ); this->setDimensions( rows, columns, shifts ); Containers::Vector< IndexType, DeviceType, IndexType > offsets( diagonalsOffsets ); TNL_ASSERT_GT( offsets.getSize(), 0, "Cannot construct multidiagonal matrix with no diagonals offsets." ); this->setDimensions( rows, columns, offsets ); } template< typename Real, Loading Loading
Documentation/Examples/Matrices/MultidiagonalMatrix/MultidiagonalMatrixExample_Constructor.cpp +2 −2 Original line number Diff line number Diff line Loading @@ -14,8 +14,8 @@ void laplaceOperatorMatrix() */ const int gridSize( 4 ); const int matrixSize = gridSize * gridSize; TNL::Containers::Vector< int, Device > shifts { - gridSize, -1, 0, 1, gridSize }; TNL::Matrices::MultidiagonalMatrix< double, Device > matrix( matrixSize, matrixSize, shifts ); TNL::Containers::Vector< int, Device > offsets { - gridSize, -1, 0, 1, gridSize }; TNL::Matrices::MultidiagonalMatrix< double, Device > matrix( matrixSize, matrixSize, offsets ); auto matrixView = matrix.getView(); auto f = [=] __cuda_callable__ ( int i, int j ) mutable { const int elementIdx = j * gridSize + i; Loading
src/TNL/Matrices/MultidiagonalMatrix.hpp +4 −4 Original line number Diff line number Diff line Loading @@ -41,7 +41,7 @@ MultidiagonalMatrix( const IndexType rows, const IndexType columns, const Vector& diagonalsOffsets ) { TNL_ASSERT_GT( diagonalsOffsets.getSize(), 0, "Cannot construct mutltidiagonal matrix with no diagonals shifts." ); TNL_ASSERT_GT( diagonalsOffsets.getSize(), 0, "Cannot construct multidiagonal matrix with no diagonals offsets." ); this->setDimensions( rows, columns, diagonalsOffsets ); } Loading @@ -57,9 +57,9 @@ MultidiagonalMatrix( const IndexType rows, const IndexType columns, const std::initializer_list< ListIndex > diagonalsOffsets ) { Containers::Vector< IndexType, DeviceType, IndexType > shifts( diagonalsOffsets ); TNL_ASSERT_GT( shifts.getSize(), 0, "Cannot construct multidiagonal matrix with no diagonals shifts." ); this->setDimensions( rows, columns, shifts ); Containers::Vector< IndexType, DeviceType, IndexType > offsets( diagonalsOffsets ); TNL_ASSERT_GT( offsets.getSize(), 0, "Cannot construct multidiagonal matrix with no diagonals offsets." ); this->setDimensions( rows, columns, offsets ); } template< typename Real, Loading