PIP 5.6.1
Platform-Independent Primitives
Открытые члены | Открытые статические члены | Полный список членов класса
Шаблон класса PIMathMatrix< Type >

Математическая матрица динамического размера. Использует PIVector2D как хранилище и сохраняет интерфейс, согласованный с PIMathMatrixT. Подробнее...

#include <pimathmatrix.h>

Граф наследования:PIMathMatrix< Type >:
Inheritance graph
[см. легенду]

Открытые члены

 PIMathMatrix (const uint cols=0, const uint rows=0, const Type &f=Type())
 Конструктор класса PIMathMatrix, который создает матрицу. Подробнее...
 
 PIMathMatrix (const uint cols, const uint rows, const PIVector< Type > &val)
 Конструктор класса PIMathMatrix, который создает матрицу. Подробнее...
 
 PIMathMatrix (const PIVector< PIVector< Type > > &val)
 Конструктор класса PIMathMatrix, который создает матрицу. Подробнее...
 
 PIMathMatrix (const PIVector2D< Type > &val)
 Конструктор класса PIMathMatrix, который создает матрицу. Подробнее...
 
PIMathMatrix< Type > & setCol (uint index, const PIMathVector< Type > &v)
 Определить выбранный столбец матрицы. Подробнее...
 
PIMathMatrix< Type > & setRow (uint index, const PIMathVector< Type > &v)
 Определить выбранную строку матрицы. Подробнее...
 
PIMathMatrix< Type > & swapCols (uint r0, uint r1)
 Метод меняющий местами выбранные строки в матрице. Подробнее...
 
PIMathMatrix< Type > & swapRows (uint c0, uint c1)
 Метод меняющий местами выбранные строки в матрице. Подробнее...
 
PIMathMatrix< Type > & fill (const Type &v)
 Метод заполняющий матрицу выбранным значением. Подробнее...
 
bool isSquare () const
 Метод, проверющий является ли матрица квадратной. Подробнее...
 
bool isIdentity () const
 Метод, проверяющий содержит ли главная диагональ единицы и все остальные поля нули. Подробнее...
 
bool isNull () const
 Метод, являются ли все элементы матрицы нулями. Подробнее...
 
bool isValid () const
 Метод, который проверяет является ли матрица пустой. Подробнее...
 
void operator+= (const PIMathMatrix< Type > &sm)
 Сложение с присваиванием с матрицей sm. Подробнее...
 
void operator-= (const PIMathMatrix< Type > &sm)
 Вычитание с присваиванием с матрицей sm. Подробнее...
 
void operator*= (const Type &v)
 Умножение с присваиванием с матрицей v. Подробнее...
 
void operator/= (const Type &v)
 Деление с присваиванием с матрицей v. Подробнее...
 
PIMathMatrix< Type > operator- () const
 Операция отрицания Подробнее...
 
PIMathMatrix< Type > operator+ (const PIMathMatrix< Type > &sm) const
 Матричное сложение. Подробнее...
 
PIMathMatrix< Type > operator- (const PIMathMatrix< Type > &sm) const
 Матричная разность. Подробнее...
 
PIMathMatrix< Type > operator* (const Type &v) const
 Матричное произведение. Подробнее...
 
PIMathMatrix< Type > operator/ (const Type &v) const
 Матричное деление. Подробнее...
 
Type determinant (bool *ok=0) const
 Вычислить определитель матрицы. Подробнее...
 
Type trace () const
 Вычислить след матрицы. Подробнее...
 
PIMathMatrix< Type > & toUpperTriangular (bool *ok=0)
 Преобразование матрицы в верхнетреугольную. Подробнее...
 
PIMathMatrix< Type > & invert (bool *ok=0, PIMathVector< Type > *sv=0)
 Операция обращения матрицы. Подробнее...
 
PIMathMatrix< Type > inverted (bool *ok=0) const
 Операция обращения матрицы. Подробнее...
 
PIMathMatrix< Type > transposed () const
 Транспонирование матрицы. Подробнее...
 
