LRAUV  revA
Matrix6x6 Class Reference

Contains a 6x6 array of double precision floating point numbers, along with methods for performing common operations on the array such as invert(), mult(), etc. More...

#include <Matrix6x6.h>

Inheritance diagram for Matrix6x6:
Collaboration diagram for Matrix6x6:

Public Member Functions

 Matrix6x6 ()
 Empty constructior. More...
 
 Matrix6x6 (const double &init)
 Single Value constructior. More...
 
 Matrix6x6 (Matrix3x3 &m3x3i11, Matrix3x3 &m3x3i12, Matrix3x3 &m3x3i21, Matrix3x3 &m3x3i22)
 4x Matrix3x3 constructior More...
 
 Matrix6x6 (Point6D pos)
 Coordinate transformation constructor. More...
 
Str toString () const
 as a Str More...
 
bool determinantZero ()
 Returns true if the determinant of this matrix is zero. More...
 
void invert ()
 Inverts this matrix. More...
 
void decomposeLU ()
 Obtain the LU decompostion of this matrix. More...
 
void solveLU (Point6D &b, Point6D &x) const
 
bool operator== (const Matrix6x6 &rhs)
 
Matrix6x6operator= (const Matrix6x6 &rhs)
 
Matrix6x6operator= (const double rhs)
 
void set (int index1, int index2, Matrix3x3 &value)
 Allows one to treat this 6x6 matrix as a 2x2 matrix of 3x3 matrices. More...
 
void set (int index1, int index2, const double value)
 
double & operator() (int index1, int index2)
 
void set (const double &v00, const double &v01, const double &v02, const double &v03, const double &v04, const double &v05, const double &v10, const double &v11, const double &v12, const double &v13, const double &v14, const double &v15, const double &v20, const double &v21, const double &v22, const double &v23, const double &v24, const double &v25, const double &v30, const double &v31, const double &v32, const double &v33, const double &v34, const double &v35, const double &v40, const double &v41, const double &v42, const double &v43, const double &v44, const double &v45, const double &v50, const double &v51, const double &v52, const double &v53, const double &v54, const double &v55)
 36 value set More...
 
virtual double ** getPtr2d ()
 Implement abstract I2D method. More...
 
virtual double * getPtr1d ()
 Implement abstract I2D method. More...
 
virtual int getM () const
 Implement abstract I2D method. More...
 
virtual int getN () const
 Implement abstract I2D method. More...
 
- Public Member Functions inherited from I2D< double >
virtual ~I2D ()
 

Protected Attributes

double value_ [36]
 
double * value2d_ [6]
 

Additional Inherited Members

- Static Public Member Functions inherited from I2D< double >
static double ** New2D (int m, int n, bool extra=false)
 
static void Delete2D (double **array)
 
- Protected Member Functions inherited from I2D< double >
 I2D ()
 
 I2D (const I2D &)
 

Detailed Description

Contains a 6x6 array of double precision floating point numbers, along with methods for performing common operations on the array such as invert(), mult(), etc.

Matrix6x6 is not a DataValue!

Constructor & Destructor Documentation

Matrix6x6::Matrix6x6 ( )

Empty constructior.

References value2d_, and value_.

Matrix6x6::Matrix6x6 ( const double &  init)

Single Value constructior.

References value2d_, and value_.

Matrix6x6::Matrix6x6 ( Matrix3x3 m3x3i11,
Matrix3x3 m3x3i12,
Matrix3x3 m3x3i21,
Matrix3x3 m3x3i22 
)

4x Matrix3x3 constructior

References set(), value2d_, and value_.

Matrix6x6::Matrix6x6 ( Point6D  pos)

Coordinate transformation constructor.

References Point6D::getHeading(), Point6D::getPitch(), Point6D::getRoll(), value2d_, and value_.

Member Function Documentation

void Matrix6x6::decomposeLU ( )

Obtain the LU decompostion of this matrix.

References value_.

bool Matrix6x6::determinantZero ( )

Returns true if the determinant of this matrix is zero.

References value_.

Referenced by Simulator::invertMass().

virtual int Matrix6x6::getM ( ) const
inlinevirtual

Implement abstract I2D method.

Implements I2D< double >.

virtual int Matrix6x6::getN ( ) const
inlinevirtual

Implement abstract I2D method.

Implements I2D< double >.

virtual double* Matrix6x6::getPtr1d ( )
inlinevirtual

Implement abstract I2D method.

Implements I2D< double >.

References value_.

Referenced by Point6D::addProduct().

virtual double** Matrix6x6::getPtr2d ( )
inlinevirtual

Implement abstract I2D method.

Implements I2D< double >.

References value2d_.

void Matrix6x6::invert ( )

Inverts this matrix.

References value_.

Referenced by Simulator::invertMass().

double & Matrix6x6::operator() ( int  index1,
int  index2 
)

References value_.

Matrix6x6 & Matrix6x6::operator= ( const Matrix6x6 rhs)

References value_.

Matrix6x6 & Matrix6x6::operator= ( const double  rhs)

References value_.

bool Matrix6x6::operator== ( const Matrix6x6 rhs)

References value_.

void Matrix6x6::set ( int  index1,
int  index2,
Matrix3x3 value 
)

Allows one to treat this 6x6 matrix as a 2x2 matrix of 3x3 matrices.

References value_.

Referenced by Matrix6x6().

void Matrix6x6::set ( int  index1,
int  index2,
const double  value 
)

References value_.

void Matrix6x6::set ( const double &  v00,
const double &  v01,
const double &  v02,
const double &  v03,
const double &  v04,
const double &  v05,
const double &  v10,
const double &  v11,
const double &  v12,
const double &  v13,
const double &  v14,
const double &  v15,
const double &  v20,
const double &  v21,
const double &  v22,
const double &  v23,
const double &  v24,
const double &  v25,
const double &  v30,
const double &  v31,
const double &  v32,
const double &  v33,
const double &  v34,
const double &  v35,
const double &  v40,
const double &  v41,
const double &  v42,
const double &  v43,
const double &  v44,
const double &  v45,
const double &  v50,
const double &  v51,
const double &  v52,
const double &  v53,
const double &  v54,
const double &  v55 
)

36 value set

References value_.

void Matrix6x6::solveLU ( Point6D b,
Point6D x 
) const

References value_.

Str Matrix6x6::toString ( ) const

as a Str

References value_.

Member Data Documentation

double* Matrix6x6::value2d_[6]
protected

Referenced by getPtr2d(), and Matrix6x6().

double Matrix6x6::value_[36]
protected

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