Тема 1. Решение нелинейных уравнений и систем

Содержание лекции Содержание лабораторной работы
Отделение корней. Приближенное вычисление корня уравнения с заданной точностью методом половинного деления. Метод простой итерации численного решения уравнений. Условия сходимости итерационной последовательности. Практические схемы вычисления приближенного значения корня уравнения с заданной точностью методом простой итерации. Сходимость и устойчивость численного метода. Системы нелинейных уравнений. Методы Ньютона: метод касательных, метод хорд (секущих). Отделение корней уравнения. Решение нелинейных уравнений: метод половинного деления, метод простых итераций, метод Ньютона.

Задание 1.

Вычислить наименьший положительный корень заданного уравнения с точностью e=10-3. Работу провести в три этапа:

1) Провести графическое отделение корней уравнения.

2) Сузить отрезок, полученный графическим способом до отрезка длиной 0.1.

3) Вычислить приближенное решение методом половинного деления.

По итогам выполнения заданий представить корень уравнения, вычисленный с указанной точностью.

Номер варианта соответствует порядковому номеру в списке.

Задание 2.

Найти решение уравнения с точностью , используя метод простой итерации и один из методов Ньютона.

Номер варианта соответствует порядковому номеру в списке.

Исполнение: Освоить реализацию итерационных процессов с использованием логических функций в MS Excel.

Лабораторная установка: Персональный компьютер с ОС Windows, MS Office.

Оценка: Использование инструментальных пакетов для решения трансцендентных уравнений.

Методические указания

Краткая теория метода половинного деления

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

, (1)

где функция определена и непрерывна на конечном или бесконечном интервале . Примерами трансцендентных уравнений являются уравнения

.

Определение 1. Число , такое, что называется корнем уравнения (1).

Для подавляющего числа нелинейных уравнений вида (1) невозможно (или очень сложно) решить задачу нахождения корней уравнения аналитическими методами. Поэтому на практике такие уравнения решаются численными методами, вместо точного решения вычисляется приближенное решение.

Определение 2. Число , такое, что называется приближенным решением уравнения (1), найденным с точностью e>0.

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

Графическое отделение корней.

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

Уточнение корня методом половинного деления.

Основная идея нахождения приближенного решения заключается в сокращении первоначального интервала, определенного при графическом отделении, до интервала длиной 2 e. После того, как удалось сократить интервал до заданной величины, можно определить . В этом случае условие выполнено.

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

Итак, алгоритм численного решения уравнения (1) методом половинного деления заключается в выполнении следующих шагов:

1. определить начальный отрезок ;

2. найти точку с – середину отрезка , ;

3. проверить, какому из отрезков или принадлежит корень. Легко видеть, что проверка выполняется так:

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

4. если длина отрезка больше 2 e, то перейти к пункту 2;

5. закончить вычисления, положив .

Теория электронных таблиц

Для реализации данного алгоритма необходимо воспользоваться логическими функциями. Логические функции предназначены для проверки выполнения условия или для проверки нескольких условий. В отличие от математических функций, при проведении вычислений с логическими функциями мы оперируем понятиями ИСТИНА и ЛОЖЬ.

В общем виде функция, позволяющая учесть при вычислениях условия выглядит так:

ЕСЛИ(логическое выражение; значение1; значение2)

логическое выражение – это выражение, принимающее значения ИСТИНА или ЛОЖЬ. Например, С15=1 – это логическое выражение. Если значение в ячейке С15 равно 1, то выражение принимает значение ИСТИНА, иначе – ЛОЖЬ.

Значение1 – это значение, которое заносится в ячейку, если логическое выражение равно ИСТИНА; значение2 – это значение, которое заносится в ячейку, если логическое выражение равно ЛОЖЬ.

До 7 функций ЕСЛИ могут быть вложены друг в друга в качестве значений аргументов значение1 и значение2 для конструирования более сложных проверок. Если любой из аргументов функции ЕСЛИ является массивом, все элементы массива вычисляются при выполнении функции ЕСЛИ.

Microsoft Excel предлагает дополнительные функции, которые можно применять для анализа данных с использованием условий. Например, для вычисления числа появлений текстовой строки или числа в диапазоне ячеек используется функция СЧЁТЕСЛИ. Для вычисления суммы значений, попадающих в интервал, заданный текстовой строкой или числами, используется функция СУММАЕСЛИ.