- Открытые члены унаследованные от PIVector2D< Type >
 PIVector2D ()
 Создаёт пустой двумерный массив. Память не выделяется. Подробнее...
 
 PIVector2D (size_t rows, size_t cols, const Type &f=Type())
 Создаёт двумерный массив заданного размера, заполненный копиями f. Подробнее...
 
 PIVector2D (size_t rows, size_t cols, const PIVector< Type > &v)
 Создаёт двумерный массив из существующего одномерного вектора, изменяя его форму. Подробнее...
 
 PIVector2D (size_t rows, size_t cols, PIVector< Type > &&v)
 Конструктор перемещения из существующего одномерного вектора, изменяя его форму. Подробнее...
 
 PIVector2D (const PIVector< PIVector< Type > > &v)
 Создаёт двумерный массив из вектора векторов (рваного массива). Предполагается, что все внутренние векторы имеют одинаковый размер. Подробнее...
 
size_t rows () const
 Возвращает количество строк в двумерном массиве. Подробнее...
 
size_t cols () const
 Возвращает количество столбцов в двумерном массиве. Подробнее...
 
size_t size () const
 Возвращает общее количество элементов (строки * столбцы). Подробнее...
 
ssize_t size_s () const
 Возвращает общее количество элементов в виде знакового числа. Подробнее...
 
size_t length () const
 Возвращает общее количество элементов (то же, что и size()). Подробнее...
 
size_t capacity () const
 Возвращает количество элементов, для которого сейчас выделена память во внутреннем контейнере. Подробнее...
 
bool isEmpty () const
 Проверяет, пуст ли массив. Подробнее...
 
bool isNotEmpty () const
 Проверяет, не пуст ли массив. Подробнее...
 
Type & element (size_t row, size_t col)
 Возвращает ссылку на элемент по заданной строке и столбцу. Подробнее...
 
const Type & element (size_t row, size_t col) const
 Возвращает константную ссылку на элемент по заданной строке и столбцу.
 
Type & element (const Index &idx)
 Возвращает ссылку на элемент по заданному Index.
 
const Type & element (const Index &idx) const
 Возвращает константную ссылку на элемент по заданному Index.
 
const Type & at (size_t row, size_t col) const
 Возвращает константную ссылку на элемент по заданной строке и столбцу Подробнее...
 
const Type & at (const Index &idx) const
 Возвращает константную ссылку на элемент по заданному Index (проверка границ только в отладочном режиме).
 
Type & operator[] (const Index &idx)
 Возвращает ссылку на элемент по заданному Index.
 
const Type & operator[] (const Index &idx) const
 Возвращает константную ссылку на элемент по заданному Index.
 
Row operator[] (size_t index)
 Возвращает прокси-объект для строки по заданному индексу для модификации. Подробнее...
 
RowConst operator[] (size_t index) const
 Возвращает прокси-объект для строки по заданному индексу только для чтения.
 
Type * data (size_t index=0)
 Возвращает указатель на внутренние плоские данные, начиная с опционального смещения. Подробнее...
 
const Type * data (size_t index=0) const
 Возвращает константный указатель на внутренние плоские данные, начиная с опционального смещения.
 
Row row (size_t index)
 Возвращает прокси-объект для строки по заданному индексу для модификации. Подробнее...
 
RowConst row (size_t index) const
 Возвращает прокси-объект для строки по заданному индексу только для чтения.
 
Col col (size_t index)
 Возвращает прокси-объект для столбца по заданному индексу для модификации. Подробнее...
 
ColConst col (size_t index) const
 Возвращает прокси-объект для столбца по заданному индексу только для чтения.
 
PIVector2D< Type > & setRow (size_t row, const RowConst &other)
 Заменяет строку содержимым объекта RowConst только для чтения.
 
PIVector2D< Type > & setRow (size_t row, const PIVector< Type > &other)
 Заменяет строку содержимым PIVector.
 
PIVector2D< Type > & addRow (const RowConst &other)
 Добавляет новую строку в конец массива из другого объекта Row. Подробнее...
 
PIVector2D< Type > & addRow (const PIVector< Type > &other)
 Добавляет новую строку в конец массива из PIVector.
 
PIVector2D< Type > & appendRows (size_t count, const Type &f=Type())
 Добавляет count новых пустых строк в конец массива, заполненных значением f. Подробнее...
 
PIVector2D< Type > & appendColumns (size_t count, const Type &f=Type())
 Добавляет count новых пустых столбцов в конец каждой строки массива. Подробнее...
 
