Слайд 1Решение систем линейных алгебраических уравнений
в пакете MATLAB
Слайд 2Ранее
Возможности MATLAB
левостороннее деление
x = A\b
обратная матрица
x = inv(A)*b
Слайд 3Небольшие системы уравнений
Небольшая система содержит, как привило, не более трех
уравнений
Решение, чаще всего, может не требовать компьютера
Методы
графический
Крамера
исключения неизвестных
Слайд 5Сложные случаи решений
Три случая
Параллельные линии
нет решения
Совпадающие линии
множество решений
Близкие линии
трудно определить
точку пересечения
Системы в 1 и 2 случае называются – вырожденными
(особыми, сингулярными)
Случай 3 соответствует плохо обусловленной системе
существуют сложности при численном решении
Слайд 17Метод Гаусса с обратной подстановкой
В рассмотренном варианте метода Гаусса могут
возникнуть ситуации когда решение не может быть найдено или иметь
существенную погрешность
например, в случае если главный элемент равен 0, при нормализации возникает деление на 0
также существенно меньшее значение главного элемента по сравнению с остальными может привести к увеличению погрешности вычислений
Решение – выбор главного элемента
частный
выбор максимального значения главного элемента с последующей перестановкой строк
полный (применяется редко)
выбор максимального значения главного элемента с последующей перестановкой строк и столбцов
Слайд 18Пример – Частный выбор главного элемента
Слайд 19Пример – Частный выбор главного элемента
Слайд 22Факторизация матриц
В математике факторизация или факторинг - это декомпозиция объекта (например,
числа, полинома или матрицы) в произведение других объектов или факторов,
которые, будучи перемноженными, дают исходный объект
Целью факторизации является приведение объекта к «основным строительным блокам»
Матрица может также быть факторизована на произведение матриц специального вида для приложений, в которых эта форма удобна
Виды факторизации матриц
LU
Холецкого
QR
Слайд 25LU факторизация
Два основных шага решения системы
факторизация
выполняется декомпозиция матрицы А на
верхнюю U и нижнюю L треугольные матрицы
подстановка
прямая подстановка определяет промежуточный
вектор d
обратная подстановка определяет вектор неизвестных x
факторизация
подстановка
прямая
обратная
Слайд 26Метод Гаусса как LU факторизация
Слайд 27Метод Гаусса как LU факторизация
Слайд 28Метод Гаусса как LU факторизация
Слайд 29Метод Гаусса как LU факторизация
Слайд 32Метод Гаусса как LU факторизация
Слайд 35LU факторизация с выбором главного элемента
Аналогично методу Гаусса для обеспечения
надежности решения при использовании LU факторизации необходимо применять частный выбор
главного элемента
одним из способов является использование матрицы перестановки
единичная матрица для взаимной замены строк и столбцов
Слайд 36LU факторизация с выбором главного элемента
Слайд 39LU факторизация – MATLAB функции
lu
[L,U] = lu(A) – возвращает верхнюю
треугольную матрицу U и психологическую нижнюю матрицу L (то есть
произведение нижней треугольной матрицы и матрицы перестановок), так что A=L*U
[L,U,P] = lu(A) – возвращает верхнюю треугольную матрицу U, нижнюю треугольную матрицу L и сопряженную (эрмитову) матрицу матрицы перестановок P, так что L*U =P*A
Слайд 45Факторизация Холецкого – MATLAB функции
chol
U = chol(A) – для квадратной
матрицы A возвращает верхнюю треугольную матрицу U, так что U'*U=A
Разложение
Холецкого возможно для действительных и комплексных эрмитовых матриц
Слайд 47Левостороннее деление MATLAB
При использовании левостороннего деления «\» MATLAB выполняет оценку
матрицы коэффициентов и применяет оптимальный метод для решения
MATLAB проверяет вид
матрицы коэффициентов при неизвестных для возможности нахождения решения без применения полного метода Гаусса
разреженная
треугольная
симметричная
В противном случае применяется для квадратной матрицы применяется метод Гаусса с частным выбором главного элемента
Слайд 49QR факторизация – MATLAB функции
qr
[Q,R] = qr(A) – вычисляет верхнюю
треугольную матрицу R того же размера, как и у A,
и унитарную матрицу Q, так что X=Q*R
[Q,R,P] = qr(A) – вычисляет матрицу перестановок P, верхнюю треугольную матрицу R с убывающими по модулю диагональными элементами и унитарную матрицу Q, так что A*P=Q*R
Матрица перестановок P выбрана так, что abs(diag(R)) уменьшается
[Q,R] = qr(A,0) и [Q,R,P] = qr(A,0) – вычисляют экономное разложение, в котором P – вектор перестановок, так что Q*R=A(:,P)
Матрица P выбрана так, что abs(diag(R)) уменьшается
Слайд 51Итерационные методы
Итерационные или аппроксимационные методы являются альтернативой ранее рассмотренным методам
решения СЛАУ, основанным на исключении неизвестных
Можно выделить два основных этапа
выбор
начального приближения
последующее систематическое уточнение
Методы
Гаусса-Зейделя
Якоби
релаксации
бисопряженных градиентов
и др.
Слайд 57Метод Якоби
Метод Гаусса-Зейделя использует найденное значение х сразу же для
нахождения следующего х из другого уравнения
Несколько альтернативный подход, называемый методом
Якоби, заключается в расчете всех х на основании предыдущей итерации
Гаусса-Зейдель
Якоби
Слайд 58Сходимость и диагональное преобладание