Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
инфроматика2курс.pdf
Скачиваний:
43
Добавлен:
29.03.2015
Размер:
797.15 Кб
Скачать

Методические указания по выполнению лабораторной работы

Используя значения функций этих двух таблиц, по формулам методов (5), (6), (7), (10) и (11) вычисляем значения интегралов после чего можно оценить точность полученных значений по правилу Рунге.

Пример реализации алгоритмов интегрирования в среде программы MS Excel

На отдельном листе книги MS Excel, начиная с ячейки А1, расположим объект Microsoft Equation 3.0 - формулу

определённого интеграла, соответствующую варианту индивидуального задания. Положение объекта может быть изменено при окончательном редактировании результирующего документа.

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

Так в ячейки С1 и Е1 введём тексты "а=" и "b=", определяющие границы интервала интегрирования. В ячейки D1 и F1 введём соответствующие этим границам числовые значения 1 и 2.

Вячейки С2 и Е2 введём тексты "n1=" и "n2=n1*2=", используемые для определения числа подинтервалов, на которые делится интервал интегрирования [a, b].

Вячейку D2 введём числовое значение параметра n1. Это может быть любое числовое значение. Единственное ограничение на значение этого параметра определяется методом Симпсона. Это требование чётности этого значения.

Вячейку F2 введём формулу

=2*D2

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

Втретьей строке в ячейки С3 и Е3 введем тексты "h1=" и "h2=",

ав ячейки D3 и F3 введём формулы, обеспечивающие вычисление шагов интегрирования для значений n1 и n2.

Рис. 6. Формулы, обеспечивающие формирование заголовка таблицы

7

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

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

Рис. 7. Предварительный вид заголовка таблицы

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

1.В ячейку А5 введём 0, поместим указатель мыши (УМ) в нижний угол ячейки А5 и, зафиксировав клавишу Ctrl (см. рис. 8), протягиваем УМ до ячейки А10, обеспечивая нумерацию строк от 0 до n1, что соответствует нумерации узлов разбиения интервала интегрирования.

Рис. 8. Вид УМ перед его "протягиванием" для нумерации строк таблицы

2.Аналогичные действия выполняем для формирования столбца F – нумерация строк для n2 строк второй части таблицы.

3.В ячейки В5 и G5 записываем формулу =$D$1, обеспечивающую ссылку на значение параметра a, введённого в эту ячейку, и определяющего нижнюю границу интервала интегрирования.

4.В ячейки В6 и G6 записываем формулы

=B5+$D$3 и

8

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

=G5+$F$3 соответственно.

Эти формулы обеспечивают формирование значений аргумента х, равные x0+h1 и x0+h2.

5.Протягиваем формулы, записанные в ячейки В6 и G6 до В11 и G17 соответственно.

6.В ячейки С6 и Н6 записываем формулы обеспечивающие вычисление значений F(x). Эти формулы могут быть реализованы либо как формулы MS Excel, либо как обращения к функциям пользователя на VBA.

Рассмотрим оба способа.

7.В ячейку С5 введём формулу

=B5*B5

и протянем её от С5 до С11.

8.Создадим функцию пользователя, обеспечивающую вычисление F(x) = x2. Для этого

a)в меню MS Excel выбираем команду Разработчик,

b)на ленте выбираем команду Visual Basic и переходим

вокно компилятора Visual Basic (далее VB).

c)В меню VB выбираем команду Insert и далее команды:

-Module, (если модуль не был создан ранее);

-Procedure… и далее, используя открывающееся диалоговое окно Add Procedure (рис. 9)

Рис. 9. Окно Add Procedure

создаём функцию F():

9

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

Public Function F(x As Double) As Double

F = x ^ 2

End Function

9.Далее на листе книги Excel в строке формул нажимаем

кнопку fx (Вставить функцию). В открывающемся при этом окне "Мастер функций – шаг 1 из 2" в списке "Категория:" выбираем категорию "Определённые пользователем" и нажимаем кнопку ОК.

