ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 19.06.2025

Просмотров: 1092

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
In - I2n < ε,

68

для формулы Симпсона

( b - a )5

R(h) ≤ n ×

h5

max

f ( 4 )( x )

=

max

f ( 4 )( x )

;

(9)

180( 2n )4

где h =

b − a

.

90 a≤x≤b

a≤ x≤b

2n

5.5 Метод двойного пересчета

Следует отметить, что практическое значение оценок (7)-(9) невелико ввиду сложности их использования. Поэтому при численном интегрировании прибегают к другим приемам. В частности, вычисляют интегралы по квадратурным формулам (2), (4), (5) при делении отрезка на n частей и 2n частей. Если получающиеся значения обозначить соответственно через In и I2n, то совпадение первых знаков In и I2n позволяет судить о точности полученных значений. Чтобы определить, как сильно уклоняется значение I2n от точного значения интеграла I, используется правило Руни:

I - I2n » 2k 1- 1 In - I2n ,

где k=2 для формул прямоугольников и трапеций и k=4 для формулы Симпсона. При заданной e точности вычисления с уменьшающимся шагом следует

прекратить, если

1

2k - 1

при этом полагают, что I » I2n с точностью e.

5.6 Алгоритм вычисления интегралов по формулам прямоугольников, трапеций и Симпсона

1. Определить исходные данные: a – начало интервала интегрирования; b – конец интервала интегрирования;

n– число частей разбиения.

2.Вычислить шаг интегрирования h = (b – a) / n.

3.Вычислить начальные значения интегральных сумм: Ip:=f(a+h/2) – для метода прямоугольников, It:=(f(a)+f(b))/2 – для метода трапеций.

4.Организовать цикл накопления подынтегральной суммы, изменяя значения параметра цикла i от 1 до n - 1 с шагом 1.

5.Вычислить: Ip:=Ip+f(a+h*(i+1/2)) – интегральную сумму метода прямоугольников, It:=It+f(a+i*h) – интегральную сумму метода трапеций.

6.Выполнить вывод результатов: h*Ip – значение интеграла, вычисленное по методу прямоугольников, h*It – значение интеграла, вычисленное по методу трапеций, h/6*(4*Ip+2*It) – значение интеграла, вычисленное по методу Симпсона.


69

7. Конец вычислений.

π / 2

Пример. Вычислить интеграл òcos x dx

0

по формулам прямоугольников, трапеций и Симпсона, если отрезок интегрирования разбит на n равных частей. Сравнить приближенные значения интеграла с точными.

Вычисления производятся по формулам (2), (4), (6).

5.7 Программа на языке Turbo Pascal для вычисления интегралов по формулам прямоугольников, трапеций и Симпсона

program pIPTS; uses crt;

function f(x:real):real; {вычисление значений подынтегральной функции} begin

f:=cos(x);

end;

var a,b,h,Ip,It,Is:real; i,n:integer;

begin a:=0;b:=pi/2;n:=100;

h:=(b-a)/n; {шаг интегрирования} Ip:=f(a+h/2); {для метода прямоугольников} It:=(f(a)+f(b))/2;{для метода трапеций}

for i:=1 to n-1 do begin {цикл накопления подынтегральной суммы} Ip:=Ip+f(a+h*(i+1/2));{интегральная сумма метода прямоугольников} It:=It+f(a+i*h); {интегральная сумма метода трапеций}

end;

clrscr;

writeln('Значение интеграла метода прямоугольников= ',h*Ip:17:9); writeln('Значение интеграла метода трапеций= ',h*It:17:9); writeln('Значение интеграла метода Симпсона= ',h/6*(4*Ip+2*It):17:9); writeln('Контроль = ',sin(pi/2):12:9);

readkey; end.

70

5.8 Вычисление интегралов по формулам прямоугольников, трапеций и парабол средствами MS Excel

Формулы для вычисления интегралов по формулам прямоугольников, трапеций и парабол:

A

B

C

D

E

F

1

a

b

n

h

Ip0

It0

2

0=ПИ()/2

100

=(B2-A2)/C2

=COS(A2+D2/2)

=(COS(A2)+COS(B2))/2

3

4

5

I

Ip

It

6

=D6+1

=E6+COS($A$2+$D$2*(D6+1/2))=F6+COS($A$2+D6*$D$2)

7

интегральная сумма

=E2+E6

=F2+F6

8

9

значения интегралов

10

прямоугольник

трапе-

парабола

контроль

ция

11

=D2*E7

=D2*F7

=D2/6*(4*E7+2*F7)

=SIN(ПИ()/2)

