Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Последовательность решения задачи.






 

Пример. Найти корень уравнения x + ln x = 0 методом итераций с точностью e = 0, 01 и e = 0, 001 для двух отрезков локализации корня: с параметром q < 0, 5 и q > 0, 5. Для каждого из отрезков провести расчет для 3-х начальных приближений: границ и середины отрезка локализации корня. Для каждого расчета определить приближенное значение корня x* уравнения, число итераций k до достижения заданной точности, фактическое отклонение от точного решения x.

Вид листа MS Exsel для решения задачи представлен на рисунке.

1. Область определения: x > 0.

2. Находится отрезок области определения, содержащий корень уравнения. В качестве левой границы примем значение x = 0, 1, которое вносим в ячейку А4. В ячейку B4 вносим формулу: " =A4+LN(A4)", позволяющую вычислить значение функции f(x) = x + ln x по заданному в ячейке B4 аргументу. Значения функции f(x) вычисляются с шагом Dx = 0, 5 до тех пор, пока не будет найден отрезок, на концах которого функция f(x) принимает значения разных знаков. Для реализации этой процедуры можно использовать копирование формулы из ячейки В4 в ячейку В5. В рассматриваемом примере искомый отрезок x Î [0, 1; 0, 6] области определения, содержащий корень функции f(x), найден за один шаг Dx = 0, 5 аргумента. Если требуется найти отрезок локализации корня меньшей длины, то может потребоваться несколько итераций до тех пор, пока на границах отрезка значение функции не примет значения разных знаков. В частности, если необходимо найти отрезок локализации длиной Dx = 0, 2, то потребуется три итерации на последовательных отрезках [0, 1; 0, 3], [0, 3; 0, 5], [0, 5; 0, 7]. Для последнего отрезка получены значения функции на его концах, равные f(0, 5) = -0, 19315 и
f(0, 7) = 0, 343325.

3. Вычисляется производная функции f(x): . Производная и является убывающей функцией. Поэтому минимум модуля производной достигается на правой границе отрезка локализации корня, а максимум – на левой границе. В ячейке D6 вычисляется минимальное значение модуля производной m, соответствующее x = 0, 6, по формуле " =ABS(1+1/A5)". В ячейке D7 вычисляется максимальное значение модуля производной M, соответствующее x = 0, 1, по формуле " =ABS(1+1/A4)".

4. По формуле определяется коэффициент уменьшения погрешности за одну итерацию. Для этого в ячейку В8 вводится формула
" =1-D6/D7". Значение q = 0, 7576 < 1 является достаточным условием сходимости итерационного алгоритма.

5. По формуле определяется корректирующий множитель. Для этого в ячейку В9 вводится формула " =-1/D7".

6. Итерационный алгоритм реализуется в соответствии с формулой:

xk+1 = g(xk), где g(xk) = xk + l f(xk), k = 0, 1, 2, …

Так как q > 0, 5, то оценка точности на итерации k + 1 осуществляется по формуле: dk+1 = ½ x - xk+1 ½ £ 10½ xk - xk+1 ½.

Оформляется строка заголовков для реализации итерационной процедуры, используя следующие обозначения: А10 = " №" (номер итерации),
В10 = " х" (текущее приближение корня), С10 = " f(x)" (значение исследуемой функции), D10 = " g(x)" (значение вспомогательной функции), Е10 = " dx" (оценка точности на текущей итерации).

Программируется первая итерация: ячейка A11 = " 1" (номер 1-ой итерации), B11 = " 0.35" (начальное приближение корня – любое число из выделенного отрезка x Î [0, 1; 0, 6]), С11 = " =B11+LN(B11)" (значение функции f(x)), D11 = " =B11+$B$9*C11" (значение функции g(x)), ячейка
Е11 = " =10*ABS(B11-D11)" (оценка точности 1-ой итерации). Используется безусловная ссылка на ячейку В9, содержащая значение неизменяемого при протяжке формул параметра l.

Программируется вторая итерация: ячейка А12 = " 2" (номер 2-ой итерации), B12 = " =D11" (результат 1-ой итерации x1 = g(x0 )), в диапазон C12: Е12 копируются (протягиваются) формулы из диапазона C11: Е11.

Для реализации остальных итераций в столбцы В: Е ниже строки 12 протягиваем формулы из диапазона В12: Е12, номера итераций можно получить протяжкой диапазона А11: А12 вниз по столбцу А. В качестве решения принимается значение в столбце B из строки, в которой оценка точности текущей итерации (столбец Е) стала меньше заданной точности e. Точное решение можно определить, протягивая формулы вниз до тех пор, пока значение функции f(x) не станет равным 0. В рассматриваемом примере корень уравнения равен x = 0, 567143.

Для расчета фактического отклонения решения от точного значения в ячейку F9 внесем найденную величину x = 0, 567143. Записываем заголовок столбца F10 = " Фактическое отклонение". Вносим формулу расчета отклонения: F11 = " =ABS(D11-$F$9)" (½ x - xk ½). Следующие ячейки столбца F заполняются протяжкой формулы из ячейки F11. Используется безусловная ссылка на ячейку F9, содержащая значение неизменяемого при протяжке формул точного значения корня x.

Изменяя начальное приближение в ячейке В11 можно определять приближенное значение корня (столбец D), фактическое отклонение от точного решения (столбец F), число реализованных итераций (столбец А). В рассматриваемом расчете приближенное значение корня с точностью e = 0, 01 равно x*» 0, 564775, достигается за 15 итераций, фактическое отклонение ½ x - xk ½ =0, 002368. Приближенное значение корня с точностью e = 0, 001 равно x*» 0, 56691, достигается за 23 итераций, фактическое отклонение
½ x - xk ½ =0, 000234.

Если , то вспомогательная функция имеет вид
g(xk) = xk - l f(xk). При программировании рабочего листа для итерационной процедуры надо изменить формулу в ячейке D11 = " =B11-$B$9*C11". Остальные ячейки остаются без изменения по сравнению со случаем .

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.