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

Выч.мат

..pdf
Скачиваний:
48
Добавлен:
11.06.2015
Размер:
884.09 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ ОБНИНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ АТОМНОЙ ЭНЕРГЕТИКИ (ИАТЭ)

Факультет естественных наук

А.А.ШУТОВ

ЗАДАЧИ И УПРАЖНЕНИЯ

по курсу «Вычислительная математика»

Обнинск 2005

УДК 519.6 (076.1)

Шутов А. А. Задачи и упражнения по курсу «Вычислительная математика»: Учебное пособие. – Обнинск : ИАТЭ, 2005. – 84с.

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

Пособие предназначено студентам 2 курса факультета кибернетики.

Илл. 18, табл. 32, библиогр. 7 назв.

Рецензенты: к.ф.-м. н. А. Ф. Шапкин, к.ф.-м. н. В. Н. Латышев

Темплан 2005, поз. 11

©Обнинский государственный технический университет атомной энергетики, 2005 г.

©А.А. Шутов, 2005 г.

I. Абсолютная и относительная погрешность числа. Правила округления

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

Определение 1. Погрешностью определения (записи) числа a является разность между приближенным значением a и точной величиной a:

a = a a .

(1)

Определение 2. Абсолютной погрешностью числа a называется мо-

дуль a :

∆ =

 

a a

 

.

(2)

 

 

Определение 3. Относительная погрешность есть отношение аб-

солютной погрешности к модулю числа

δ =

 

.

(3)

 

a

 

 

 

 

 

 

 

Чаще всего, точная величина a неизвестна, и тогда вводят предель-

ную абсолютную погрешность a , которую определяют как вся-

кое число, не меньшее абсолютной погрешности

= a a ≤ ∆a .

Впоследнем неравенстве обычно указывается наименее возможное число, и практически a определяется по коридору значений, в

котором заключена a. Например, для числа π известно, что 3,14 р 3,15 . Отсюда, взяв разность крайних значений, находим

a =0,01 . Можно улучшить эту оценку, взяв 3,14 р 3,142 , откуда находим, что р = 3,14 +0,002 .

1. Погрешность вычисления значения функции

Абсолютная и относительная погрешность дифференцируемой функции y = f(x) одного переменного определяется формулами соответственно:

 

 

 

 

 

f

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(x)

 

 

 

y =

f (x)

x ,

δ y =

 

 

 

 

 

 

 

x .

 

 

 

 

 

 

 

 

 

f (x)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Абсолютная погрешность функции n переменных f(x1, x2, …, xn) определяется выражением

3

n

 

f

 

 

 

 

y =

 

 

 

x

,

(4)

 

i=1

xi

 

i

 

 

 

 

 

 

а относительная погрешность

n

1

 

 

 

f

 

 

 

δ y =

 

 

 

 

 

 

 

x .

(5)

 

 

 

 

 

 

 

 

 

 

 

 

i=1

f

 

 

 

xi

 

i

 

2. Операции с приближенными числами

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

Рассмотрим алгебраическую сумму

y = ±x1 ± x2 ±... ± xn .

(6)

Тогда, используя (4), имеем

y = ∆x1 + ∆x2 +... + ∆xn .

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

2.2. Погрешность произведения и частного от деления чисел. От-

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

y = x1 x2 ... xn .

(7)

Используя (5), имеем

 

 

+ +δx .

δ y

δx

+δx

 

1

 

2

n

Относительная погрешность частного не превышает суммы относительных погрешностей делимого и делителя.

Пусть y = x1

x2

, тогда δ y δx

+δx

2

.

 

 

1

 

 

3. Правила округления чисел. Правильные знаки числа

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

a =α1 g m +α2 g m1 + +αn g mn+1 +αn+1 g mn

абсолютная погрешность

∆ = a a 21 g mn+1 ,

4

то первые n цифр α1 ,α2 , ,αn верные. Здесь g – основание сис-

темы счисления.

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

Результат вычислений представляется, как правило, в округленном виде. В вычислительных машинах округление сводится к обрезанию чисел до величины, определяемой разрядностью машины. Немного иначе устроено правило округления при ручных расчетах. Если мы хотим удержать в числе первые n знаков, и если в следующем (n +1) разряде стоит цифра an+1 5 , то к n-му разряду