Для записи логических выражений (условий) служат стандартные операции сравнения: = (равно), > (больше), < (меньше), >= (больше или равно), <= (меньше или равно), <> (не равно). Если требуется записать более сложные условия, включающие в себя несколько простых условий, то приходится применять такие логические функции, как И, ИЛИ, НЕ.

И(логическое выражение1; логическое выражение2;...)

Функция И будет иметь значение ИСТИНА, если все логические выражения, перечисленные в скобках, истинны. В противном случае результатом функции И будет значение ЛОЖЬ. Всего можно указать до 30 различных условий.

ИЛИ(логическое выражение1; логическое выражение2;...)

Функция ИЛИ возвращает значение ИСТИНА, если хотя бы один из аргументов имеет значение ИСТИНА и возвращает ЛОЖЬ, если все аргументы имеют значение ЛОЖЬ.

НЕ(логическое выражение)

Если логическое выражение имеет значение ЛОЖЬ, то функция НЕ возвращает значение ИСТИНА; если логическое выражение имеет значение ИСТИНА, то функция НЕ возвращает значение ЛОЖЬ.

Методика выполнения

1) Запустить программу Excel. Создать документ Книга1. Сохранить в отведенное место на жестком диске под оригинальным именем, например, Книга Иванова. Первая лабораторная работа выполняется на листе Лист1 вашей первой электронной книги, переименовать его в Лаб1.

2) Создать заголовок сверху по центру будущей таблицы, используя шрифты помельче, 12 пунктов, Аrial курсив и покрупнее, 14 пунктов, Times полужирный. Выделить название темы лабораторной цветом.

3) Сделать подпись Выполнил, Дата, Вариант. Дата должна показывать текущую дату в заданном полном формате. Вставить свою функцию по варианту в математической нотации как объект MS Equation. Выделить формулу цветной рамкой.

4) Завести отдельные ячейки для начала интервала аx и шага табулирования hx, ячейки D7 и D8 на рисунке 1.1. Начало интервала определить вручную. Для заполнения диапазона ячеек со значениями аргумента функции использовать абсолютные адреса этих ячеек. В ячейки C7 и C8 вставьте пояснения Начало интервала аx = и Шаг hx =.

5) В строке 10 оформить шапку таблицы: Номер точки, Значение аргумента, Значение функции, и ниже, в строке 11 сокращенно: №, х, у.

6) Заполнение таблицы.

Создание столбца номеров точек. Набрать 1 в В12. Протащить маркер заполнения формул с нажатым Ctrl до 79 в всплывающем окне для получения арифметической прогрессии с приращением 1 в диапазоне ячеек B13:B90.

 
 

Создание столбца х. В первую сверху ячейку столбца, С12 набираем ссылку на начало интервала =$D$7 (абсолютный адрес). Под ней в ячейку C13 формулу для расчета следующего значения аргумента через предыдущее =C12+$D$8 (комбинация абсолютных и относительных адресов). Протаскиваем маркер заполнения через диапазон ячеек C14:C90 для получения в нем формул расчета значений аргумента.

Создание столбца y. В ячейку D12 набираем формулу расчета функции по варианту для первой строки таблицы. Для 0-го варианта =sin(3*C12)^2-log10(C12-2) (относительный адрес х). Далее используем технику протаскивания формулы для заполнения диапазона ячеек D13:D90 со значениями функции.

7) Форматирование таблицы. Вывести 5 значащих цифр для значений х и 10 для у. Выровнять по десятичной точке. Назначить холодный цвет, например, синий, отрицательным значениям и красный положительным. Навести рамки в таблице по образцу на рисунке 1.1.

8) Посчитать значения функции для х =0.0 и х =1.0. Ответы для контроля приведены в таблице 2 Приложения.

9) Посчитать максимальное Ymax и минимальное Ymin значения функции в полученном диапазоне ячеек.

1) График функции в Excel, как и все остальные диаграммы, строится по дискретным значениям. Исходные данные для графика получены в предыдущей лабораторной Лаб1[Книга Иванова].

2)
Запускаем Мастера диаграмм. Выбираем тип диаграммы График. Во втором окне мастера указываем исходные данные для первого ряда Значения: столбец y, Подписи оси Х: столбец x, Имя: набираем с клавиатуры Грубый график. Для второго ряда Значения и Подписи по оси Х те же, Имя: Сглаженный график. Лишние ряды удалить.

3) Отформатировать график по образцу рисунка 2.1.

