Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика_2 / Раздел3.Решение СЛАУ

.docx
Скачиваний:
58
Добавлен:
29.03.2015
Размер:
572.5 Кб
Скачать
  1. МЕТОДЫ РЕШЕНИЯ СИСТЕМ ЛИНЕЙНЫХ АЛГЕБРАИЧЕСКИХ УРАВНЕНИЙ (СЛАУ)

  1. Приближенные методы решения СЛАУ. Метод Якоби

  2. Матричные функции в MS Excel

  3. Решение СЛАУ с помощью надстройки «Поиск решения»

  4. Реализация метода в MS Excel

3.1. Приближенные методы решения СЛАУ. Метод Якоби

Метод Якоби является одним из приближенных методов решения СЛАУ.

Система линейных алгебраических уравнений (СЛАУ) в общем случае имеет вид:

, (3.1)

В некоторых случаях эту систему удобнее записывать в матричной форме:

, (3.2)

где А - матрица системы, - вектор решения, - вектор свободных членов.

Система (3.1-3.2) имеет единственное решение, если матрица А является невырожденной, т.е. определитель матрицы не равен 0 (detA¹0).

Предполагаем, что выполняется условие «преобладания диагональных коэффициентов» матрицы системы А, т.е.

(3.3)

т.е. модули диагональных элементов каждой строки больше суммы модулей всех остальных элементов. Что обеспечивает сходимость итерационного процесса.

Предполагаем, что диагональные элементы матрицы А отличны от нуля.

Преобразуем систему (3.1) к эквивалентной ей, выражая неизвестное xi из i-ого уравнения:

(3.4)

Система (3.4) называется системой, приведенной к нормальному виду.

Введём обозначения:

Систему (3.4) можно записать в матричной форме:

(3.5)

где

(3.6)

Систему (3.6) решаем методом последовательных приближений (итераций).

За начальное приближение (нулевую итерацию) принимаем столбец свободных членов ,

т.е.

Используя выражение (3.6), строим последовательность приближений (итераций):

(3.7)

Таким образом, получили последовательность приближений:

. (3.8)

Если эта последовательность (4.9) имеет предел , то он является точным решением системы (3.1).

На практике итерационный процесс продолжается до тех пор, пока два соседних приближения не станут достаточно близкими.

Критерий близости двух приближений может быть определен следующим образом:

(3.9)

Если условие (3.9) выполнено, то итерационный процесс прекращается и за приближенное решение системы (3.1) с заданной точностью e принимается k-ое приближение, т.е.

.

Условия сходимости итерационного процесса.

Прежде чем применять итерационные методы для решения какой-либо системы, необходимо убедиться, что решение может быть получено, т.е. итерационный процесс сходится к точному решению.

Доказывается теорема, что итерационный процесс для СЛАУ (3.1) сходится к точному решению, если матрица системы А обладает свойством «преобладания диагональных коэффициентов», т.е. выполняется условие (3.9).

Если detA≠0, то с помощью линейного комбинирования уравнениями исходной системы, ее всегда можно заменить эквивалентной системой, для которой свойство «преобладания диагональных коэффициентов» выполняется.

3.2. Матричные функции в MS Excel

Для решения задач линейной алгебры используются матричные функции Excel из категории математические:

МУМНОЖ(<матрица1>;<матрица2>) – возвращает произведение матриц.

МОБР(<матрица>) – возвращает матрицу, обратную к данной.

МОПРЕД(<матрица>) – вычисляет определитель исходной квадратной матрицы.

Порядок обращения к матричным функциям:

  • выделить блок, где будет размещен результат матричной операции;

  • в мастере функций выбрать нужную категорию и нужную функцию;

  • убрать окно соответствующей функции (с помощью кнопки ) или отбуксировать его в сторону от исходных данных;

  • выделить исходную матрицу (бегущая пунктирная линия);

  • одновременно нажать клавиши Shift+Ctrl+Enter.

Кроме матричных функций в MS Excel имеются ряд функций для вычисления суммы произведений элементов массива, перемножая соответствующие элементы заданных массивов. С помощью данной функции в частности можно найти произведение вектора на вектор:

СУММПРОИЗВ(<вектор1>,<вектор2>) – возвращает число.

    1. Решение СЛАУ с помощью надстройки «Поиск решения»

Задание 3.1. Найти решение системы линейных алгебраических уравнений.

(3.10)

1. Вычислите определитель системы (3.10) и сделайте вывод о существовании и единственности решения системы. Используйте матричные функции Excel.