PIVector2D< Type > & deleteRows (size_t row_start, size_t count)
 Удаляет count строк, начиная с указанного индекса строки. Подробнее...
 
PIVector2D< Type > & deleteColumns (size_t col_start, size_t count)
 Удаляет указанные столбцы из массива и обновляет количество столбцов. Подробнее...
 
PIVector2D< Type > & addColumn (const ColConst &other)
 Добавляет новую строку в конец массива из ColConst.
 
PIVector2D< Type > & addColumn (const PIVector< Type > &other)
 Добавляет новую строку в конец массива из PIVector.
 
PIVector2D< Type > & resize (size_t rows, size_t cols, const Type &f=Type())
 Изменяет размер двумерного массива. Подробнее...
 
bool operator== (const PIVector2D< Type > &t) const
 Оператор равенства. Подробнее...
 
bool operator!= (const PIVector2D< Type > &t) const
 Оператор неравенства.
 
PIVector< PIVector< Type > > toVectors () const
 Преобразует двумерный массив в вектор векторов (PIVector<PIVector<T>>). Подробнее...
 
const PIVector< Type > & asPlainVector () const
 Возвращает константную ссылку на внутренний плоский PIVector.
 
PIVector< Type > & asPlainVector ()
 Возвращает ссылку на внутренний плоский PIVector.
 
PIVector< Type > toPlainVector () const
 Возвращает копию внутреннего плоского PIVector.
 
void swap (PIVector2D< Type > &other)
 Меняет местами этот двумерный массив с другим. Подробнее...
 
void clear ()
 Очищает массив, удаляя все элементы и устанавливая размеры в 0. Подробнее...
 
bool contains (const Type &e) const
 Проверяет, содержит ли внутренний плоский вектор элемент e. Подробнее...
 
int entries (const Type &e) const
 Подсчитывает количество вхождений e во внутреннем плоском векторе. Подробнее...
 
int entries (std::function< bool(const Type &e)> test) const
 Подсчитывает элементы в плоском векторе, проходящие test. Подробнее...
 
Index indexOf (const Type &e) const
 Возвращает первый индекс (строка, столбец) элемента e в двумерном массиве. Подробнее...
 
Index indexWhere (std::function< bool(const Type &e)> test, ssize_t start=0) const
 Возвращает первый индекс (строка, столбец) в двумерном массиве, проходящий test. Подробнее...
 
Index lastIndexOf (const Type &e, ssize_t start=-1) const
 Возвращает последний индекс (строка, столбец) элемента e в двумерном массиве. Подробнее...
 
Index lastIndexWhere (std::function< bool(const Type &e)> test, ssize_t start=-1) const
 Возвращает последний индекс (строка, столбец) в двумерном массиве, проходящий test. Подробнее...
 
bool any (std::function< bool(const Type &e)> test) const
 Проверяет, проходит ли какой-либо элемент в плоском векторе test. Подробнее...
 
bool every (std::function< bool(const Type &e)> test) const
 Проверяет, проходят ли все элементы в плоском векторе test. Подробнее...
 
PIVector2D< Type > & fill (const Type &e=Type())
 Заполняет весь двумерный массив копиями e. Подробнее...
 
PIVector2D< Type > & fill (std::function< Type(size_t i)> f)
 Заполняет весь двумерный массив, используя функцию-генератор f на основе плоского индекса. Подробнее...
 
PIVector2D< Type > & assign (const Type &e=Type())
 То же, что и fill().
 
PIVector2D< Type > & assign (size_t rows, size_t cols, const Type &f=Type())
 Задаёт новый размер и заполняет значением. Подробнее...
 
PIVector2D< Type > transposed () const
 Возвращает транспонированный двумерный массив (строки становятся столбцами и наоборот). Подробнее...
 
PIVector2D< Type > & reverseRows ()
 Изменяет порядок строк на обратный на месте. Подробнее...
 
PIVector2D< Type > & reverseColumns ()
 Изменяет порядок столбцов в каждой строке на обратный на месте. Подробнее...
 
PIVector2D< Type > getRange (size_t rowStart, size_t rowCount, size_t colStart, size_t colCount) const
 Возвращает подмассив (диапазон строк и столбцов). Подробнее...
 
PIVector2D< ST > map (std::function< ST(const Type &e)> f) const
 Применяет функцию к каждому элементу и возвращает новый двумерный массив другого типа. Подробнее...
 