Для вычисления формул необходимо установить предельное число итераций 99 (с помощью команды меню Сервис/ Параметры/ Вычисления).

Результат вычисления интегралов:

A

B

C

D

E

F

1

a

b

n

h

Ip0

It0

2

0

1,570796327

100

0,015707963

0,999969158

0,5

3

4

5

I

Ip

It

6

99,00

62,66266258

63,16066823

7

интегральная сумма

63,66263174

63,66066823

8

9

значения интегралов

10

прямоугольник

трапеция

парабола

контроль

11

1,000010281

0,999979438

1

1


71

5.9 Вычисление интегралов средствами MachCAD

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

В системе MachCAD выполните следующие действия:

ó

ô d

1. Щелкните по кнопке õ

в панели инструментов Calculus;

2.Введите в помеченных позициях выражение для функции, имя переменной и пределы интегрирования;

3.Введите знак равенства;

4.Получите результат

π

ó 2

ô

ô cos(x) dx = 1

õ0

Задания к данной теме приведены в приложении Д.

72

6 ЧИСЛЕННОЕ РЕШЕНИЕ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ

6.1 Задача Коши

Требуется найти функцию Y=Y(x), удовлетворяющую уравнению

Y′=f(x,Y),

(1)

и принимающую при x=x0 заданное значение Y0:

Y(x0)=Y0,.

(2)

При этом будем для определенности считать, что решение нужно получить для значений x>x0.

Теорема Коши. Если правая часть f(x,y) уравнения y′=f(x,y) и ее частная производная f′y(x,y) определены и непрерывны в некоторой области G изменения переменных x, y, то для всякой внутренней точки (x0, y0) этой области данное уравнение имеет единственное решение, принимающее заданное значение y=y0 при x=x0.

Согласно теореме Коши решение Y(x) задачи (1), (2) существует и единственно.

Методы решения задачи (1), (2) распространяются на случай систем уравнений вида (1), а к ним в свою очередь можно привести также уравнения высших порядков. Например, уравнение

Z′′=ϕ(Z′,Z,x)

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

Y′1=ϕ(Y1,Y2,x).

(3)

Y′2=Y1,

где Y1=Z′, Y2=Z.

6.2 Метод Рунге-Кутта для решения дифференциальных уравнений

Метод Рунге-Кутта для решения задачи Коши используют для вычисления значения yi+1 (i=0, 1, …), значения yi , а также значения функции f(x,y) при некоторых специальным образом выбираемых значениях x [xi, xi+1] и y.

Широко распространен метод Рунге-Кутта четвертого порядка:

yI+1 = yi +

h

(f1 + 2f2 + 2f3 + f4),

(4)

6

где

f1

= f(xi, yi),

f2

= f(xi + h/2, yi + hf1/2),

(5)


73

f3 = f(xi + h/2, yi + hf2/2), f4 = f(xi + h, yi + hf3).

Таким образом, данный метод Рунге-Кутта требует на каждом шагу четырехкратного вычисления правой части f(x,Y) уравнения (1). Суммарная погрешность этого метода есть величина O(h4).

Метод Рунге-Кутта требует большого объема вычислений, но обеспечивает повышенную точность, что дает возможность проводить счет с большим шагом.

6.3 Алгоритм решения задачи Коши методом Рунге-Кутта

1. Задать начальные условия: x0= α, y |x 0 = y0, шаг интегрирования h , конец интервала интегрирования β.

2.Организовать цикл интегрирования.

2.1Вычислить значения f1, f2, f3, f4.

2.2Вычислить y = y0 + h(f1 + 2f2 + 2f3 + f4)/6.

2.3Увеличить значение x на h, т. е. x = x + h.

2.4Вывод текущих значений x, y.

2.5Установить значение y0 = y.

3.Конец цикла интегрирования: условие завершения x > β.

4.Конец вычислений.

Пример. Составить алгоритм и программу решения задачи Коши для дифференциального уравнения первого порядка y′ - y * ctgx = sinx, y |x=π/2 = 0 на равномерной сетке отрезка [π/2,π/2+1] с шагом h, вводимым с клавиатуры, классическим методом Рунге-Кутта. Сравнить численное решение с точным

æ

p ö

ϕ(x)=ç x -

2

÷ sinx.

è

ø

Вычисления выполнить по формулам (5)-(6).

6.4 Программа на языке Turbo Pascal для решения задачи Коши методом Рунге-Кутта

program Runge_Kutta; uses crt;

function f(x,y:real):real; {функция вычисления первой производной} begin

f:= sin(x)+y*cos(x)/sin(x); end;

function ft(x,y:real):real; {функция вычисления точного значения} begin