добавляется единица. В противном случае цифра nго порядка остается без изменений.

Пример 1. Число имеет 4 правильных знака после запятой a =a0 +a1 101 + a2 10 2 + a3 103 + a4 10 4 ,

если погрешность не превышает ∆ ≤ 10 4 2 = 5 10 5 .

Пример 2. Найти сумму приближенных чисел 345,4; 235,2; 11.75; 9.27; 0,348; 0,1834; 0,0849; 0,0214, считая в них все знаки верными.

Решение. Наибольшую погрешность имеют первые два числа, равную 1 = 0,05. Погрешность всей суммы в данном случае определяется суммой погрешностей первых двух чисел, т.е. = 21 = 0.1. Вычисление суммы всех чисел с одним запасным знаком дает S = 602,25. Здесь верный знак – это первый знак после запятой, поэтому второй знак после запятой следует отбросить, и сумма равна S = 602,2, причем к погрешности добавляем погрешность округления 0,05, и таким образом, суммарная погрешность равна S = 0,15.

Задачи

1. С какой минимальной точностью надо измерять радиус круга r = 40 см и со скольким наименьшим количеством верных знаков взять число π, чтобы площадь круга вычислялась с точностью 0.01%?

2. Определить относительную погрешность при вычислении полной поверхности усеченного конуса, если радиусы его оснований R, r, и образующая l, измерены с абсолютной погрешностью .

3. Вычислить значение функции y = x3 sin x и определить абсолют-

ную и относительную погрешность при x= 2 , полагая 2 1.414. 4. С каким числом верных знаков следует взять свободный член уравнения

x2 2x + lg 2 = 0 ,

5

чтобы получить корни уравнения с верными первыми четырьмя значащими цифрами?

5. По экватору шара, сопоставимого с земным шаром, натянута нить вплотную к поверхности. Затем нить удлиняется на L и натягивается над шаром по окружности, соосной с экватором:

а) на сколько необходимо удлинить нить, чтобы увеличить радиус на 2 метра?

b) произвольная точка, удлиненной на L нити, смещается в радиальном направлении от центра; каково будет наибольшее расстояние h от этой точки до поверхности сферы радиусом R?

6. С каким количеством знаков следует брать число π, чтобы вычислить с тремя правильными знаками

a) sin 1° ; b) cos 1°.

7. С каким числом верных знаков следует взять значение аргумента

x, чтобы получить значения указанных функций с точностью до

10−6 ?

a) y = x 3 sin x,

x =

2 ;

b) y = x ln x, x = π ;

c) y = e x cos x,

x =

3 .

 

8. Прямолинейный стержень длиной l = 1 метр, жестко зажатый на краях, нагревается на T = 400°. Коэффициент линейного расширения стержня α = 10 5 град1. Определить наибольшее отклонение h стержня от положения равновесия, если в результате термического расширения он принимает форму

a)равнобедренного треугольника;

b)квадратичной параболы, симметричной относительно краев.

Ответы и указания.

2).

2l

+3R

+3r

,

4). 4,

5а) 12.6 метра, 5в). h =

R

3L 2 / 3

 

 

 

 

 

 

 

l(R + r) + R 2 + r 2

2

2R

 

 

 

 

 

 

 

8а). h =

l

8b). h =

3l

,

∆ =αT .

 

 

 

 

 

 

2

 

 

8

 

 

 

 

 

 

II. Вычисление значений трансцендентных функций

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

6

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

Этот метод рассматривается здесь только для функций, которые можно представить в виде ряда Маклорена:

f

(k )

(0) k

 

f

(0)

 

2

 

f (x)=

 

 

 

x = f (0)+ f

(0)+

 

′′

x

 

+…

 

 

 

 

 

 

 

 

 

 

 

k =0

 

k!

 

 

2!

 

 

 

 

 

 

 

 

 

 

 

 

В качестве значения функции берется конечная сумма

f (x)Pn (x)= n f k !(0)xk ,

k =0 k

причем погрешность определяется остатком ряда

Rn (x)= f (x)Pn (x)=

f (k) (x)

xk .

(1)

 

k =n+1

k!

 

Для оценки погрешности можно использовать также формулу Тейлора, которая для ряда Маклорена дает

Rn (x)=