2. Решите СЛАУ (3.10), используя надстройку Excel «Поиск решения».

В MS Excel имеется возможность решения СЛАУ с помощью надстройки «Поиск решения». Приложение MS Excel использует итерационные (приближенные) методы. Назовем вектором невязок следующий вектор:

(3.11)

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

Последовательность действий при использовании надстройки Excel «Поиск решения»:

Оформите таблицу , как показано на рис.3.1.

Введите

  1. В ячейки А3:С5 коэффициенты системы (матрицу А)

  2. В столбец D - выражения для вычисления левых частей исходной системы . Для этого можно использовать функцию СУММПРОИЗВ, из категории Математические.

  3. В столбец Е запишите значения правых частей системы (матрицу В).

  4. В ячейках А7:С7 будет сформировано решение системы (х1, х2, х3). Первоначально они остаются пустыми, т.е. равными нулю. Однако для контроля правильности вводимых далее формул, удобно ввести в эти ячейки какие-либо значения, например единицы. Эти значения можно рассматривать как нулевое приближение решения системы .

  5. В столбец F введите невязки в соответствии с формулой (3.11). Будет не лишним проверить правильность вычислений для случая .

Рис.3.1. Решение СЛАУ с помощью надстройки

Выберите вкладку Данные\Анализ\Поиск решения (рис. 3.2.).

  • В поле Изменяемые ячейки укажите блок $А$7:$С$7,

  • В поле Ограничения – $F$3:$F$5=0. Для этого надо щелкнуть на кнопке Добавить и ввести эти ограничения.

  • Щелкните на кнопке Выполнить.

Решение системы (3.10.) х1=1; х2=-1 х3=2 получено в ячейках А7:С7, рис.3.1.

Рис. 3.2. Окно Поиск решения

3.4. Реализация метода Якоби в MS Excel

Задание 3.2. Найти решение системы линейных алгебраических уравнений (3.10) методом Якоби.

Проверим, можно ли использовать изложенный выше итерационный метод для заданной системы, т.е. выполняется ли условие «преобладания диагональных коэффициентов» (3.3), что обеспечивает сходимость этого метода (|А11|=8, |А22|=6, |A33|=4)

Приведем эту систему к нормальному виду:

, (3.12)

или в матричной форме ,

где

,

Последовательность действий:

  1. Оформим таблицу, как показано на рис. 3.3.

  2. Введем в ячейки В6:Е8 - исходные данные матрицы и, в ячейку Н5 - значение e.

В столбце А сформируем номер итерации n с помощью автозаполнения.

В ячейки В11:D11 введем начальное приближение решения.

  1. В ячейках В12:D12 запишем формулы для вычисления первого приближения, используя выражение (4.4). Эти формулы имеют вид:

B12 = $E$6 + B11*$B$6 + C11*$C$6 + D11*$D$6,

C12 = $E$7 + B11*$B$7 + C11*$C$7 + D11*$D$7,

D12 = $E$8 + B11*$B$8 + C11*$C$8 + D11*$D$8.

Эти формулы можно записать иначе, используя функцию Excel СУММПРОИЗВ.

  1. Введем формулы в ячейки

Е12 = ABS(B11-B12) и скопируем ее вправо, в ячейки F12:G12.

Н12 = МАКС (E12:G12) (формулу для вычисления M(k). Для этого используем выражение (3.9)),

Функция МАКС находится в категории статистические.

  1. Выделим ячейки В12:Н12 и скопируем их вниз до конца таблицы. Таким образом, получим k-ое приближение решения СЛАУ.

Рис.3.3. Расчетная схема метода Якоби

Определим количество итераций, необходимое для достижения заданной точности e и приближенное решение системы. Для этого оценим степень близости двух соседних итераций по формуле (3.9).

В ячейках столбца Н установим Условное форматирование, о котором уже говорилось при изучении раздела1 (Решение нелинейного уравнения).

Анализируя результаты, принимаем за приближенное решение исходной системы с заданной точностью е=0.1 4-ую итерацию, т.е.

Изменяя значение e в ячейке Н5, получим новое приближенное решение исходной системы с новой точностью.

Исследуем характер итерационного процесса. Для этого выделим блок ячеек А10:D20 и построим графики, отражающие сходимость итерационного процесса, используя Мастер диаграмм. Приведенные графики подтверждают сделанный ранее вывод о сходимости итерационного процесса.