Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчеты по лабораторным 1-5.doc
Скачиваний:
3
Добавлен:
15.09.2019
Размер:
1.98 Mб
Скачать

Лабораторная работа №3

Тема: «ИНТЕГРИРОВАНИЕ»

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

Индивидуальный вариант №1

Радиус 1

Количество точек 7

Расчетные формулы

Уравнение границы четверти круга (для 10 точек):

Формулы прямоугольников:

Формула трапеций:

Формула Симпсона:

Пример программы

Const n = 14

Dim X(n), Y(n) As Variant

Private Sub CommandButton1_Click()

For i = 1 To n

X(i) = Worksheets(3).Cells(i + 2, 1).Value

Y(i) = Worksheets(3).Cells(i + 2, 2).Value

Worksheets(3).Cells(i + 2, 3).Value = X(i)

Worksheets(3).Cells(i + 2, 4).Value = Y(i)

Next i

s = 0

For i = 1 To n

s = s + Abs((X(i) - X(i - 1)) * Y(i))

Next i

For i = 1 To n

Worksheets(3).Cells(18, 4).Value = s

Next i

For i = 1 To n

yt = Worksheets(3).Cells(18, 2).Value

Pogr = Abs((yt - s) / yt)

Worksheets(3).Cells(19, 4).Value = Pogr

Next i

End Sub

Private Sub CommandButton2_Click()

For i = 1 To n

Worksheets(3).Cells(i + 2, 3).Value = ""

Worksheets(3).Cells(i + 2, 4).Value = ""

Worksheets(3).Cells(i + 4, 4).Value = ""

Worksheets(3).Cells(i + 5, 4).Value = ""

Next i

End Sub

Private Sub CommandButton3_Click()

For i = 1 To n

X(i) = Worksheets(3).Cells(i + 2, 1).Value

Y(i) = Worksheets(3).Cells(i + 2, 2).Value

Worksheets(3).Cells(i + 2, 5).Value = X(i)

Worksheets(3).Cells(i + 2, 6).Value = Y(i)

Next i

s = 0

For i = 1 To n

s = s + (Abs((X(i) - X(i - 1))) / 2) * (Y(i) + Y(i - 1))

Next i

For i = 1 To n

Worksheets(3).Cells(18, 6).Value = s

Next i

For i = 1 To n

yt = Worksheets(3).Cells(18, 2).Value

Pogr = Abs((yt - s) / yt)

Worksheets(3).Cells(19, 6).Value = Pogr

Next i

End Sub

Private Sub CommandButton4_Click()

For i = 1 To n

Worksheets(3).Cells(i + 2, 5).Value = ""

Worksheets(3).Cells(i + 2, 6).Value = ""

Worksheets(3).Cells(i + 4, 6).Value = ""

Worksheets(3).Cells(i + 5, 6).Value = ""

Next i

End Sub

Private Sub CommandButton5_Click()

For i = 1 To n

X(i) = Worksheets(3).Cells(i + 2, 1).Value

Y(i) = Worksheets(3).Cells(i + 2, 2).Value

Worksheets(3).Cells(i + 2, 7).Value = X(i)

Worksheets(3).Cells(i + 2, 8).Value = Y(i)

Next i

'площадь по ф-ле трапеций с шагом h

sh = 0

h = X(2) - X(1)

For i = 2 To n - 1

sh = sh + Abs(h * Y(i))

Next i

sh = sh + Y(1) * h / 2 + Y(n) * h / 2

'площадь по ф-ле трапеций с шагом 2h

s2h = 0

h = X(3) - X(1)

For i = 3 To n - 2 Step 2

s2h = s2h + Abs(h * Y(i))

Next i

s2h = s2h + Y(1) * h / 2 + Y(n) * h / 2

s = (4 * sh - s2h) / 3 'а это формула Симпсона

For i = 1 To n

Worksheets(3).Cells(18, 8).Value = s

Next i

For i = 1 To n

yt = Worksheets(3).Cells(18, 2).Value

Pogr = Abs((yt - s) / yt)

Worksheets(3).Cells(19, 8).Value = Pogr

Next i

End Sub

Private Sub CommandButton6_Click()

For i = 1 To n

Worksheets(3).Cells(i + 2, 7).Value = ""

Worksheets(3).Cells(i + 2, 8).Value = ""

Worksheets(3).Cells(i + 4, 8).Value = ""

Worksheets(3).Cells(i + 5, 8).Value = ""

Next i

End Sub

Часть А Взяв у преподавателя номер индивидуального задания, выполнила расчеты площадей по 3м формулам: прямоугольников, трапеций, Симпсона. Задала формулу погрешности.

Часть В

Количество точек в исходном ряде данных увеличила в 2 раза, повторила расчет и сделала вывод

Вывод:

  1. Методы численного интегрирования можно использовать для нахождения площадей, каких – либо фигур, в данном случае для поиска площади сектора окружности, представляющего собой её четверть.

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

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

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