x n+1

 

f (n+1) (θ x) ,

(2)

(n + 1)!

 

 

 

где 0 < θ < 1. Сравнение остатка с заданной погрешностью позволяет определить количество слагаемых n в Pn .

1.1. Вычисление показательной функции. Для показательной функ-

ции справедливо разложение

x

k

 

x

 

x

2

 

x

3

 

x

n

 

e x =

 

=1 +

+

 

+

 

+…+

 

+… −∞ < x < ∞ (3)

 

 

 

 

 

 

 

 

 

k =0

k!

1!

2!

3!

 

n!

 

Этот ряд удобно суммировать, воспользовавшись следующим рекуррентным представлением. Выражение (3) можно записать следующим образом

 

 

x

 

e x = U k , где U0

= 1,

U k =

U k 1 .

 

k =0

 

 

k

Действительно, члены ряда (2) можно представить в виде:

U 0 = 1,

 

U 1

=

x

=

 

x

U0

,

U 2

=

x 2

 

=

x x

=

x

U 1

 

 

 

 

 

 

 

 

 

 

 

 

 

1!

 

1

2!

 

2 1!

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

U 3

=

x3

=

x x 2

=

x

U 2

, ...,

 

U n

=

 

x

U n1

 

 

3!

3

 

2!

3

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Для оценки погрешности рассмотрим остаток ряда

7

x = [x]+ q = E(x)+ q .

 

 

 

 

x

k

 

 

 

x

n+1

 

 

 

x

 

 

 

x

2

 

 

 

 

Rn (x) =

 

 

 

=

 

 

 

 

1

+

 

+

 

 

 

 

 

+ ...

<

 

 

k!

 

 

 

 

 

n + 2

 

(n + 2)(n + 3)

 

 

k =n+1

 

 

 

(n + 1)!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xn+1

 

 

 

 

 

 

 

 

x

 

 

 

x2

 

 

 

 

 

 

xn+1

 

 

1

 

 

 

<

 

 

1

+

 

 

 

 

 

 

+

 

 

 

 

 

 

+...

=

 

 

 

 

 

 

 

 

 

.

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

+ 2

 

 

(n + 2)

 

 

 

(n + 1)! 1 x /(n + 2)

 

 

(n + 1)!

 

 

 

 

 

 

 

 

 

 

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

что x < n+2. Если 0 < x < 1, то

Rn (x) <

x n+1

=U n

x

<U n , 0

< x < 1 .

(4)

n!n

n

 

 

 

 

 

Можно показать, что если |x| n/2, то погрешность также не превышает величины последнего слагаемого в конечной сумме Pn , т.е.

Rn

 

<

 

U n

 

,

| x | < n / 2 .

(4a)

 

 

 

В случае применимости оценок (4) и (4а), как только модуль очередного слагаемого Un не превышает допустимую погрешность ε

U n < ε ,

то вычисления прекращают и полагают:

n

e x U n .

k =0

Если x велико, то прямое использование ряда (3) связано с суммированием очень большого числа слагаемых. В этом случае процесс вычисления модифицируется путем разбиения x на целую и дробную части

Экспонента представляется в виде e x = e E(x)eq , и к множителю eq применяют рекуррентную процедуру. Этот метод пригоден и для показательной функции ax , если воспользоваться формулой

a x = ex ln a , а также для вычисления гиперболических функций. Пример 1. Вывести оценку (4a).

Решение. Выполним следующие преобразования в остатке ряда:

 

 

 

 

 

 

 

xk

 

 

 

xn

x

 

 

 

x2

 

 

 

 

Rn (x) =

 

 

 

 

=

 

 

 

 

 

 

 

+

 

 

 

 

 

+...

<

 

 

 

k!

 

 

 

 

 

 

(n + 1)(n + 2)

 

 

 

k =n+1

 

 

 

 

 

n! n + 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

xn x

 

 

x

2

 

 

x3

 

 

xn

x

1

 

 

 

x

 

<

 

 

 

+

 

 

 

 

 

+

 

 

 

 

... =

 

 

 

 

 

 

 

=U

n

 

.

 

 

 

 

2

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

n

 

 

n!

n 1 x / n

 

n x

 

 

n! n

 

 

 

 

 

 

 

 

 

 

 

 

 

8