PIVector2D< ST > mapIndexed (std::function< ST(size_t row, size_t col, const Type &e)> f) const
 Применяет функцию (с индексами строки и столбца) к каждому элементу и возвращает новый двумерный массив. Подробнее...
 
PIVector2D< Type > & forEachRow (std::function< void(Row)> f)
 Применяет функцию к каждой строке (с возможностью изменения). Подробнее...
 
void forEachRow (std::function< void(RowConst)> f) const
 Применяет функцию к каждой строке (только чтение).
 
PIVector2D< Type > & forEachColumn (std::function< void(Col)> f)
 Применяет функцию к каждому столбцу (с возможностью изменения).
 
void forEachColumn (std::function< void(ColConst)> f) const
 Применяет функцию к каждому столбцу (только чтение). Подробнее...
 
ST reduce (std::function< ST(const Type &e, const ST &acc)> f, const ST &initial=ST()) const
 Аккумулирует значение по всем элементам. Подробнее...
 
ST reduceIndexed (std::function< ST(size_t row, size_t col, const Type &e, const ST &acc)> f, const ST &initial=ST()) const
 Аккумулирует значение по всем элементам с индексами. Подробнее...
 
PIVector2D< Type > & removeRow (size_t row)
 Удаляет строку из двумерного массива. Подробнее...
 
PIVector2D< Type > & removeColumn (size_t col)
 Удаляет столбец из двумерного массива. Подробнее...
 
PIVector2D< Type > & removeRowsWhere (std::function< bool(const RowConst &)> test)
 Удаляет все строки, удовлетворяющие условию. Подробнее...
 
PIVector2D< Type > & removeColumnsWhere (std::function< bool(const ColConst &)> test)
 Удаляет все столбцы, удовлетворяющие условию. Подробнее...
 
PIVector2D< Type > filterRows (std::function< bool(const RowConst &)> test) const
 Возвращает новый двумерный массив, содержащий только строки, прошедшие проверку. Подробнее...
 
PIVector2D< Type > filterColumns (std::function< bool(const ColConst &)> test) const
 Возвращает новый двумерный массив, содержащий только столбцы, прошедшие проверку. Подробнее...
 

Открытые статические члены

static PIMathMatrix< Type > identity (const uint cols, const uint rows)
 Создает матрицу, главная диагональ которой заполнена, а оставшиеся элементы - нулями. Подробнее...
 
static PIMathMatrix< Type > matrixRow (const PIMathVector< Type > &val)
 Создает матрицу-строку, каждый элемент которой равен каждому элементу вектора Подробнее...
 
static PIMathMatrix< Type > matrixCol (const PIMathVector< Type > &val)
 Создает матрицу-столбец, каждый элемент которой равен каждому элементу вектора Подробнее...
 

Подробное описание

template<typename Type>
class PIMathMatrix< Type >

Математическая матрица динамического размера. Использует PIVector2D как хранилище и сохраняет интерфейс, согласованный с PIMathMatrixT.

Класс для работы с матрицами динамического размера и фиксированного типа.

Параметры шаблона
`Type`Здесь можеть быть базовый тип данных C++ или различные классы, где реализованы арифметические операторы(=, +=, -=, *=, /=, ==, !=, +, -, *, /) языка C++.

Конструктор(ы)

◆ PIMathMatrix() [1/4]

template<typename Type >
PIMathMatrix< Type >::PIMathMatrix ( const uint  cols = 0,
const uint  rows = 0,
const Type &  f = Type() 
)
inline

Конструктор класса PIMathMatrix, который создает матрицу.

Аргументы
colsколичество столбов матрицы типа uint.
rowsколичество строк матрицы типа uint.
fтип элементов матрицы.

◆ PIMathMatrix() [2/4]

template<typename Type >
PIMathMatrix< Type >::PIMathMatrix ( const uint  cols,
const uint  rows,
const PIVector< Type > &  val 
)
inline

Конструктор класса PIMathMatrix, который создает матрицу.

Аргументы
colsколичество столбов матрицы типа uint.
rowsколичество строк матрицы типа uint.
valтип PIVector<Type> элементов матрицы.

◆ PIMathMatrix() [3/4]

