Файл: Министерство образования республики беларусь учреждение образования Гомельский государственный университет имени Франциска Скорины.docx

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

Категория: Курсовая работа

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

Добавлен: 12.04.2024

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

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

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

МИНИСТЕРСТВО ОБРАЗОВАНИЯ РЕСПУБЛИКИ БЕЛАРУСЬ

Учреждение образования

«Гомельский государственный университет

имени Франциска Скорины»

Заочный факультет

Кафедра вычислительной математики и программирования

Курсовая работа

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

по дисциплине «Основы алгоритмизации и программирования»


Студент Нурбердиева Я. Н

Руководитель работы


Гомель 2019

Содержание

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

Если интеграл от данной функции не может быть вычислен по формуле Ньютона-Лейбница, или если функция f(x) задана графически или таблицей, то для вычисления определенного интеграла применяют приближенные формулы. Для приближенного вычисления интеграла существует много численных методов, таких как:

метод прямоугольников;

трапеций;

Симпсона и др.

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

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

Цель заданной работы – освоить методы левых и правых прямоугольников численного интегрирования для вычисления интегралов; закрепление и систематизация полученных знаний, их применение при решении конкретных практических задач; закрепление навыков работы со справочной литературой и нормативными документами.

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

1. Теоретическая часть
Необходимость вычисления значений определенных интегралов при моделировании возникает достаточно часто.

Формула Ньютона-Лейбница
(1)
имеет ограниченное применение:

во-первых, не позволяет вычислить интегралы от таблично заданной подынтегральной функции f(x);

во-вторых, не всякая подынтегральная функция имеет первообразную F(x).

Численные методы интегрирования универсальны: позволяют вычислить значение определенного интеграла непосредственно по значениям подынтегральной функции f(x), независимо от способа ее задания или вида аналитического выражения.

Геометрический смысл определенного интеграла – площадь криволинейной трапеции, ограниченной осью OX, кривой f(x), и прямыми x=a и x=b (Рис.1.).

Численные методы интегрирования основаны на различных способах оценки этой площади, поэтому полученные формулы численного интегрирования называются квадратурными (формулами вычисления площади).

Рассмотрим получение и применение простейших формул.



Рисунок 1. Геометрический смысл определённого интеграла
Отрезок [a, b] делят на n необязательно равных частей – элементарных отрезков. Принято такое деление отрезка называть сеткой, а точки x0, x1,…, xn – узлами сетки.

Если сетка равномерная, то – шаг сетки, при интегрировании – шаг интегрирования, а координата i-го узла вычисляется по формуле:
, (2)
Полная площадь криволинейной трапеции состоит из n элементарных криволинейных трапеций – элементарных площадей:
(3)
1.1 Формулы прямоугольников
Площадь i-той элементарной трапеции можно оценить (приближенно вычислить) как площадь прямоугольника со сторонами и fi. Тогда и значение интеграла:

(4)






Рисунок 2. Оценка элементарной площади Si левым прямоугольником.
Полученная формула называется формулой левых прямоугольников, т.к. для оценки площади использовалось левое основание элементарной криволинейной трапеции.

Аналогично можно получить формулу правых прямоугольников:





Рисунок 3. Оценка элементарной площади Si правым прямоугольником.

Для данного случая и тогда значение интеграла:
(5)
Эти формулы не находят широкого применения, т.к. имеют большую погрешность, пропорциональную величине шага

Как появляется эта погрешность, видно на рисунках.
2. Постановка и решение задачи
2.1 Формулировка задачи
Применение методов правых и левых прямоугольников для решения задач численного интегрирования рассмотрим на примере вычисления следующего интеграла:


2.2 Решение задачи методом левых прямоугольников



с точностью ε = 0.01

Вычислим интеграл I1 по формуле метода левых прямоугольников (4):

h1=1


Уменьшим шаг вдвое и вычислим интеграл I2 по формуле (4):

h2 = 1/2


Вычислим критерий для интегралов I1 и I2, так как I2 ≥ 1, то критерий вычисляется по формуле:

|I2 I1| / I2 = 0.18112 > ε

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

h3 = 1/4




Вычислим критерий для интегралов I2 и I3, так как I3 ≥ 1, то критерий вычисляется по формуле:

|I3 I2| / I3 = 0.08964 > ε
Полученный критерий не выполняется, вычисляем интеграл I4, уменьшая шаг вдвое:

h4 = 1/8



Вычислим критерий для интегралов I3 и I4, так как I4 ≥ 1, то критерий вычисляется по формуле:

|I4 I3| / I4 = 0.0447 > ε
Полученный критерий не выполняется, вычисляем интеграл I5, уменьшая шаг вдвое:

h5 = 1/16



Вычислим критерий для интегралов I4 и I5, так как I5 ≥ 1, то критерий вычисляется по формуле:

|I5 I4| / I5 = 0.02233 > ε
Продолжая уменьшать шаг получим выполнение критерия при h = 1/64

Ответ



2.3 Решение задачи методом правых прямоугольников



с точностью ε = 0.01

Вычислим интеграл I1 по формуле метода левых прямоугольников (4):

h1=1


Уменьшим шаг вдвое и вычислим интеграл I2 по формуле (4):

h2 = 1/2


Вычислим критерий для интегралов I1 и I2, так как I2 ≥ 1, то критерий вычисляется по формуле:

