4.8 Linear Algebra

This directory contains files related to linear algebra operations. Files such as NekMatrix, BlockMatrix and NekLinearSystem are fundamental to many of the operations we do within Nektar++. These files represent our attempt to encapsulate linear algebra operations in a way that make sense from the programmer perspective but for which we do not loose efficiency. As can be seen in these routines and throughout the code, we rely heavily on BLAS (Basic Linear Algebra Subroutines).

Arpack.hpp Blas.hpp BlasArray.hpp

BlockMatrix.cpp BlockMatrix.hpp CanGetRawPtr.hpp

ExplicitInstantiation.h Lapack.hpp MatrixBase.cpp

MatrixBase.hpp MatrixFuncs.cpp MatrixFuncs.h

MatrixOperations.cpp MatrixOperations.hpp MatrixStorageType.h

MatrixType.h MatrixVectorMultiplication.cpp NekLinAlgAlgorithms.hpp

NekLinSys.hpp NekMatrix.hpp NekMatrixFwd.hpp

NekPoint.hpp NekTypeDefs.hpp NekVector.cpp

NekVector.hpp NekVectorFwd.hpp NistSparseDescriptors.hpp

PointerWrapper.h ScaledMatrix.cpp ScaledMatrix.hpp

SparseDiagBlkMatrix.cpp SparseDiagBlkMatrix.hpp SparseMatrix.cpp

SparseMatrix.hpp SparseMatrixFwd.hpp SparseUtils.cpp

SparseUtils.hpp StandardMatrix.cpp StandardMatrix.hpp

StorageSmvBsr.cpp StorageSmvBsr.hpp TransF77.hpp