template<typename Type >
PIMathMatrix< Type >::PIMathMatrix ( const PIVector< PIVector< Type > > &  val)
inline

Конструктор класса PIMathMatrix, который создает матрицу.

Аргументы
valтип PIVector<Type>, который создает матрицу.

◆ PIMathMatrix() [4/4]

template<typename Type >
PIMathMatrix< Type >::PIMathMatrix ( const PIVector2D< Type > &  val)
inline

Конструктор класса PIMathMatrix, который создает матрицу.

Аргументы
valтип PIVector2D<Type>, который создает матрицу.

Методы

◆ identity()

template<typename Type >
static PIMathMatrix< Type > PIMathMatrix< Type >::identity ( const uint  cols,
const uint  rows 
)
inlinestatic

Создает матрицу, главная диагональ которой заполнена, а оставшиеся элементы - нулями.

Аргументы
colsколичество столбов матрицы типа uint.
rowsколичество строк матрицы типа uint.
Возвращает
единичная матрица matrix(cols, rows)

◆ matrixRow()

template<typename Type >
static PIMathMatrix< Type > PIMathMatrix< Type >::matrixRow ( const PIMathVector< Type > &  val)
inlinestatic

Создает матрицу-строку, каждый элемент которой равен каждому элементу вектора

Аргументы
valвектор типа PIMathVector
Возвращает
матрица-строка, каждый элемент которой равен каждому элементу вектора

◆ matrixCol()

template<typename Type >
static PIMathMatrix< Type > PIMathMatrix< Type >::matrixCol ( const PIMathVector< Type > &  val)
inlinestatic

Создает матрицу-столбец, каждый элемент которой равен каждому элементу вектора

Аргументы
valвектор типа PIMathVector
Возвращает
матрица-столбец, каждый элемент которой равен каждому элементу вектора

◆ setCol()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::setCol ( uint  index,
const PIMathVector< Type > &  v 
)
inline

Определить выбранный столбец матрицы.

Если элементов в векторе больше, чем элементов в столбце матрицы или индекс больше количества стобцов, то поведение не определено ("undefined behavior").

Аргументы
indexномер выбранного столбца.
vвектор типа PIMathVector<Type>, которым нужно заполнить столбец.
Возвращает
матрица типа PIMathMatrix<Type>.

◆ setRow()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::setRow ( uint  index,
const PIMathVector< Type > &  v 
)
inline

Определить выбранную строку матрицы.

Если элементов в векторе больше, чем элементов в строке матрицы или индекс больше количества стобцов, то поведение не определено ("undefined behavior").

Аргументы
indexномер выбранной строки.
vвектор типа PIMathVector<Type>, которым нужно заполнить строку.
Возвращает
матрица типа PIMathMatrix<Type>.

◆ swapCols()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::swapCols ( uint  r0,
uint  r1 
)
inline

Метод меняющий местами выбранные строки в матрице.

Вы не можете использовать индекс, который больше количества столбцов, иначе будет неопределенное повередение ("undefined behavior").

Аргументы
r0номер первой выбранного стобца.
r1номер второй выбранного столбца.
Возвращает
матрица типа PIMathMatrix<Type>.

◆ swapRows()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::swapRows ( uint  c0,
uint  c1 
)
inline

Метод меняющий местами выбранные строки в матрице.

Вы не можете использовать индекс, который больше количества строк, иначе будет неопределенное повередение ("undefined behavior").

Аргументы
с0номер первой выбранной строки.
с1номер второй выбранной строки.
Возвращает
матрица типа PIMathMatrix<Type>.

◆ fill()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::fill ( const Type &  v)
inline

Метод заполняющий матрицу выбранным значением.

Аргументы
vпараметр выбранного типа и значения, которым будет заполнена матрица.
Возвращает
заполненная матрица типа PIMathMatrix<Type>.

◆ isSquare()

template<typename Type >
bool PIMathMatrix< Type >::isSquare ( ) const
inline

Метод, проверющий является ли матрица квадратной.

Возвращает
true если матрица квадратная, иначе false.

◆ isIdentity()

template<typename Type >
bool PIMathMatrix< Type >::isIdentity ( ) const
inline

Метод, проверяющий содержит ли главная диагональ единицы и все остальные поля нули.

Возвращает
true если матрица единичная, иначе false.
См. также
isNull(), isValid()

