DMatrix – класс для работы с  динамическими матрицами

Калюжный О.Н.

Класс DMatrix разработан на языке C++ (в среде Borland Builder6) и предназначен для встраивания в исходный код с целью упрощения программирования операций с матрицами.

Класс позволяет использовать при программировании переопределенные операции: присвоение, сложение матриц, умножение матриц, умножение матрицы на число (справа). Например, код C++, использующий объекты данного класса, может выглядеть так:

A = B;

A = B + C;

A = B * C;

A = B * c;

где A, B и C – объекты класса, с – переменная типа float, double или long double.

Кроме того, класс содержит функции обращения матрицы, вычисления определителя и транспонирования:

A = B. Inverse();  -  обращение матрицы B;

d = B. det();  -  вычисление определителя матрицы B;

A = B. T();  -  транспонирование матрицы B.

Значения ячеек матрицы имеют тип long double, что позволяет производить операции с большой точностью. В некоторых достаточно сложных прикладных задачах, построенных на итеративных алгоритмах, увеличение точности вычислений приводит к ускорению сходимости алгоритма, то есть даже ускоряет работу программы.

На основе класса DMatrix созданы классы для Метода наименьших квадратов и Проекционного решающего алгоритма, что позволяет программировать методы динамической идентификации состояния объекта (физической системы).

Исходники классов и примеры:  здесь и здесь.