1. Решение нелинейного уравнения методом Ньютона-Рафсона

Вид материалаРешение
Подобный материал:
1. Решение нелинейного уравнения методом Ньютона-Рафсона.

1.1 Математическая модель решения уравнения.


Пусть выполняются следующие условия сходимости:
  1. x0 выбрано достаточно близко к решению x=f(x)
  2. Производная f”(x) не становиться слишком большой.
  3. Производная f’(x) не слишком близка к 1.

Предположим, каким-либо методом определено начальное приближение к корню в точке x0 . Вычислим производную в точке x0 по формуле:

(1.1)

где ∆x некоторое малое приращение, примем его равным 0,01. Следующее приближение к корню найдем в точке x1, где касательная к функции f (x), проведенная из точки (x0, f0) пересекает ось абсцисс. Найдём x1 по формуле:

(1.2)

Затем считаем точку х1 в качестве начальной и продолжаем итерационный процесс.


Рисунок 1. Геометрическое представление метода.


Из рисунка видно, что таким способом можно приближаться к корню a. При этом расстояние между очередным xn+1 и предыдущим xn приближениями к корню будет уменьшаться.

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

|xn+1 – xn| <  (1.3)

где  - допустимая погрешность вычисления корня.


1.2 Решение уравнения.


Данный метод был использован для нахождения корня в уравнении

(1.4)

График функции (1.5)




Рисунок 2. График функции.





Рисунок 3. График производной функции.

Для нахождения корня уравнения (1.4) за значение начального приближения было взято значение x = -5. Корень был найден за 3 итерации c точностью 0.1.

В программе Solver Microsoft Excel было найдено решение уравнения (1.4) за 3 итерации.

График нахождения корня по итерациям: Таблица изменения x, f(x), f”(x) по


№ итерации

x

f(x)

f’(x)

1

-0.403

-0.477

0.016

2

0.033

-0.047

0.185

3

0

0

-0.034
итерациям


1.3 Оценка погрешности при нахождении корня уравнения (4):

Так, как ошибка не накапливается при использовании итерационных методов решения уравнений, то будем считать ошибку на последнем шаге итерационного процесса. Значит, ошибка будет содержаться при нахождении очередного приближения к корню по формуле (2).
  1. Вычислим погрешность функции при x = 0:

e = (1/(1-2))*0 - (20/(1-2)2)*(0.1+0.1) + 0 = 0.2
  1. Вычислим погрешность производной функции при x = 0 и ∆x = 0.1:

e = (1/(0.2))*(0.2+0.2) – (0/(0.2)2)*0 = 2
  1. Вычислим итоговую погрешность при x = 0:

e = 1*(0.2 + 0*2 - 0*0) – ((0 - 0*0)/12)*2 = 0.2 


2. Решение системы нелинейных уравнений методом простой итерации.

2.1 Математическая модель решения уравнения.

Пусть требуется решить систему уравнений

(2.1)

где f1, f2,…,fn – заданные нелинейные вещественнозначные функции n вещественных переменных x1, x2 …,xn.

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

,



.

Тогда систему (2.1) можно заменить одним уравнением

(2.2)

Для реализации метода простой итерации систему уравнений (2.1) преобразуем к следующему виду:

(2.3)

или в компактной записи: . (2.4)

На основании (2.4) запишем рекуррентное равенство:

, (2.5)

Где k определяет метод простых итераций.

Запишем метод последовательных приближений (2.5) в развёрнутом виде:

(2.6)

Запишем «зейделеву» модификацию метода простых итераций:

(2.7)

Согласно формуле (2.7) реализуем итерационный процесс.

Для установления момента прекращения итераций при достижении заданной точности может быть использована метрика:

(2.9)

2.2 Решение системы уравнений.

Решим данным методом систему уравнений:

(2.10)

Преобразуем систему (2.10) к виду (2.3):