|I2 I1| / I2 = 0.17353 > ε
Полученный критерий не выполняется, вычисляем интеграл I3, уменьшая шаг вдвое:

h3 = 1/4



Вычислим критерий для интегралов I2 и I3, так как I3 ≥ 1, то критерий вычисляется по формуле:

|I3 I2| / I3 = 0.08842 > ε
Полученный критерий не выполняется, вычисляем интеграл I4, уменьшая шаг вдвое:

h4 = 1/8



Вычислим критерий для интегралов I3 и I4, так как I4 ≥ 1, то критерий вычисляется по формуле:

|I4 I3| / I4 = 0.04445 > ε
Полученный критерий не выполняется, вычисляем интеграл
I5, уменьшая шаг вдвое:

h5 = 1/16



Вычислим критерий для интегралов I4 и I5, так как I5 ≥ 1, то критерий вычисляется по формуле:

|I5 I4| / I5 = 0.02227 > ε
Продолжая уменьшать шаг получим выполнение критерия при h = 1/64

Ответ




3. Программная реализация

3.1 Блок-схемы

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


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



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

A - нижний предел интегрирования

B - верхний предел интегрирования

S - значение интеграла

S1 - значение интеграла

H - шаг интегрирования

X - точки, в которых ищутся значения интегралов

E - точность вычисления интеграла

I - количество отрезков

N - количество интервалов

Program Integral;

Uses Crt;

Var a,b,s,x,h,s1,d,e:real; I, n: integer;

Function f(x1:real):real;

begin f:=x/sqrt(16-x*x);

end;

Begin

ClrScr;

Writeln('вычисление определенного интеграла');

Writeln('методом левых прямоугольников');

Writeln('введите нижний предел интегрирования');

Readln(a);

Writeln('введите верхний предел интегрирования');

Readln(b);

h:=1; e:=0.01; s1:=0;

s:=0; x:=a;

n:=trunc((b-a)/h);

for i:=1 to n do begin

s:=s+h*f(x); x:=x+h; end;

{writeln ('s ',s:7:4);}

repeat h:=h/2;

n:=trunc((b-a)/h); x:=a;

for i:=1 to n do begin

s1:=s1+h*f(x); x:=x+h;

{writeln('s1 ',s1:7:8,' ', x-h:7:6)} end;

{writeln('s1 ',s1:7:8); }

if s1>=1 then d:=ABS((s1-s)/s1) else d:=ABS(s1-s);

s:=s1; s1:=0;

until d

Writeln('интеграл равен ', s:10:7);

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

A - нижний предел интегрирования

B - верхний предел интегрирования

S - значение интеграла

S1 - значение интеграла

H - шаг интегрирования

X - точки, в которых ищутся значения интегралов

E - точность вычисления интеграла

I - количество отрезков

N - количество интервалов

Program Integral;

Uses Crt;

Var a,b,s,x,h,s1,d,e:real; I, n: integer;

Function f(x1:real):real;

begin f:= x/sqrt(16-x*x);

end;

Begin

ClrScr;

Writeln('вычисление определенного интеграла');

Writeln('методом правых прямоугольников');

Writeln('введите нижний предел интегрирования');

Readln(a);

Writeln('введите верхний предел интегрирования');

Readln(b);

h:=1; e:=0.01; s1:=0;

s:=0; x:=a;

n:=trunc((b-a)/h);

for i:=1 to n do begin

x:=x+h; s:=s+h*f(x);

{ writeln ('s ',s:7:4); }

end;

repeat h:=h/2;

n:=trunc((b-a)/h); x:=a;

for i:=1 to n do begin

x:=x+h; s1:=s1+h*f(x);

{writeln('s1 ',s1:7:8,' ', x-h:7:6)} end;

{ writeln('s1 ',s1:7:8); }

if s1>=1 then d:=ABS((s1-s)/s1) else d:=ABS(s1-s);

s:=s1; s1:=0;

until d

Writeln('интеграл равен ', s:10:7);

Readln; End.

3.3 Тестовый пример
Метод левых прямоугольников

В качестве тестового примера возьмем , аналитически его можно решить и решение имеет вид .

Проверим правильность работы программы для тестового примера.



Рисунок 4. Результат работы тестовой программы методом левых прямоугольников
Метод правых прямоугольников

В качестве тестового примера возьмем , аналитически его можно решить и решение имеет вид .

Проверим правильность работы программы для тестового примера.


Рисунок 5. Результат работы тестовой программы методом правых прямоугольников
3.4 Решение задачи с помощью ЭВМ

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

При вычислении заданного интеграла на языке программирования Turbo Pascal мы получаем следующие результаты (рис. 6)





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

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

При вычислении заданного интеграла на языке программирования Turbo Pascal мы получаем следующие результаты (рис. 7)




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

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

Чем ниже задается численное значение точности вычислений, тем точнее результат, получаемый машиной. Для большей точности необходимо большее число итераций.

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

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

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

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

Список литературы
Мухамадеев И.Г. Алгоритмы вычислительной математики. Курс лекций

Калиновский Ю., Кайбышева Д.А., Мухамадеев И.Г. Численное интегрирование /Мет. указания/. - УНИ, Уфа, 1988

Колдаев В.Д. Численные методы и программирование: учебное пособие / Под ред. проф. Л.Г. Гагариной. – М.: ИД «ФОРУМ»: ИНФРА-М, 2008. – 336с.