Метод понижения порядка разложением по элементам строки
Минором какого-либо элемента называется определитель, получаемый из данного определителя вычеркиванием той строки и того столбца, на пересечении которых стоит элемент.
Алгебраическим дополнением элемента называется минор, взятый со своим или противоположным знаком согласно следующему правилу: если сумма номеров столбца и строки, на пересечении которых стоит элемент, есть число четное, то минор берется со своим знаком, если нечетное, - то с противоположным.
Для определителя любого порядка справедлива следующая теорема. Определитель равен сумме произведений элементов какой-либо строки (или какого-либо столбца) на их алгебраические дополнения, т.е.
(11)
где aij – элемент определителя;
Aij – алгебраическое дополнение элемента aij;
n – порядок определителя.
В этом заключается этот метод. Если все элементы определителя определены с одной и той же абсолютной погрешностью, то, чтобы при вычислении определителя потерять в точности в наименьшей степени, следует раскладывать по такой строке, в которой абсолютные значения элементов наименьшие. Это связано с тем, что большие по абсолютному значению элементы более точные, чем меньшие. То есть следует составлять алгебраические дополнения из больших элементов, так как арифметические операции с ними вносят наименьшую погрешность.
Так для матрицы (1) следует раскладывать по первой строке, a для (2) по третьей. Для матрицы (3) принципиальной разницы нет, однако для ускорения расчета следует взять строку с большим числом нулей, например, первую.
|
|
Так как в определителе матрицы (2) можно выделить минор только второго порядка, а в (1) и (3) – третьего, - то для их подсчетов логично применить соответственно формулы (12) и (13).
(12)
(13)
Рассмотрев этот метод, приходим к выводу, что уже для третьего порядка нужно произвести большое число операций. К счастью все эти операции тривиальны и поддаются программированию.
Выделим основной алгоритм.
1 Выбрать строку с наименьшими по абсолютному значению элементами.
2 Найти алгебраическое дополнение для текущего элемента.
3 Умножить текущий элемент на его алгебраическое дополнение.
4 Повторить действия 2-3 для всех остальных элементов выбранной строки и сложить все результаты.
При этом для подсчета миноров второго порядка следует применять формулу (12), а третьего (13).
Программная реализация алгоритма в среде Mathcad состоит из трех модулей.
Модуль user_minor(A,r,c) выделяет из матрицы А новую для подсчета минора элемента, стоящего в строке r и столбце c.
Модуль user_det(A) возвращает определитель матрицы А. В частности, этот модуль применяется для нахождения миноров.
|
|
Модуль user_row_expansion(A,row) выполняет вышеописанный алгоритм, применяя первые два модуля. Модулю для расчета необходима матрица А и строка row, по которой будет происходить разложение.
Результаты работы модулей следует смотреть в следующей главе.
Решение задач
В этой главе будет показано решение задачи нахождения определителей методами, описанными в предыдущем разделе. Проверку результата будем осуществлять внутренними средствами среды Mathcad и их результат считать истинным.
Дата добавления: 2015-12-17; просмотров: 16; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!