Go to the documentation of this file.
42 double get (
int row,
int col)
const;
58 QVector<double>
operator* (
const QVector<double> other)
const;
64 void set (
int row,
int col,
double value);
75 void addRowToAnotherWithScaling (
int rowFrom,
78 int fold2dIndexes (
int row,
int col)
const;
79 void initialize (
int rows,
82 double epsilonThreshold)
const;
83 Matrix inverseGaussianElimination (
int significantDigits,
85 unsigned int leadingZeros (
int row)
const;
86 void normalizeRow (
int rowToNormalize,
88 int significantDigits,
90 void switchRows (
int row1,
97 bool valueFailsEpsilonTest (
double value,
98 double epsilonThreshold)
const;
102 QVector<double> m_vector;
Matrix class that supports arbitrary NxN size.
Matrix transpose() const
Return the transpose of the current matrix.
QString toString() const
Dump matrix to a string.
Matrix minorReduced(int rowOmit, int colOmit) const
Return minor matrix which is the original with the specified row and column omitted....
void set(int row, int col, double value)
Set (row, col) element.
Matrix & operator=(const Matrix &matrix)
Assignment operator.
Matrix inverse(int significantDigits, MatrixConsistent &matrixConsistent) const
Return the inverse of this matrix.
Matrix operator*(const Matrix &other) const
Multiplication operator with a matrix.
int rows() const
Height of matrix.
double get(int row, int col) const
Return (row, col) element.
int cols() const
Width of matrix.
double determinant() const
Return the determinant of this matrix.
MatrixConsistent
Indicates if matrix is consistent (i.e. has at least one solution)