Gromacs  2027.0-dev-20260907-6e2a20dd
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Classes | Public Member Functions
gmx::BasicMatrix3x3< T > Class Template Reference

#include <gromacs/utility/matrix.h>

Description

template<typename T>
class gmx::BasicMatrix3x3< T >

Three-by-three matrix of ElementType.

Template Parameters
ElementTypetype of element to be stored in matrix

Classes

class  RowProxy
 Proxy class for row-wise access via a[i][j] syntax. More...
 

Public Member Functions

constexpr BasicMatrix3x3 () noexcept=default
 Default constructor.
 
constexpr BasicMatrix3x3 (const std::array< ElementType, sc_matrixSize > &array) noexcept
 Constructor from a 9 element std::array.
 
ElementType & operator() (const size_t row, const size_t col)
 Old style access operator()
 
const ElementType & operator() (const size_t row, const size_t col) const
 Old style access operator()
 
RowProxy< BasicMatrix3x3,
ElementType > 
operator[] (const size_t row)
 Row access: returns proxy for the given row, enabling a[i][j] syntax.
 
RowProxy< const BasicMatrix3x3,
const ElementType > 
operator[] (const size_t row) const
 const Row access: returns a const proxy for the given row, enabling a[i][j] syntax
 
BasicMatrix3x3 operator+ (const BasicMatrix3x3 &other) const
 Return result of adding other matrix to this one.
 
BasicMatrix3x3 operator- (const BasicMatrix3x3 &other) const
 Return result of subtracting other matrix from this one.
 
BasicMatrix3x3 operator- () const
 Return negation of all values of this matrix.
 
bool operator== (const BasicMatrix3x3 &other) const
 Return == result, true if all element pairs are equal.
 
BasicMatrix3x3 operator* (const BasicMatrix3x3 &other) const
 Return result of multiplication (inner product) of this matrix by other matrix.
 
BasicMatrix3x3 operator* (const ElementType &scalar) const
 Return result of multiplication this matrix by constant scalar.
 
BasicMatrix3x3 operator/ (const ElementType &scalar) const
 Return result of division this matrix by constant scalar.
 
BasicMatrix3x3operator+= (const BasicMatrix3x3 &other)
 Return result of addition with assignment of other matrix to this matrix.
 
BasicMatrix3x3operator-= (const BasicMatrix3x3 &other)
 Return result of subtraction with assignment of other matrix from this matrix.
 
BasicMatrix3x3operator*= (const ElementType &scalar)
 Return result of multiplication with assignment of this matrix by scalar.
 
BasicMatrix3x3operator/= (const ElementType &scalar)
 Return result of division with assignment of this matrix by scalar.
 
BasicVector< ElementType > operator* (const BasicVector< ElementType > &vector) const
 Returns result of multiplication of this matrix by a vector.
 
ArrayRef< ElementType > toArrayRef ()
 Conversion to gmx::ArrayRef.
 
ArrayRef< const ElementType > toConstArrayRef () const
 Conversion to const ArrayRef.
 
ElementType * data ()
 Returns a pointer to the start of the storage.
 
const ElementType * data () const
 Returns a const pointer to start of the storage.
 
void swap (BasicMatrix3x3 &other) noexcept
 Swaps two matrices.
 
void clear ()
 Sets all elements to 0.
 

The documentation for this class was generated from the following files: