Вычислительные методы
..pdfи
ЛАБОРАТОРНАЯ РАБОТА № 2
ИНТЕРПОЛИРОВАНИЕ С ПОМОЩЬЮ КУБИЧЕСКИХ СПЛАЙН-ФУНКЦИЙ
Цели работы: изучение метода сплайн-интерполяции функций, сравнение методов и оценка погрешностей.
Теоретические основы метода
Кубические сплайн-функции - это математическое изобретение, мо делирующее очень старое механическое устройство. Чертежники издавна пользовались механическими сплайнами, представляющими собой гиб кие рейки из какого-нибудь упругого материала, отсюда и название функ ции (spline (англ.) - рейка, планка). Механический сплайн под действием сил, приложенных в ряде точек, называемых традиционно узлами сил, деформируется и принимает форму, минимизирующую его потенциаль ную энергию. В теории балок установлено, что эта энергия пропорцио нальна интегралу по длине дуги от квадрата кривизны сплайна.
Если сплайн представить функцией <р(х), то при малых наклонах вторая производная Ф"(х) приблизительно равна кривизне, а дифференци ал длины дуги мо#но приближенно заменить на dbc, таким образом, энер гия подобного линеаризованного сплайна пропорциональна интегралу
}(cp"(x))2(Ьс. Если заданы узлы х0 уо, ..., хп у то линеаризованный
сплайн ф(х) есть функция, для которой ср(х,) = ух, i = 0, 1, ..., п и при этом
интеграл } (ф"(*)Гг d* имеет минимальное значение. *о
Поскольку механический сплайн не разрушается, то следует считать, что ф(х) и ф'(*) непрерывны на [JC0, хп]. Далее, элементарная теория балок показывает, что ф(*) является кубическим полиномом между каждой со седней парой узлов и что соседние полиномы соединяются непрерывно,
так же, как и их первое, и вторые производные. |
|
||
Кубическая |
сплайн-функция, |
удовлетворяющая |
условиям |
ф"(;с0) = cpff(xn) = 0, называется естественным кубическим сплайном. |
|||
С математической точки зрения |
доказано, что она является един |
ственной функцией, Обладающей свойством минимальной кривизны, сре ди всех функций, Интерполирующих данные точки и имеющих квадратно интегрируемую вт°РУю производную. В этом смысле естественный куби ческий сплайн ecfb Самая гладкая из функций, интерполирующих задан ные точки.
12
Построение кубического сплайна
На участке [JC0, х„] требуется найти функцию ср(х), удовлетворяющую следующим условиям:
1.Функция ср(х) на участке [*0, хп] должна быть непрерывна вместе со своими первой и второй производными.
2.На каждом участке [хм, х(] функция (pi(x) должна описьшаться ку бическим полиномом:
ф. (х) = \ а°‘ +а" (х "
\
) + °2i(х - х‘~')2 + a2lSx ~ |
)3>* 6 |
’xt\> |
|
о , х ё |
, X j ], i = 1,п. |
|
|
i = 1,п
п
Общий сплайн ср(х) = £ Ф/(*) при х е [х0,хп].
1
3.Значения сплайна в узлах интерполяции равны значениям задан
ной функции, т.е. ф(Х/) = , / = 0,п .
На данном подынтервале [дгм, хЦ вторая производная от функции фДх) является линейной функцией и описывается следующим выражени ем:
|
ч |
X: - X |
Х-Х:_л |
|
|
|
ч>/М = щ-\ - тhi— +mi ^, |
; |
(2 .1) |
||
Здесь |
/и, - значения |
вторых |
производных в |
узлах интерполя |
ции, называемые моментами сплайна.
Проинтегрировав дважды выражение (2.1) и учитывая условия ин
терполяции ф,-(*,-) = у,-;ф/(хм ) = у/.j, |
получим уравнение |
частичного |
||||
сплайна: |
|
|
|
|
|
|
Фi(x) = m,_ |
(х, ~х)Ъ . _ (x -x,_ i)3 |
|
||||
б*/ |
|
- + т 1 |
6hj |
|
||
|
|
|
|
|
||
h 2 ЛX i - X |
|
|
|
Ар х - X,1-1 |
( 2. 2) |
|
|
|
|
|
|
А, |
|
Первая производная от уравнения (2.2) |
|
|
||||
ф'<(*) = -«/-1 |
( * , - * ) |
. |
_ |
|
|
|
------------Ь |
Ш: ---- —----- |
|
||||
|
2А, |
|
|
‘ |
2А, |
|
. 1 , |
, 1 |
|
V |
л;2 \ |
(2.3) |
|
|
|
ТП:----- /72.- |
1--- |
|||
|
\ |
|
' 6 |
|
' 1 6 |
|
13
Аналогичным будет выражение первой производной для (i + 1) участка, только индекс i должен быть заменен на (z + 1).
Ф/+1W = - щ |
(дс/+, - ДС)2 |
(х-х,.) |
|
|
2А, |
7+1 ' |
|
||
|
1+1 |
|
2 К7+1 |
|
+-г-(У м ~ У 1 )—г- |
т м ~ |
щ Т |
|
|
Ь м |
Л7+1 |
|
||
По условию непрерывности первых производных |
|
|||
Следовательно, |
ф; ( * /) = ф;+1(*,)- |
|
|
|
|
|
|
|
|
mi-\hi + 2 т /(Л/ +hi+l) + mi+lhM = - ^ - ( y i+\ - у , ) - | - ( л |
- у ^ ) . (2.4) |
|||
|
|
Л1+1 |
пi |
|
Выражение (2.4) представляет собой систему из (л - |
1) уравнений с |
(п + 1) неизвестными (т0, ти ..., т„).
Для решения системы задаются значения начального то и конечного тпмоментов, исходя из физической сущности задачи. Очень часто исполь зуется условие т0= тп=0.
Система (2.4) в матричном виде записывается следующим образом:
Ат = Ву
где А - матрица, составленная из коэффициентов левой части; т - матри
ца-столбец моментов; В - матрица-столбец свободных членов. |
|
||||
Щ + Ь 2) |
h2 |
0 |
0 |
0 |
0 |
h2 |
l{h2 + Л3) |
А3 |
0 |
|
0 |
А = |
|
|
|
|
J |
0 |
0 |
|
К -\ |
2{hn. l+ hn) |
0 |
|
|
|
' Ьу\ |
АУо^ |
|
|
т , |
|
<.h2 |
h\ , |
|
т = |
т 2 |
В = |
1 4V2 |
AVI |
|
h |
h2 |
|
|||
|
|
|
АУл-1 |
АУп-2 |
|
nn -\ У
14
Эту систему из п - 1 уравнений можно решать методом исключения. Однако матрица коэффициентов А имеет несколько специфических свойств:
1)матрица трехдиагональная;
2)матрица симметричная;
3)при любом набореx0<xi < ... <хп матрица невырожденная и диа гонально доминирующая.
Следовательно, всегда существует единственное решение этой сис темы уравнений
Можно показать также, что для любого разумного выбора точек х0, хи ..., хп матрица коэффициентов хорошо обусловлена. Основываясь на этом и на свойстве диагонального доминирования, можно ожидать, что применение Гауссового исключения без масштабирования и без выбора ведущих элементов позволит тем не менее получить решение с хорошей точностью.
Гауссово исключение приводит исходную систему к верхней тре угольной форме
(7(1) Я (2) |
|
|
m(l) |
F(1) |
0(2) |
Я(3) |
|
m(2) |
F(2) |
|
G(n - 2)h(n - 1) |
m(n - 2) |
F (n - 2) |
|
|
|
G (n -1) |
m (n -l) |
F (n - l) |
где С(1) = 2(Я(1) + Я(2)); |
|
|
|
|
G{I) = 2{H(I) + H { I + \ ) ) - ^ P - - |
|
|
||
Я(1)=х(1)-х(0); |
0(1 -1) |
|
|
|
|
|
|
||
H(I)=x(I)-x(I- |
1); |
|
|
|
F(l) = 6(0(2) -у(1)) / Я(2) - 0(1) - № ) I Я(1)); |
|
|||
т = б(оо + 1 ) - т |
/ д / + 1 ) |
- o d ) - |
у и - 1 ) ) / ни)) - |
|
F{I -\)Н{1 -\) |
|
|
|
|
0 ( 1 - 1)
Значение момента в (Я - 1) точке определяется по формуле
M ( N - 1) = F (N -l)
G (N -l)
Значение момента в «/» точке
15
Л/(/) = F (I)-H (I +\)M (I + l) G(I)
Для записи кубического полинома на каждом участке представим выражение (2.2) в виде
х)ъ + Вt{x - *i-i)3 + с /0< -* ) + A
где
4 = mi-1. |
У1-1 |
|
|
c ,= |
6 |
; |
|
6^ ’ |
' |
ht |
|
|
|
|
<N |
|
l £ |
|
- |
_ mi . |
s: В |
||
A = |
6 |
. |
|
6A; ’ |
' |
h. |
|
Задания
1.Разработать программу сплайн-интерполяции функций.
2.Разработать программу интерполирования функции с помощью полинома Лагранжа.
3.Выполнить интерполирование функции, заданной графически (таблично) в соответствии с указанным вариантом (табл. 2.1) двумя мето дами.
4.Построить графики этой функции.
5.Провести анализ точности метода в зависимости от выбранного числа узлов.
Таблица 2.1
Вариант №1
| |
X -3 |
-2 |
-1 |
0 |
1 |
2 |
3 |
|
--------4 - г * |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
|
1 |
У |
|||||||
3 ■ |
|
|
|
|
|
|
|
|
i |
2 ■ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 * I
I
!
16
Вариант N°2
~х |
-4 |
-3 |
-2 |
-1 |
0 |
У |
0 |
0 |
-2 |
1 |
0 |
X |
1 |
2 |
3 |
4 |
|
У |
-1 |
2 |
0 |
0 |
|
Вариант N°3
Г |
= |
|
|
|
|
|
|
|
|
|
|
X -4 |
-3 |
-2 |
-1 |
0 |
|
|
|
|
|
|
|
|
|
|
|
У |
0 |
0 |
1 |
0 |
0 |
||
|
|
|
|
|
|
|
|
|
|
|
|
||||||
1 |
|
|
♦ |
|
1 - |
|
|
|
|
|
|
X |
1 |
2 |
3 |
4 |
|
|
|
|
|
|
|
|
|
X |
У |
0 |
-1 |
0 |
0 |
|
|||
1 |
. |
, |
|
* |
01 |
|
♦ |
|
♦ |
♦ |
|
||||||
|
I |
J |
|
|
|
|
|
|
|||||||||
•Б |
-4 |
-3 |
-2 |
- 1 |
- 1 ! |
1 |
3 |
4 |
! |
|
|
|
|
|
|
||
i |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
I |
|
|
|
-----------а -I____________ |
|
|
|
| , |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
Вариант №4
X -4 |
-3 |
-2 |
-1 |
0 |
|
У |
0 |
2 |
0 |
-1 |
0 |
X |
1 |
2 |
3 |
4 |
|
У |
1 |
0 |
-2 |
0 |
|
Вариант Ns5
X -4 |
-3 |
-2 |
-1 |
0 |
|
У |
0 |
0 |
-2 |
0 |
-1 |
X |
1 |
2 |
3 |
4 |
|
У |
0 |
2 |
0 |
0 |
|
17
Вариант №6
X А |
-3 |
-2 |
-1 |
0 |
|
У |
1 |
0 |
-1 |
0 |
-2 |
X |
1 |
2 |
3 |
4 |
|
У |
0 |
1 |
0 |
-1 |
|
Вариант №7
X А |
-3 |
-2 |
-1 |
0 |
|
У |
1 |
0 |
0 |
-1 |
2 |
X |
1 |
2 |
3 |
4 |
|
У |
1 |
0 |
0 |
-1 |
|
Вариант №8
X А |
-3 |
-2 |
-1 |
0 |
|
У |
1 |
-1 |
0 |
-2 |
0 |
X |
1 |
2 |
3 |
4 |
|
У |
2 |
0 |
1 |
-1 |
|
Вариант №9
X А |
-3 |
-2 |
-1 |
0 |
|
У |
1 |
-1 |
0 |
-2 |
1 |
X |
1 |
2 |
3 |
4 |
|
У |
-1 |
1 |
0 |
-1 |
|
18
Вариант №10
д г |
-4 |
-3 |
-2 |
-1 |
0 |
У |
-1 |
2 |
0 |
-1 |
1 |
X |
1 |
2 |
3 |
4 |
|
У |
-1 |
0 |
2 |
-1 |
|
Содержание отчета
1.Условие задачи.
2.Краткое описание методов, использованных при решении.
3.Программа.
4.Результаты.
5.Выводы по лабораторной работе.
19
ЛАБОРАТОРНАЯ РАБОТА № 3
ЧИСЛЕННОЕ ИНТЕГРИРОВАНИЕ
Цель работы: научиться применять численные методы вычисления определенных интегралов различных функций.
Теоретическая часть
Существует много различных машинных методов интегрирования. Метод, более всего подходящий для данной конкретной задачи, в значи тельной степени зависит от информации о соответствующей функции.
Существенный интерес представляют задачи для функции Дх), за данной на интервале [а, в]; их можно разделить на следующие категории:
1.Значения функции Дх) заданы только на фиксированном множе стве точек х интервала [а, в] (заданы таблицей).
2.Функция Дх) определена и может быть вычислена для любого действительного х из интервала [а, в].
Численное интегрирование обычно сглаживает и уменьшает ошиб ки, присутствующие в данных. Для численного приближения определен ных интегралов используется термин квадратура.
Определенный интеграл
ь
Определенный интеграл S= \f(x)dx может быть вычислен анали-
а
тически для заданной функции, непрерывной на интегрируемом отрезке, если известна первообразная интегрируемой функции. В тех случаях, ко гда первообразная интегрируемой функции сложна и определение ее за труднительно или невозможно, или когда интегрируемая функция задана таблично, целесообразно вычислять определенный интеграл численными методами.
Для численного интегрирования функций используются приближен ные формулы вида
о
где п ~ количество отрезков интегрирования; А,- - коэффициент, опреде ленный формулой численного интегрирования; х,- - дискретные значения аргумента (узлы).
20
Квадратурные формулы Ньютона-Котеса
Формулы выведены для случая равноотстоящих узлов:
4 /(* ,)> |
(3. 1) |
О/= О
где коэффициенты At связаны с коэффициентами Котеса Я, уравнением
|
А , = ф - а )-Н„ |
(3.2) |
1 |
С_Пп+1 и |
(3.3) |
где |
|
|
л|!(л -1)!0 g - i |
|
|
л = - —- |
, д = - —— , [л + 1] - обобщенная степень, |
А- шаг. |
h |
h |
|
Формула трапеций
Формула выведена для п = 1, h = Х\ - х0.
Используя соотношение (3.3), получим # 0 = Н { = ^ .
Тогда простая формула трапеций запишется в виде
S = \f{x)d x= |
|уЛс=Л-Ду0 + ^ i ) - |
(3-4) |
|
fl |
XQ |
l l |
|
Уточненная формула трапеций
Для увеличения точности формулы трапеций разделим участок ин тегрирования на «л» равных частей, тогда
A = t ^ L .
П
Тогда уточненная формула трапеций запишется в виде
ь ( |
л-1 |
\ |
5 = 2 ^ о+ Л + 2 1 л |
(3.5) |