![]()  | 
  
    OGS
    
   | 
 
Definition in file LinAlg.h.
#include <cassert>#include "BaseLib/Error.h"#include "LinAlgEnums.h"#include <petscsystypes.h>#include "PETSc/PETScVector.h"Go to the source code of this file.
Namespaces | |
| namespace | MathLib | 
| namespace | MathLib::LinAlg | 
Functions | |
| template<typename MatrixOrVector > | |
| void | MathLib::LinAlg::copy (MatrixOrVector const &x, MatrixOrVector &y) | 
Copies x to y.   | |
| template<typename MatrixOrVector > | |
| void | MathLib::LinAlg::scale (MatrixOrVector &x, double const a) | 
Scales x by a.   | |
| template<typename MatrixOrVector > | |
| void | MathLib::LinAlg::aypx (MatrixOrVector &y, double const a, MatrixOrVector const &x) | 
| Computes \( y = a \cdot y + x \).   | |
| template<typename MatrixOrVector > | |
| void | MathLib::LinAlg::axpy (MatrixOrVector &y, double const a, MatrixOrVector const &x) | 
| Computes \( y = a \cdot x + y \).   | |
| template<typename MatrixOrVector > | |
| void | MathLib::LinAlg::axpby (MatrixOrVector &y, double const a, double const b, MatrixOrVector const &x) | 
| Computes \( y = a \cdot x + b \cdot y \).   | |
| template<typename MatrixOrVector > | |
| void | MathLib::LinAlg::componentwiseDivide (MatrixOrVector &w, MatrixOrVector const &x, MatrixOrVector const &y) | 
| Computes \(w = x/y\) componentwise.   | |
| template<typename MatrixOrVector > | |
| double | MathLib::LinAlg::norm1 (MatrixOrVector const &x) | 
Computes the Manhattan norm of x.   | |
| template<typename MatrixOrVector > | |
| double | MathLib::LinAlg::norm2 (MatrixOrVector const &x) | 
Computes the Euclidean norm of x.   | |
| template<typename MatrixOrVector > | |
| double | MathLib::LinAlg::normMax (MatrixOrVector const &x) | 
Computes the maximum norm of x.   | |
| template<typename MatrixOrVector > | |
| double | MathLib::LinAlg::norm (MatrixOrVector const &x, MathLib::VecNormType type) | 
| template<typename Matrix > | |
| void | MathLib::LinAlg::finalizeAssembly (Matrix &) | 
| template<typename Matrix , typename Vector > | |
| void | MathLib::LinAlg::matMult (Matrix const &A, Vector const &x, Vector &y) | 
| template<typename Matrix , typename Vector > | |
| void | MathLib::LinAlg::matMultAdd (Matrix const &A, Vector const &v1, Vector const &v2, Vector &v3) | 
| void | MathLib::LinAlg::setLocalAccessibleVector (PETScVector const &x) | 
| void | MathLib::LinAlg::set (PETScVector &x, PetscScalar const a) | 
| void | MathLib::LinAlg::copy (PETScVector const &x, PETScVector &y) | 
| void | MathLib::LinAlg::scale (PETScVector &x, PetscScalar const a) | 
| void | MathLib::LinAlg::aypx (PETScVector &y, PetscScalar const a, PETScVector const &x) | 
| void | MathLib::LinAlg::axpy (PETScVector &y, PetscScalar const a, PETScVector const &x) | 
| void | MathLib::LinAlg::axpby (PETScVector &y, PetscScalar const a, PetscScalar const b, PETScVector const &x) | 
| void | MathLib::LinAlg::copy (PETScMatrix const &A, PETScMatrix &B) | 
| void | MathLib::LinAlg::scale (PETScMatrix &A, PetscScalar const a) | 
| void | MathLib::LinAlg::aypx (PETScMatrix &Y, PetscScalar const a, PETScMatrix const &X) | 
| void | MathLib::LinAlg::axpy (PETScMatrix &Y, PetscScalar const a, PETScMatrix const &X) | 
| void | MathLib::LinAlg::matMult (PETScMatrix const &A, PETScVector const &x, PETScVector &y) | 
| void | MathLib::LinAlg::matMultAdd (PETScMatrix const &A, PETScVector const &v1, PETScVector const &v2, PETScVector &v3) | 
| void | MathLib::LinAlg::linearSysNormalize (PETScMatrix const &, PETScMatrix &, PETScVector const &, PETScVector &) | 
| void | MathLib::LinAlg::finalizeAssembly (PETScMatrix &A) | 
| void | MathLib::LinAlg::finalizeAssembly (PETScVector &x) | 
| template<typename VectorType > | |
| double | MathLib::LinAlg::computeRelativeNorm (VectorType const &x, VectorType const &y, MathLib::VecNormType norm_type) |