Реализуем итерационный процесс, возьмём за начальное приближение x1 = 1.

В результате получим следующее значение x1 и x2 по итерациям:

График изменения x1 и x2 по итерациям: Таблица изменения x1, x2, по

Итерациям:


№ итерации

x1

x2

1

3.464102

1.709976

2

3.141667

1.924694

3

3.037420

1.980993

4

3.009488

1.995237

5

3.002381

1.998809

6

3.000596

1.999702

7

3.000149

1.999926



3. Интегрирование функций.


Пусть задан определённый интеграл:

(3.1)

Подынтегральная функция f(x) непрерывно дифференцируема на отрезке [a,b].

Тогда возможно вычисление определённого интеграла следующими методами:


3.1 Интегрирование функций методом правых и левых прямоугольников.

Разделим отрезок [a,b] на N равных отрезков длиной ∆х, где

. (3.2)

Тогда координата правого конца i-го отрезка определяется по формуле

x i = x0 + iх, (3.3)

где x0 = a, i =0,1,…,N.




Рисунок 3.1 Геометрическая интерпретация метода левых прямоугольников





Рисунок 3.2 Геометрическая интерпретация метода правых прямоугольников

Простейшая оценка площади под кривой f(x) может быть получена как сумма площадей прямоугольников, одна из сторон которого совпадает с отрезком [xi,xi+1], а высота равна значению функции в точке х, (метод левых прямоугольников, рисунок 3.1) или в точке xi+1 (метод правых прямоугольни­ков, рисунок 3.2). Погрешность вычисления значения интеграла на каждом ша­ге показана на рисунках заштрихованными фигурами.

Значение определенного интеграла вычисляется по формулам


(3.4)


(3.5)

для методов левых и правых прямоугольников, соответственно.


3.2 Интегрирование функций методом трапеций.

Для вычисления значения интеграла разбиваем отрезок интегрирования [a,b]. на N равных частей и определим значения f (xi) (i = 0, 1, …, N), где xi = x0 + i∆х, x0 = a, i =0,1,…,N;





Рисунок 3.3 Геометрическая интерпретация метода трапеций

Используем линейную интерполяцию. В этом случае фигура, ограниченная графиком функции и прямыми х = хi , х = xi+1, является трапецией (Рисунок 3.3). Вычислим площадь Fi каждой из полученных трапеций:

. (3.6)

Искомый определенный интеграл определяется как сумма площадей всех трапеций:

. (3.7)


3.3 Интегрирование функций методом Симпсона.

Для вычисления значения интеграла разбиваем отрезок интегрирования [a,b] на N равных частей и определим значения f (xi) (i = 0, 1, …, N), где

xi = x0 + iх, x0 = a, i = 0,1,…,N;

Используем параболическую интерполяцию (полиномом второй степени) по трем соседним точкам:

y = ax2 + bx + c. (3.8)

Для нахождения коэффициентов а, b, с полинома, проходящего через точки (x0, y0), (x1, y1), (x2 ,y2), нужно найти решение следующей системы линей­ных уравнений:


(3.9)

относительно неизвестных а, b, c.

Решив систему (3.9) относительно неизвестных а, b, с любым известным методом (например, Крамера), подставив найденные выражения в (3.8) и выполнив элементарные преобразования, получаем:

. (3.10)

Площадь под параболой y = y(x) на интервале [хо, х2] находится посредст­вом элементарного интегрирования (3.10):

(3.11)

где ∆х = x1 – x0 = x2 – x1.

Искомый определенный интеграл находится как площадь всех параболиче­ских сегментов (формула Симпсона):

(3.12)


3.4 Интегрирование функций методом Монте-Карло.

Для вычисления значения интеграла представим, что подынтегральная функция лежит внутри прямоугольника высотой (d – c) и диной (b – a). Сгенерируем ЛГ пар случайных чисел, равномерно распределенных в дан­ном прямоугольнике (рисунок 3.4):


