Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Геометрическая иллюстрация метода итераций.
Построим на плоскости хОу графики функций у = х и y = φ (x). Каждый действительный корень является абсциссой точки пересечения М прямой у = х и кривой y = φ (x). отправляясь от некоторой точки А0(х0, φ (x0)) строим ломаную линию А0В1А1В2А2В….. («лестница»), звенья которой попеременно параллельны оси Ох и Оу, вершины А0, А1, А2, … лежат на кривой y = φ (x), а вершины В1, В2, В3, … лежат на прямой у = х. Общие абсциссы точек А1 и В1, А2 и В2, …, представляют собой соответственно последовательные приближения x1, x2, … корня ξ.
Возможен также другой вид ломаной А0В1А1В2А2В…. («спираль»). Очевидно, решение в виде «лестницы» получается, когда производная φ ′ (x) положительна. Решение в виде «спирали», получается, когда φ ′ (x) отрицательна. При этом процесс итерации сходится, если | φ ′ (x)| < 1, т.е. угловой коэффициент касательной к кривой по модулю меньше единицы. Если | φ ′ (x)| > 1, то процесс итерации может расходиться.
y = x y = φ (x)
y B1 A0
B2 A1
B3 M A2 A3 ξ x3 x2 x1 x0 x
y y = x
A1 B2
B3 A3 A0 B1 y = φ (x)
x1 x3 ξ x2 x0 x
П р и м е р. Составим далее на языке QBASIC программу нахождения корня уравнения f(x) = 1 – 3 x + cosx =0 (**) методом итераций с точностью Е =0.0001. Ранее показано, что единственный корень уравнения находится на интервале [-1, 1]. f′ (x) = -3 – sin x < 0, |f′ (x)| ≤ 4, |f′ (x)| ≥ 2. Представляем уравнение (**) в виде x = φ (x) = λ f(x) + x (***)
λ = 1 / r, r = max |f′ (x)| = 4 x = 1 / r (1 -3 x + cos x) +x = 1/4 (1 + x + cos x) ≡ φ (x) Для определения окончания процесса итерации находим величину q из условия | φ ′ (x)|≤ q < 1 |φ ′ (x)| = | 1/4 (1− sin x)| ≤ 1/4 (1+ sin 1) ≈ 0, 46, отсюда q = 0.46. Блок-схема программы нахождения корня методом простых итерации имеет следующий вид. Ввод x0, E, q
q1 = (1 – q) E/ q величина, необходимая для определения окончания процесса итерации.
n = 0, x = x0 n – счетчик числа итераций
t = 0.25 (1 + x + cosx)
n = n + 1
нет |x – t | < q1
да Вывод root = x, n
x = t
end
Текст программы имеет вид: x0 = 0 E =.0001 q =.46 q1 = (1 - q) * E / q n = 0 x = x0 n1: t =.25 * (1 + x + COS(x)) n = n + 1 IF ABS(x - t) < = q1 THEN WRITE " root x =", x, n: GOTO n2 x = t GOTO n1 n2: END
− Ответ программы: x =0.6070896 или, округляя x = 0. 6070857, n = 6. Рассмотренную задачу можно решить в среде MathCAD.
f(x) = 1 – 3x + cosx =0 Представим один из способов решения трансцендентного уравнения в среде MathCAD. Открываем рабочий лист и записываем левую часть уравнения Затемняем один символ (переменную х) в этой записи путем протаскивания курсора. Открываем меню «Символ», подменю «Переменные», щелчок по строке «Решить». На ра бо чемлисте появится результат. Делаем округление.
.60710 Строим график функции, определяющей левую часть уравнения.
|