◆ isNull()

template<typename Type >
bool PIMathMatrix< Type >::isNull ( ) const
inline

Метод, являются ли все элементы матрицы нулями.

Возвращает
true если матрица нулевая, иначе false.
См. также
isIdentity()

◆ isValid()

template<typename Type >
bool PIMathMatrix< Type >::isValid ( ) const
inline

Метод, который проверяет является ли матрица пустой.

Возвращает
true если матрица действительна, иначе false.
См. также
isNull(), isIdentity()

◆ operator+=()

template<typename Type >
void PIMathMatrix< Type >::operator+= ( const PIMathMatrix< Type > &  sm)
inline

Сложение с присваиванием с матрицей sm.

Аргументы
smматрица для сложения с присваиванием.

◆ operator-=()

template<typename Type >
void PIMathMatrix< Type >::operator-= ( const PIMathMatrix< Type > &  sm)
inline

Вычитание с присваиванием с матрицей sm.

Аргументы
smматрица для вычитания с присваиванием.

◆ operator*=()

template<typename Type >
void PIMathMatrix< Type >::operator*= ( const Type &  v)
inline

Умножение с присваиванием с матрицей v.

Аргументы
smматрица для умножения с присваиванием.

◆ operator/=()

template<typename Type >
void PIMathMatrix< Type >::operator/= ( const Type &  v)
inline

Деление с присваиванием с матрицей v.

Аргументы
smматрица для деления с присваиванием.

◆ operator-() [1/2]

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::operator- ( ) const
inline

Операция отрицания

Возвращает
копия отрицательной матрицы

◆ operator+()

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::operator+ ( const PIMathMatrix< Type > &  sm) const
inline

Матричное сложение.

Аргументы
smматричное слагаемое.
Возвращает
результат матричного сложения.

◆ operator-() [2/2]

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::operator- ( const PIMathMatrix< Type > &  sm) const
inline

Матричная разность.

Аргументы
smматричное вычитаемое.
Возвращает
результат матричной разности.

◆ operator*()

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::operator* ( const Type &  v) const
inline

Матричное произведение.

Аргументы
vмножитель.
Возвращает
результат произведения.

◆ operator/()

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::operator/ ( const Type &  v) const
inline

Матричное деление.

Аргументы
vделитель.
Возвращает
результат деления.

◆ determinant()

template<typename Type >
Type PIMathMatrix< Type >::determinant ( bool *  ok = 0) const
inline

Вычислить определитель матрицы.

Работает только с квадратными, ненулевыми и обратимыми матрицами.

Аргументы
okэто параметр, с помощью которого мы можем узнать, правильно ли сработал метод.
Возвращает
опеределитель матрицы.

◆ trace()

template<typename Type >
Type PIMathMatrix< Type >::trace ( ) const
inline

Вычислить след матрицы.

Работает только с квадратными матрицами.

Возвращает
след матрицы.

◆ toUpperTriangular()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::toUpperTriangular ( bool *  ok = 0)
inline

Преобразование матрицы в верхнетреугольную.

Работает только с квадратными, ненулевыми и обратимыми матрицами.

Аргументы
okэто параметр, с помощью которого мы можем узнать, правильно ли сработал метод.
Возвращает
копия преобразованной верхнетреугольной матрицы.

◆ invert()

template<typename Type >
PIMathMatrix< Type > & PIMathMatrix< Type >::invert ( bool *  ok = 0,
PIMathVector< Type > *  sv = 0 
)
inline

Операция обращения матрицы.

Работает только с квадратными, ненулевыми и обратимыми матрицами.

Аргументы
okэто параметр, с помощью которого мы можем узнать, правильно ли сработал метод.
Возвращает
обратная матрица.

◆ inverted()

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::inverted ( bool *  ok = 0) const
inline

Операция обращения матрицы.

Работает только с квадратными, ненулевыми и обратимыми матрицами.

Аргументы
okэто параметр, с помощью которого мы можем узнать, правильно ли сработал метод.
Возвращает
копия обратной матрицы.

◆ transposed()

template<typename Type >
PIMathMatrix< Type > PIMathMatrix< Type >::transposed ( ) const
inline

Транспонирование матрицы.

Работает только с квадратными матрицами.

Возвращает
копия транспонированной матрицы.