(3.13)


рисунок 3.4 Пояснение метода Монте-Карло


Тогда доля точек (xi,yi), удовлетворяющих условию y ≤ f(xi), является оценкой отношения интеграла от функции f(x) к площади рассматриваемого прямоугольника. Следовательно, оценка интеграла в данном методе может быть получена по формуле:

(3.14)

где ns – число точек, удовлетворяющих условию yi ≤ f(xi), – полное количество точек, А — площадь прямоугольника.

Можно предложить и другой путь вычисления определенного интеграла, рассматривая его как среднее значение функции f(x) на отрезке [a,b]:

(3.15)

где xi – последовательность случайных чисел с равномерным законом рас­пределения на отрезке [a,b].

3.5 Уточнение найденного интеграла.

Для вычисления интеграла с заданной точностью проверим условие |F2 - F1|  . Если условие выполняется, то F2 принимается за искомое значение интеграла. Если условие не выполняется, то последнее значение интеграла F2 принимается за предыдущее, т. е. F1 = F2. После этого удвоим число точек деления отрезка (в методе Монте-Карло число случайно сгенерированных точек) и вычислим новое значение F2. Процесс удвоения N и вычисление F2 будем продолжать до тех пор, пока не выполнится условие |F2 - F1|  .


3.6 Нахождение интеграла и оценка погрешности.

Найдём значение интеграла с точностью 0.001 и оценим погрешность вычисления интеграла. Для оценки погрешности вычислим значение интеграла по формуле Ньютона-Лейбница:

(3.16)

≈1.5574077246


3.6.1Метод правых и левых прямоугольников.


График нахождения интеграла по итерациям: Таблица изменения значения интеграла по итерациям:


№ итера­ции

Значение интегра­ла (метод левых прямоугольников)

Значение интегра­ла (метод правых прямоугольников)

1

1.307879

1.914259

2

1.419576

1.722766

3

1.485075

1.636670

4

1.520377

1.596174

5

1.538675

1.576574

6

1.547987

1.566937

7

1.552684

1.562159

8

1.555042

1.559780

9

1.556224

1.558593

10

1.556816

1.558000



3.6.2 Метод трапеций.

График нахождения интеграла по итерациям: Таблица изменения значения интеграла по итерациям:


№ итерации

Значение интеграла

1

1.562891

2

1.557871

3

1.557440






3.6.3 Метод Симпсона.

График нахождения интеграла по итерациям: Таблица изменения значения интеграла по итерациям:





№ итерации

Значение интеграла

1

1.611069

2

1.571171

3

1.560873

4

1.558276

5

1.557625



3.6.4 Метод Монте-Карло.

График нахождения интеграла по итерациям: Таблица изменения значения интеграла по итерациям:


№ итерации

Значение интеграла

1

0

2

1.750000

3

1.312500

4

2.078125

5

1.531250

6

1.394531

7

1.462891

8

1.695313

9

1.476563

10

1.573975

11

1.553467

12

1.546204

13

1.536591

14

1.564682

15

1.541664

16

1.552559

17

1.559462

18

1.558040

19

1.556364

20

1.558959

21

1.557950

22

1.556861

23

1.558082

24

1.557111



3.6.5 Оценка погрешности методов нахождения интеграла.

Для оценки погрешности методов возьмем за точное значение интеграла значение интеграла, вычисленное по формуле (3.16) с точностью 10-10.

а) Метод левых прямоугольников: 1,5574077246 - 1,5568157690 = 0,0005919556

б) Метод правых прямоугольников: 1,5574077246 - 1,5580001043=-0,0005923797

в) Метод трапеций: 1,5574077246 - 1,5576247707 = -0,0002170461

г) Метод Симпсона: 1,5574077246 - 1,5574399410 = -0,0000322164

д) Метод Монте-Карло: 1,5574077246-1,5571105927 = 0,0002971319