Отсюда находим, что Rn <U n , если x/(n-x) < 1, или x < n/2.

Пример 2. Вычислить e5/2 с двумя правильными знаками после запятой.

Решение. Представляем e5/2=e2e1/2 и используем значения e=2,718 , e2=7,389. Вычисляем ex при x=1/2.

U0 =1,

U1 = x U0 =1/2=0,5,

U 2 =

 

x

U1 =

U1

= 0,125,

 

2

 

4

 

 

 

 

 

 

 

 

 

 

 

U 3

 

U 3

=

x

U 2 =

U 2

= 0,021, U 4

=

x

U 3

=

= 0,003 .

3

6

4

 

8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Здесь можно использовать оценку (4), и поскольку следующие приближения не затрагивают второй знак, то P4 = 1,649 . Отсюда

e5 / 2 =7,389 1,649 = 12,38 .

1.2. Вычисление тригонометрических функций. Для тригонометри-

ческих функций используем представления

sin x = (1)k

x2k +1

,

cos x = (1)k

x2k

 

.

 

(2k )!

k=0

(2k + 1)!

k=0

 

При больших x эти ряды сходятся медленно. Однако, пользуясь периодичностью функций, можно свести эту задачу к вычислению функций в промежутке [0, π/2]. Для функций sin x и cos x можно построить рекуррентный процесс:

n

 

 

 

 

x2

 

sin x = U k + Rn (x),

U1 = x

,

U k +1 = −

 

 

U k ,

2k(2k + 1)

k=1

 

 

 

 

 

n

 

 

 

 

x2

 

cos x = Vk + Rn (x),

V1 =1

,

Vk +1 = −

 

 

 

Vk .

 

(2k 1)2k

k =1

 

 

 

 

 

Поскольку ряд знакопеременный, то его погрешность не превышает первого отброшенного слагаемого:

Rn

 

<

 

U n+1

 

.

(5)

 

 

 

Пример 3. Вычислить sin 1 с двумя правильными знаками после запятой.

Решение.

Используем

соотношения

 

1≈π/ 20,57,

sin1=

sin(π/ 20,57) =sin(π/ 2) cos(0,57)=cos(0,57), (0,57)2=0,325.

 

Рекуррентная процедура для cos(0,57) дает:

 

 

 

 

 

V1 = 1,

V2

= −

x 2

V1 = −

(0,57)2

= −0,163

 

 

1 2

 

2

 

 

 

 

 

 

 

 

 

 

 

9

V3 = −

x 2

V2 = −

(0,57)2

0,163 = 0,027 0,163 = 0,0044

3 4

 

12

 

 

 

 

Отсюда имеем, используя (5):

 

 

 

P3 =10,163+0,0044=0,84.

2. Метод итераций вычисления значений функций

Пусть функция y = f (x)

задана неявно уравнением F(x, y)=0 .

Пусть yn приближенное значение y. Тогда можем записать тождество:

F(x, yn )= F(x, yn )F(x, y).

(6)

Поскольку предполагается, что y и yn близки, разложим F(x, y)по

малому параметру (yn y) вблизи yn

 

F(x, y)= F(x, yn (yn y))= F(x, yn )(yn y)Fy(yn ).

(7)

Из равенств (6) и (7) имеем F(x, yn )= (yn y)Fy(yn ). Отсюда по-

лучаем

 

y = yn

F(x, yn )

.

 

 

 

 

 

 

Fy(x, yn )

 

Для организации итерационного процесса полагаем

y yn+1 , то-

гда значение функции вычисляется по следующей формуле

yn+1 = yn

F(x, yn )

.

(8)

 

 

 

Fy(x, yn )

 

Процесс вычисления продолжается до совпадения

yn и yn+1 в

пределах заданной точности ε. Как только | yn+1 - yn |<ε, то вычисления прекращают и полагают y yn+1 .

2.1. Вычисление квадратного корня. Пусть y = x . Преобразуем

это уравнение к виду

F(x, y)= y2 x = 0 .

Тогда Fy′ = 2 y и рекуррентная формула (8) приобретает вид

 

 

1

 

x

 

(9)

yn+1

=

 

 

 

 

2

yn +

 

.

 

 

 

yn

 

В качестве начального приближения выбирают близкое к x число.

10

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]