Лабораторная работа 10

Численное интегрирование. Методы Ньютона-Котеса.

 

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

 

Количество аудиторных часов, отводимых на работу: 4 часа

Самостоятельная работа: 4 часа

 

 

Перед выполнением работы изучите материал второго параграфа пятой главы данного пособия и ответьте на вопросы для самоконтроля (3-10). Расчетные программы заданий 1-3 могут быть составлены на любом алгоритмическом языке (Бейсик, Паскаль, Си, Фортран).

 

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

Пояснения. Исходными данными для программы являются: подынтегральная функция f(x), пределы интегрирования (a, b) и шаг интегрирования h (или количество интервалов интегрирования n). Вычисление интегралов различными методами удобно оформить в виде подпрограмм-функций.

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

 

Подынтегральная функция

Пределы интегрирования

Точное

значение

интеграла

n

Приближенное значение

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

Метод

трапеций

Метод

парабол

 

 

 

1

 

 

2

 

 

 

 

 

 

100

 

 

 

 

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

 

Задание 2. Численно найти приближенное значение определенного интеграла с заданной точностью.

Пояснения. Используя составленные ранее подпрограммы напишите программу для вычисления определенного интеграла с заданной точностью одним из трех методов. Результаты расчетов представьте в виде таблицы:

 

Подынтегральная функция

Пределы

интегрирования

Точность

Конечное

n

Приближенное
значение

 

 

10-1

 

 

10-3

 

 

10-5

 

 

10-8

 

 

 

Вычисления начните при количестве интервалов интегрирования n равном 2. Исходные данные (интегралы, точность) приведены в приложении к работе (таблица 1).

 

Задание 3.

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

Пояснения. Исходные данные содержаться в текстовом файле в виде пар значений (x, y), количество которых может быть произвольным, но для определенности не более 100. Для вычисления интеграла используйте метод трапеций. Программа должна организовать чтение значений аргумента и функции и запись их в соответствующие массивы. После чего в цикле следует вычислить интегральную сумму (по формуле метода трапеций). Пределы интегрирования определяются начальным и конечным значениями аргумента в таблице (предполагается, что данные в таблице упорядочены в порядке возрастания значений аргумента).

Результаты расчетов представьте в виде таблицы:

 

xmin

xmax

n

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

 

 

 

 

 

б) Вычислить этот же интеграл с помощью пакета Mathcad и сравнить со значением, рассчитанным по вашей программе.

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

       организуйте ввод данных из файла, например, с помощью компоненты «File Read or Write». Вставка компоненты (Mathcad 2000 Pro): Insert -> Component… -> File Read or Write -> Read from a file -> Browse… [выбор файла] -> Готово.


       прочитанные данные запишите в векторы X и Y:


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

 

      

вычислите определенный интеграл:

 

Сравните результаты расчетов со значением интеграла, полученным в предыдущем задании (3а).

 

Задание 4. Используя встроенные в Mathcad возможности программирования написать собственную программу-функцию, реализующую метод Симпсона для численного интегрирования функций, заданных аналитически.

Пояснение. В качестве примера приведена программа, иллюстрирующая реализацию метода трапеций. Функция trapez имеет четыре параметра: f – интегрируемая функция, которая должна быть определена, a, b – пределы интегрирования, n – количество отрезков разбиения интервала интегрирования. Ниже приведен пример использования функции trapez, а также результаты интегрирования

встроенными средствами Mathcad:

 

Отчет

Отчет о выполнении работы состоит из двух частей: теоретической и практической. В первой части отчета необходимо привести краткое описание использованных методов (рабочая формула, геометрическая интерпретация). Используя сведения, приведенные в справочной системе, разберитесь и опишите алгоритмы встроенных в Mathcad методов численного интегрирования, в частности метод Ромберга. Во второй части отчета должны быть представлены результаты выполнения практических заданий с текстами программ, анализ результатов и выводы.

 


Приложение к работе 8

 

Таблица 1.

Интеграл

e

Метод

Интеграл

e

Метод

1

10-6

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

11

10-6

трапеций

2

10-5

трапеций

12

10-8

Симпсона

3

10-8

Симпсона

13

10-6

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

4

10-5

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

14

10-5

трапеций

5

10-8

трапеций

15

10-8

Симпсона

6

10-6

Симпсона

16

10-5

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

7

10-5

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

17

10-8

трапеций

8

10-8

трапеций

18

10-6

Симпсона

9

10-8

Симпсона

19

10-5

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

10

10-5

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

20

10-8

трапеций