На грубом графике соединить точки отрезками прямых сплошными, тонкими, синего цвета, в точках синие прозрачные квадратные маркеры 5 пунктов. На глаженном графике - соединяющие точки линии сплошные, толстые, красные, сглаженные, без маркеров. Настроить порядок рядов так, чтобы тонкие синие линии были видны на фоне красных. Оформить график заголовком, Equation скопировать с листа Лаб1 на график. Подписать оси как Ось Х и Ось Y. Ось Х провести через y =0. Проредить деления шкал, в подписях делений отобразить 2-3 цифры, чтобы не загромождали график. Настроить диапазон оси Y от ~ Ymin до ~ Ymax своей функции. Подпись Выполнил Дата Вариант подставить в шесть надписей из соответствующих ячеек листа. Выровнять и распределить надписи инструментами панели Рисование – Действия – Выровнять, Распределить, Группировка. Убрать серую заливку фона области построения. Линии сетки оставить только горизонтальные по основным делениям оси Y, уменьшить их яркость до светло-серого цвета.

1) Работа с книгой. Перенести диаграмму на отдельный лист под именем График y (x). Для обзора точности построения ломаной и сглаженной линий отобразить график в максимальном масштабе.

2) Создать новый лист, назвать его «Корень».

3) Оформить рабочий лист, написав заголовок «Решение уравнения методом половинного деления», ниже заголовка добавить надпись «Решить уравнение <Ваше уравнение>».

4) Подготовьте лист для проведения графического отделения корней. Сделайте надпись «1. Графическое отделение корней», в ячейку A6 сделайте поясняющую надпись «a=», в ячейку A7 – надпись «b=», в ячейку A8 – «Шаг=».

5) По графику, построенному в листе Графика, определите отрезок, на котором находится наименьший положительный корень. Левую границу отрезка укажите в ячейке B6, а его правую границу – в ячейке B7. В ячейку B8 занесите формулу вычисления шага (b-a)/ 10.

6) Протабулируйте функцию на интервале с вычисленным шагом h. Постройте график данной функции.

7) Сделайте надпись «2. Уточнение отрезка». Подготовьте ячейки для занесения величин a, b, h (см. п.3). Запишите значения a и b, определенные с помощью графика, величину шага укажите равной 0,1.

8) Протабулируйте функцию на новом интервале с заданным шагом h=0,1.

9) Сделайте надпись «3. Метод половинного деления». Аналогично тому, как это было сделано в пп. 3 и 6, подготовьте ячейки для занесения величин a, b. По таблице значений функции определите отрезок, на котором функция меняет знак. Это и будет первоначальный отрезок для метода половинного деления. Скопируйте значения границ этого отрезка в соответствующие ячейки.

10) Ниже границ отрезка укажите заданное значение точности e, внесите поясняющую надпись «Epsilon=».

11) Оформите вычисления по методу половинного деления в виде таблицы:

№ шага a b c f(a) f(b) f(c) b-a решение
                 
                 
                 

Установите вывод 7 значащих цифр после десятичной запятой для всех значений в столбцах 2-9.

На первом шаге в ячейках столбцов 2 (значение a) и 3 (значение b) поставьте ссылки на ячейки, содержащие границы отрезка после его уточнения (п.8). В столбец 3 внесите формулу, соответствующую вычислению c=(a+b)/2, в столбцы 5, 6 и 7 запишите формулы для вычисления f(a), f(b) и f(c). В столбце 8 вычислите длину отрезка а в столбец 9 внесите формулу, реализующую условие

ЕСЛИ b-a £2e, ТО решение=с, ИНАЧЕ решение=” ”.

На втором шаге вычислений формулы в столбцах 4-9 переносятся (“растягиваются”) из первого шага. В столбец 2 вносится формула вида

ЕСЛИ(f(a)*f(c)<=0;a;c),

а в столбец 3 вносится аналогичная формула

ЕСЛИ(f(a)*f(c)>=0;b;c).

Здесь вместо f(a), f(c), a, b, c указываются ссылки на соответствующие ячейки.

Дальнейшие шаги выполняются так же, как второй шаг.

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

12) Скопируйте полученное значение приближенного решения в отдельную ячейку, слева от нее введите надпись «Ответ:», установите вывод 3 значащих цифр после запятой.


Контрольные вопросы и задания

Варианты функции к Заданию 1

Таблица 1

№ варианта Функция
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Варианты функции к Заданию 2

N f(x) [ a, b ]
 
 
 
 
 
 
  [5,25]
  [0.1,10]
.9 [0.1,2]
 
 
 
  [0,3]
  [0,2]
  [0,3]
 
 
 
 
 
 
  [0.001,3]
  [0.1,35]
  [0.01,3]
 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: