Rivet API documentation

Rivet 4.1.3

General \( N \)-dimensional mathematical matrix object. More...

#include <MatrixN.hh>

Public Member Functions

Matrix & set (const size_t i, const size_t j, const double value)
double get (const size_t i, const size_t j) const
Vector< N > getRow (const size_t row) const
Matrix< N > & setRow (const size_t row, const Vector< N > &r)
Vector< N > getColumn (const size_t col) const
Matrix< N > & setColumn (const size_t col, const Vector< N > &c)
Matrix< N > transpose () const
Matrix< N > inverse () const
 Calculate inverse.
double det () const
 Calculate determinant.
double trace () const
 Calculate trace.
Matrix< N > operator- () const
 Negate.
constexpr size_t size () const
 Get dimensionality.
bool isZero (double tolerance=1E-5) const
 Index-wise check for nullness, allowing for numerical precision.
bool isEqual (Matrix< N > other) const
 Check for index-wise equality, allowing for numerical precision.
bool isSymm () const
 Check for symmetry under transposition.
bool isDiag () const
 Check that all off-diagonal elements are zero, allowing for numerical precision.
bool operator== (const Matrix< N > &a) const
bool operator!= (const Matrix< N > &a) const
Matrix< N > & operator*= (const Matrix< N > &m)
Matrix< N > & operator*= (const double a)
Matrix< N > & operator/= (const double a)
Matrix< N > & operator+= (const Matrix< N > &m)
Matrix< N > & operator-= (const Matrix< N > &m)

Static Public Member Functions

static Matrix< N > mkZero ()
static Matrix< N > mkDiag (Vector< N > diag)
static Matrix< N > mkIdentity ()

Protected Types

using EMatrix = RivetEigen::Matrix<double,N,N>

Friends

template<size_t M>
Matrix< M > add (const Matrix< M > &, const Matrix< M > &)
template<size_t M>
Matrix< M > multiply (const double, const Matrix< M > &)
template<size_t M>
Matrix< M > multiply (const Matrix< M > &, const Matrix< M > &)
template<size_t M>
Vector< M > multiply (const Matrix< M > &, const Vector< M > &)
template<size_t M>
Matrix< M > divide (const Matrix< M > &, const double)

Detailed Description

template<size_t N>
class Rivet::Matrix< N >

General \( N \)-dimensional mathematical matrix object.


The documentation for this class was generated from the following file:
  • /builds/hepcedar/rivet/include/Rivet/Math/MatrixN.hh