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

Лекция3

.pdf
Скачиваний:
17
Добавлен:
14.03.2016
Размер:
766.02 Кб
Скачать

ПРИМЕР 2

Вычислить интеграл с помощью метода трапеций и

 

Симпсона, N = 4.

2

 

2

 

 

I

3x

 

2x 1 dx

 

1

 

 

 

 

Решение. Вычислим шаг сетки:

 

 

h

2 1

0.25

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Составим таблицу значений функции:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x

 

1

 

1.25

 

 

1.5

 

1.75

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

2

 

3.1875

 

 

4.75

 

6.6875

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

По формуле

 

 

 

 

 

 

 

2 9

 

 

 

 

 

 

 

трапеций:

 

Itr 0.25

 

 

3.1875 4.75 6.6875 5.031

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

По формуле

 

 

Isim

0.25

2 4 3.1875 2 4.75 4 6.6875 9 5

 

 

 

Симпсона:

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Точное решение I = 5

Решение в MathCAD

simp(a b N g)

 

h

 

(b a)

 

 

 

 

 

 

 

N

 

 

 

 

 

 

 

 

 

 

for

i 0 N

 

 

 

 

xi a h i

 

 

 

 

 

 

f

i

g x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

S f0 fN

 

 

 

for

i 1 N 1

 

 

 

S S

2 fi

 

 

 

 

 

 

S S

4 fi

 

 

 

 

 

 

 

 

S S

 

h

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

simp(a b 10 g) I 3.392 10 6

if mod(i 2) 0

otherwise

simp(a b 20 g) I 2.115 10 7

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Вычисление производной от таблично заданной функции

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

Задана таблица значений функций:

x

x0

x1

x2

..

xN

xi, i=0, 1,..., N; a x i b

f

f0

f1

f2

..

fN

 

 

 

 

 

 

 

 

Требуется найти F (z) для заданного значения z [a, b]

13

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Методы решения:

•Построить интерполирующую функцию F(x), x[a,b], найти ее производную F (z)

•Можно использовать кусочно-параболическую, кусочно-кубическую интерполяцию

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

'

 

 

 

 

 

 

fi 1

fi

 

 

f xi

 

 

 

 

 

 

Разность «вперед»

 

 

xi 1

xi

 

 

 

 

 

 

 

 

 

 

'

 

 

fi

 

fi 1

Разность «назад»

 

f xi

 

 

 

 

 

 

 

 

 

 

 

xi

 

xi 1

 

 

 

 

 

 

 

 

'

 

 

 

 

fi 1 fi 1

Центральная разность

 

f xi

 

 

 

 

 

 

 

 

14

 

xi 1 xi 1

 

 

 

 

 

 

 

 

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Геометрическая иллюстрация

 

 

f_

 

f+

fi

 

fi+1

 

 

 

f

fi-1

xi-1

xi

xi+1

Какая формула точнее?

15

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Оценка погрешности формулы «разность вперед»

 

 

 

 

f '

x

fi 1 fi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i

 

 

h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Разложим функцию в ряд Тэйлора в точке xi

 

 

 

fi 1

f (xi 1 ) f (xi h) fi hfi

 

 

h2

 

 

 

h3

 

 

 

 

 

 

 

 

 

 

2

 

 

fi

 

fi ...,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

 

 

 

 

 

Подставим в формулу:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

h3

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

h

 

 

'

 

fi hfi

2

fi

6

fi ... fi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f xi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h

 

 

 

 

 

 

fi

 

2 fi

 

6 fi ...

Главный член погрешности 16

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Оценка погрешности

 

 

 

 

 

 

 

 

 

 

 

f ' xi

fi 1 fi 1

 

 

 

 

формулы «центральная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

разность»

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fi 1

fi

hfi

 

 

 

h2

 

 

 

h3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

fi

6

 

fi ...,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fi

hfi

 

 

h2

 

 

 

 

h3

 

 

 

 

 

 

 

 

 

 

 

 

 

fi 1

 

 

 

 

 

 

 

 

 

 

 

fi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

fi

6

....

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fi hfi

 

 

h2

 

 

fi

 

h3

 

fi

 

 

 

 

 

 

 

 

h2

fi

 

h3

fi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

'

 

 

 

 

2

 

 

 

 

 

6

 

 

... fi hfi

 

2

 

6

...

f xi

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fi

 

 

h2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6

 

fi ...

 

 

 

 

 

 

 

 

 

 

 

Главный член погрешности 17

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

ПРИМЕР

Вычислить приближенные значения производных от функции f(x)=sin(x) на отрезке [0, /2] c шагом /6.

 

 

f(x)

 

f(x) точно

 

 

 

 

 

 

x

 

 

 

f+(x)

 

f_(x)

 

f (x)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

0.954

 

-

 

-

 

 

1

 

 

 

0.524

 

 

 

 

 

 

 

 

 

 

 

0.5

 

 

 

0.698

 

0.954

 

0.827

 

 

0.866

 

 

 

1.047

 

 

 

 

 

 

 

 

 

 

 

0.866

 

 

 

0.256

 

0.698

 

0.478

 

 

0.5

 

 

 

1.571

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

-

 

0.256

 

-

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

18

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Метод неопределенных коэффициентов

f x0 f0 hf1 f2

неопределенные коэффициенты

Разложим f1, f2

в ряд Тэйлора:

f

 

 

1

 

 

 

 

 

 

x

 

f

0

 

f

0

 

 

0

h

 

 

 

 

 

 

 

 

 

 

 

 

hf0 ( )

 

 

f

 

 

 

f

 

 

 

hf

 

 

 

h2

f

 

 

 

h3

f

 

...,

 

 

 

 

 

 

 

1

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

2

 

o

 

6

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

f

 

 

 

2hf

 

 

2h2

f

 

 

4h3

f

....

 

 

 

 

2

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

0

 

3

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2

 

 

 

 

 

h3

 

 

 

 

 

 

 

 

 

 

2h f 2h

2

 

 

4h3

 

h f

 

 

 

 

f

 

 

 

f

 

 

 

f

 

 

f

 

 

 

 

 

 

 

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

0

2

 

 

o

 

6

 

0

 

 

 

 

 

 

0

 

 

 

0

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

 

 

 

 

 

hf

 

 

2 ) h

2

 

f

 

 

0

( 2 )

0

(

2

 

 

0

(

6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f

 

 

 

43 )

19

ЧИСЛЕННОЕ ДИФФЕРЕНЦИРОВАНИЕ

Метод неопределенных коэффициентов

 

0

 

 

 

 

 

 

 

 

3

 

 

 

 

1

 

 

 

 

 

2 1

 

 

 

 

 

 

 

 

 

, 2,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

2 0,

 

 

 

 

 

 

 

 

 

3 f0 4 f1 f2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ch

2

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

f x0

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3 fN 4 fN 1 fN 2

ch

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f xN

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

f xN

 

 

3 f

N

4 f

N 1

f

N 2

 

 

3 1 4 0.866 0.5

0.034

Точное

 

 

 

 

 

 

 

 

 

 

 

 

1.047

 

 

 

значение =0

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

f x0

3 f0 4 f1

f2

 

 

3 0 4 0.5 0.866

1.083

Точное

 

 

 

 

значение =1

 

 

 

 

 

 

 

 

1.047

 

 

 

 

 

 

 

 

 

 

 

2h

 

 

 

 

 

 

 

 

 

 

 

 

20