Go to the source code of this file.
Classes | |
class | oomph::Matrix< T, MATRIX_TYPE > |
Abstract base class for matrices, templated by the type of object that is stored in them and the type of matrix. The MATRIX_TYPE template argument is used as part of the Curiously Recurring Template Pattern, see http://en.wikipedia.org/wiki/Curiously_Recurring_Template_Pattern The pattern is used to force the inlining of the round bracket access functions by ensuring that they are NOT virtual functions. More... | |
class | oomph::DoubleMatrixBase |
Abstract base class for matrices of doubles – adds abstract interfaces for solving, LU decomposition and multiplication by vectors. More... | |
class | oomph::DenseMatrix< T > |
Class for dense matrices, storing all the values of the matrix as a pointer to a pointer with assorted output functions inherited from Matrix<T>. The curious recursive template pattern is used here to pass the specific class to the base class so that round bracket access can be inlined. More... | |
class | oomph::SparseMatrix< T, MATRIX_TYPE > |
class | oomph::CRMatrix< T > |
A class for compressed row matrices, a sparse storage format Once again the recursive template trick is used to inform that base class that is should use the access functions provided in the CRMatrix class. More... | |
class | oomph::CRDoubleMatrix |
A class for compressed row matrices. This is a distributable object. More... | |
struct | oomph::CRDoubleMatrix::CRDoubleMatrixComparisonHelper |
Create a struct to provide a comparison function for std::sort. More... | |
class | oomph::DenseDoubleMatrix |
Class of matrices containing doubles, and stored as a DenseMatrix<double>, but with solving functionality inherited from the abstract DoubleMatrix class. More... | |
class | oomph::RankThreeTensor< T > |
A Rank 3 Tensor class. More... | |
class | oomph::RankFourTensor< T > |
A Rank 4 Tensor class. More... | |
class | oomph::RankFiveTensor< T > |
A Rank 5 Tensor class. More... | |
class | oomph::CCMatrix< T > |
A class for compressed column matrices: a sparse matrix format The class is passed as the MATRIX_TYPE paramater so that the base class can use the specific access functions in the round-bracket operator. More... | |
class | oomph::CCDoubleMatrix |
A class for compressed column matrices that store doubles. More... | |
Namespaces | |
oomph | |
oomph::RRR | |
oomph::CRDoubleMatrixHelpers | |
Namespace for helper functions for CRDoubleMatrices. | |
Functions | |
void | oomph::CRDoubleMatrixHelpers::deep_copy (const CRDoubleMatrix *const in_matrix_pt, CRDoubleMatrix &out_matrix) |
Create a deep copy of the matrix pointed to by in_matrix_pt. More... | |
void | oomph::CRDoubleMatrixHelpers::create_uniformly_distributed_matrix (const unsigned &nrow, const unsigned &ncol, const OomphCommunicator *const comm_pt, const Vector< double > &values, const Vector< int > &column_indices, const Vector< int > &row_start, CRDoubleMatrix &matrix_out) |
Builds a uniformly distributed matrix. A locally replicated matrix is constructed then redistributed using OOMPH-LIB's default uniform row distribution. This is memory intensive thus should be used for testing or small problems only. More... | |
double | oomph::CRDoubleMatrixHelpers::inf_norm (const DenseMatrix< CRDoubleMatrix *> &matrix_pt) |
Compute infinity (maximum) norm of sub blocks as if it was one matrix. More... | |
double | oomph::CRDoubleMatrixHelpers::gershgorin_eigenvalue_estimate (const DenseMatrix< CRDoubleMatrix *> &matrix_pt) |
Calculates the largest Gershgorin disc whilst preserving the sign. Let A be an n by n matrix, with entries aij. For ![]() ![]() ![]() ![]() ![]() | |
void | oomph::CRDoubleMatrixHelpers::concatenate (const DenseMatrix< CRDoubleMatrix *> &matrix_pt, CRDoubleMatrix &result_matrix) |
Concatenate CRDoubleMatrix matrices. The in matrices are concatenated such that the block structure of the in matrices are preserved in the result matrix. Communication between processors is required. If the block structure of the sub matrices does not need to be preserved, consider using CRDoubleMatrixHelpers::concatenate_without_communication(...). More... | |
void | oomph::CRDoubleMatrixHelpers::concatenate_without_communication (const Vector< LinearAlgebraDistribution *> &row_distribution_pt, const Vector< LinearAlgebraDistribution *> &col_distribution_pt, const DenseMatrix< CRDoubleMatrix *> &matrix_pt, CRDoubleMatrix &result_matrix) |
Concatenate CRDoubleMatrix matrices. More... | |
void | oomph::CRDoubleMatrixHelpers::concatenate_without_communication (const Vector< LinearAlgebraDistribution *> &block_distribution_pt, const DenseMatrix< CRDoubleMatrix *> &matrix_pt, CRDoubleMatrix &result_matrix) |
Concatenate CRDoubleMatrix matrices. This calls the other concatenate_without_communication(...) function, passing block_distribution_pt as both the row_distribution_pt and col_distribution_pt. This should only be called for block square matrices. More... | |
Variables | |
std::string | oomph::RRR::RayStr |
bool | oomph::RRR::RayBool |