Рис. 10. Окно Мастер функций – шаг 1 из 2

10.В окне категории "Определённые пользователем" (рис. 11) в списке "Выберите функцию:" выбираем строку

F.

11.Открывается окно второго шага мастера функций "Аргументы функции". В поле ввода аргумента Х функции щелчком левой клавиши вводим ссылку на первую ячейку столбца аргумента G5 (см. рис. 12).

12.Протягиваем введенное в Н5 обращение к функции F(x) по столбцу Н от Н5 до Н17. Результаты формирования таблицы показаны на рис. 13.

10

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

Рис. 11. Окно Мастер функций – шаг 1 из 2

Рис. 12. Формирование обращения к функции F(x)

Рис. 13. Формирование таблиц функции F(x) из n1 и n2 строк

11

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

13.На следующем шаге реализации алгоритма интегрирования выполним формирование столбцов значений аргументов хср для n1 и n2 строк. В ячейку D5 введём формулу

=(B5+B6)/2,

(14)

а в ячейку I5 введём формулу

(15)

=(G5+G6)/2.

14.На рис. 14 в режиме отображения формул показана таблица, формируемая в результате выполнения этих действий.

Рис. 14. Формулы, записываемые в двух первых строках формируемой таблицы значений аргументов и функций F(x) для n1 и n2 строк

Протянем формулы (14) и (15) по ячейкам столбцов D и I, формируя в них значения хср. Затем введём в ячейки Е5 и J5 формулы, обеспечивающие вычисление значений функции F(хср).Результат выполнения этих действий показан на рис. 15.

Рис. 15. Таблицы значений аргументов и функций F(x) для n1 и n2 строк

12

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

Следующие шаги обеспечивают вычисление значений интегралов, соответствующие выбранным методам численного интегрирования. В ячейки B13, B14, B15 и B16 вводим формулы вычисления интегралов для n1 точек.

15.В ячейку B13 вводим формулу, реализующую вычисление значение интеграла методом левых прямоугольников:

=СУММ(C5:C10)*$D$3

16.В ячейку B14 вводим формулу, реализующую вычисление значение интеграла методом правых прямоугольников:

=СУММ(C6:C11)*$D$3

17.В ячейку B15 вводим формулу, реализующую вычисление значение интеграла методом средних прямоугольников:

=СУММ(E5:E10)*$D$3

18.В ячейку B16 вводим формулу, реализующую вычисление значение интеграла методом Симпсона:

=(C5+C11+4*(C6+C8+C10)+2*(C7+C9))*D3/3

19.В ячейки С13 – С16 вводим формулы вычисления интегралов для n2 точек.

20.В ячейки D13 – D16 и E13 - E16 введём обращения к VBA функциям, реализующим соответствующие методы численного интегрирования.

21.Для интегралов, вычисленных по методу Симпсона вычислим значения поправки Рунге и значение интеграла, вычисленное с учётом этой поправки. В ячейку С17 введём формулу поправки Рунге:

=(E16-D16)/15

а в ячейку Е17 введём формулу

=C16+C17

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

Оценка точности вычисленных значений интегралов выполняется сравнением значений интегралов, полученных для двух вариантов разбиения интервала [a, b]. Если значения интегралов, вычисленные для n1 и n2, отличаются более чем на определённое в

13

Любимов Е.Б.

 

Методические указания по выполнению лабораторной работы

задании значение параметра ε, то вычисления повторяются для разбиения интервала интегрирования на 2*n2 подинтервала. После чего значения, полученные для n2 и 2*n2 разбиений, сравниваются. По результату этого сравнения определяется необходимость дальнейших вычислений для 4*n2, 8*n2 и т.д. разбиений.

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

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

Рис. 16. Образец документа, формируемого при выполнении лабораторной работы "Численные методы интегрирования"

14

Любимов Е.Б.