Интерполяция и квадратурные формулы
Интерполирование
Определение 6.1. Пусть функция f (х) задана таблично на [a, b], т.е. задан набор значений: x0 = a, xn = b , x0 < x1 < x2 < .... < xn , yi = f (xi) i = 0,..., n
Тогда построение непрерывной на [a, b] функции j (x) , такой что j (xi) = yi называется интерполяцией функции f (х) на [a, b].
Определение 6.2. Пусть полином степени n Ln(x) = a0 xn + a1 xn-1 + ... + an интерполирует y=f (x) на [a, b], т.е. Ln(xi) = yi= f (xi). Тогда Ln (x) называется интерполяционным полиномом.
Квадратурные формулы
Определение 6.3. Выражение вида , предназначенное для вычисления определенного интеграла называется квадратурной формулой.
Величина R=I - S называется погрешностью квадратурной формулы. Укажем одну их квадратурных формул.
Формула трапеций
Простая : S1 = (b-a)( f(b) + f(a) )/ 2, R1 = (b-a)3 f (x) / 12 , x Î(a,b)
Составная: .
Определенный интеграл функции геометрически представляет собой площадь криволинейной трапеции ограниченной кривыми x=0, y=a, y=b и y= (Рис. 6.1).
Рис. 6.1. Криволинейная трапеция
Соответственно формуле и составим алгоритм вычисления величины определенного интеграла для таблично заданной функции f(x).
1) Вычисляем .
2) Вычисляем приближенное значение величины определенного интеграла по составной формуле трапеций:
Контрольная работа 1. Часть 3.
Для таблично заданной функции (xi, yi)= f(xi), i =0,...,6, решить следующие задачи (далее будем эту функцию обозначать f(x)).
1) Вычислить значение функции f(x) в заданной точке xÎ( x0, x6) используя линейную интерполяцию.
2) Вычислить значение функции f(x) в точке xÎ( x0, x6) на основе квадратичной интерполяции (используя многочлен Лагранжа второй степени).
3) Вычислить величину определенного интеграла для таблично заданной функции f(x) методом трапеций.
4) Найти наибольшее fmax и наименьшее fmin значения для непрерывной на отрезке [х0, х6]функции f (х). Определить точки хтах и хmin, в которых эти значениядостигаются. Задачу решить двумя способами:
а) методом дифференциального исчисления;
b) численным методом золотого сечения. Сравнить результаты двух подходов.
Варианты исходных данных
Вариант 1.
i | |||||||
xi | 0.4 | 0.6 | 0.8 | 1.0 | 1.2 | 1.4 | 1.6 |
yi | 3.7 | 4.8 | 5.3 | 5.1 | 4.9 | -0.1 | -6.2 |
x=0.44
f (х) = -3.5× x3+6.0× x2 - 2.3× x + 4.1
Вариант 2.
i | |||||||
xi | 0.5 | 0.7 | 0.9 | 1.1 | 1.3 | 1.5 | 1.7 |
yi | 3.7 | 4.8 | 5.2 | 5.0 | 3.1 | -0.2 | -7.6 |
x=0.73
f (х) = -2.5× x3+5.0× x2 - 2.1× x + 3.1
Вариант 3.
i | |||||||
xi | 0.5 | 0.7 | 0.9 | 1.1 | 1.3 | 1.5 | 1.7 |
yi | 1.2 | 3.7 | 3.3 | 3.2 | 2.9 | -0.1 | -4.2 |
x=1.59
f (х) = -1.5× x3+4.9× x2 - 2.26× x + 6.1
Вариант 4.
i | |||||||
xi | 0.3 | 0.9 | 1.5 | 2.1 | 2.7 | 3.3 | 3.9 |
yi | 2.7 | 3.7 | 4.3 | 4.1 | 0.1 | -1.5 | -8.3 |
x=0.47
f (х) = -1.5× x3+3.7× x2 - 2.56× x + 3.1
Вариант 5.
i | |||||||
xi | 0.5 | 0.8 | 1.3 | 1.7 | 2.1 | 2.5 | 2.9 |
yi | 5.3 | 5.5 | 6.1 | 6.3 | 6.0 | -0.3 | -2.9 |
x=1.44
f (х) = -1.5× x3+7.0× x2 - 2.3× x + 4.89
Вариант 6.
i | |||||||
xi | 0.2 | 0.8 | 1.4 | 2.0 | 2.6 | 3.2 | 3.8 |
yi | 3.2 | 4.8 | 6.3 | 5.9 | 4.7 | -0.1 | -1.1 |
x=0.92
f (х) = -5.1× x3+4.6× x2 - 2.2× x + 5.1
Вариант 7.
i | |||||||
xi | 0.4 | 0.8 | 1.2 | 1.6 | 2.0 | 2.4 | 2.8 |
yi | 4.2 | 4.3 | 5.1 | 4.8 | 2.7 | -0.5 | -6.3 |
x=0.86
f (х) = -3.7× x3+6.1× x2 - 2.25× x + 5.1
Вариант 8.
i | |||||||
xi | 0.8 | 1.2 | 1.6 | 2.0 | 2.4 | 2.8 | 3.2 |
yi | 5.1 | 5.4 | 6.1 | 5.8 | 5.3 | 0.3 | -1.7 |
x=1.73
f (х) = -2.5× x3+5.98× x2 - 2.01× x + 6.1
Вариант 9.
i | |||||||
xi | 0.8 | 1.1 | 1.4 | 1.7 | 2.0 | 2.3 | 2.6 |
yi | 2.3 | 3.3 | 5.3 | 4.7 | 3.9 | -0.5 | -4.1 |
x=1.57
f (х) = -2.5× x3+5.8× x2 - 2.28× x + 4.05
Вариант 10.
i | |||||||
xi | 0.4 | 0.8 | 1.2 | 1.6 | 2.0 | 2.4 | 2.8 |
yi | 5.1 | 5.4 | 6.1 | 5.8 | 0.5 | -0.3 | -4.2 |
x=2.53
f (х) = -3.47× x3+6.95× x2 - 3.29× x + 5.05
6.3. Пример выполнения контрольной работы 1 (часть 3)[1]
Исходные данные. Функция у(х) задана таблично:
i | |||||||
xi | 0.4 | 0.8 | 1.2 | 1.6 | 2.0 | 2.4 | 2.8 |
yi | 4.1 | 4.2 | 6.20 | 5.60 | 3.00 | -1.00 | -10.00 |
x=0.49
f (х) = -2.474× x3+5.9598× x2 - 202917× x + 4.0571.
Задание 1. Вычислить значение функции f (х)в точке x=0.49, используя линейную интерполяцию.
Линейная интерполяция заключается в том, что функция f(х)заменяется ломаной с вершинами в точках (xi, yi). Так как xÎ[0.4, 0.8], находим уравнение прямой, проходящей через две точки (0.4, 4.1) и (0.8, 4.2):
.
Разрешаем пропорцию относительно у: у = 0.25 х + 4.
При x=0.49 получаем ответ f (x)= 4.1225.
Задание 2. Вычислить значение функции f (х)в точке x= 0.49, используя квадратичную интерполяцию (интерполяционный многочлен Лагранжа второй степени).
Решение. При квадратичной интерполяции таблично заданная функция заменяется совокупностью дуг, имеющих форму парабол, каждая из которых проходит через три соседние точки. Уравнение параболы, проходящей через точки (xi, yi)= f (xi),(i =0, 1, 2), задает многочлен Лагранжа второй степени:
.
По условию задачи тремя ближайшими к x=0.49 точками являются: (0.4, 4.1), (0.8, 4.2) и (1.2, 6.20). Подставим эти значения в и получим:
Ответ: f (0.49)= L(0.49) = 3.9568.
Таким образом, используя линейную интерполяцию, мы получили
f (0.49)= 4.1225 » 4.1, тогда как при квадратичной f (0.49)= 3.9568 » 4.0. Значения функции f (х)в точке x= 0.49, найденные двумя разными способами, отличаются друг от друга приблизительно на 3%.
Замечание. О степени точности двух найденных значений что-либо утверждать затруднительно без дополнительной информации об исходной функции f (х), и потому нельзя определить, какой вид интерполяции предпочтительнее. В то же время, можно отметить, что квадратичная интерполяция представляет поведение функции f (х)на более широком интервале [0.4, 1.2] по сравнению с линейной (х Î[0.4, 0.8]). В этом смысле квадратичная интерполяция может оказаться более предпочтительной.
Задание 3. Вычислить величину определенного интеграла для таблично заданной функции f (x) методом трапеций.
Решение. В соответствии с выведенной формулой получаем (h=0.4):
Ответ:
Задание 4. Найти наибольшее fmax и наименьшее fmin значения для непрерывной на отрезке [х0, х6]функции
f (х) = -2.474× x3+5.9598× x2 - 202917× x + 4.0571.
Определить точки хтах и хmin, в которых эти значениядостигаются. Задачу решить двумя способами:
а) методом дифференциального исчисления;
б) численным методом золотого сечения. Сравнить результаты двух подходов.
Решение.
а) Метод дифференциального исчисления. Исходная функция по условию задачи непрерывная на отрезке [х0, х6], тогда по теореме Вейерштрасса она достигает своих экстремальных значений либо на концах отрезка, либо в одной из критических точек, определяемых из условия f ' (х) = 0. В данном случае
f ' (х) = - 7.4219 x2 + 11.9196 x - 2.2917.
Критические точки находим из уравнения
- 7.4219 x2 + 11.9196- 2.2917 = 0.
Корни квадратного уравнения легко вычисляют по известной схеме:
x1 = 0.2233 и х2= 1.3827.
Точка x1 = 0.2233 не входит в исследуемый отрезок [х0, х6] = [0.4, 2.8], следовательно, в пределах рассматриваемой области имеем единственную критическую точку х* = 1.3827, тогда f (х*)= 5.7428.
Вычислим функцию f (х)в граничных .точках:
f (0.4)= 3.9357, f (2.8)= - 9.9429.
Сравнив найденные значения f (0.4), f (1.3827), f (2.8)заключаем:
1) наибольшее значение функции f (х) на отрезке [х0, х6] достигается в точке хmax= 1.3827 и составляет fmax = f (1.3827) = 5.7428.
2) наименьшее значение функции f (х) на отрезке [х0, х6] достигается в точке xmin = 2.8 и составляет fmin = f (2.8)= -9.9441.
б) Метод золотого сечения применяется для поиска минимума (максимума) функции одного переменного на отрезке. Метод использует следующее свойство непрерывных функций: если точки g и h (g < h) расположены на (a, b) и f(g) ≤ f(h), то на отрезке [a, h] есть хотя бы один минимум функции. Аналогично, если f(g) ≥ f(h), то на отрезке [g, b] есть хотя бы один минимум.
Согласно этому методу поиск экстремума (максимума функции в нашем случае (почему?)) сводится к построению последовательности отрезков [a0, b0], [a1, b1], …, [an, bn], стягивающихся к точке максимума функции f (х). Задача считается решенной, когда длина интервала, содержащего точку максимума, не превышает малую, наперед заданную величину e: |bn - an| £e. При этом любая точка из [an, bn] считается решением.
Ниже приводится алгоритм выполнения задания, результаты работы которого заносим в таблицу 1, приведенную ниже (данные до 4-го знака без округления).
1. Полагаем а0 = х0= 0.4; b0= х6= 2.8. Выбираем для интервала [а0, b0]две внутренние точки, координаты которых вычисляются из условия золотого сечения:
y= 0.618 а0 + 0.382 b0= 1.3168
z = 0.382 а0 +0.618 b0=1.8832
Вычисляем f (y), f (z). Поскольку f (y)> f (z), то fmax находится на отрезке [ao, z]и отрезок [z, b0]можно исключить из дальнейшего рассмотрения.
2. Полагаем а1 = а0, b1= z, z = у. Новое значение у вычисляем по формуле: y= 0.618 а1 + 0.382 b1.
Находим f (y), f (z). (см. табл. 6.1), поскольку f (y)< f (z), то fmax находится на отрезке [z, b1].
3. Полагаем а2 = у, b2= b1, у = z. Вычисляем новое z:
z = 0.382 а2 +0.618 b2.
Находим f (y)и f (z), сравниваем между собой и уменьшаем интервал по результатам сравнения.
Процесс продолжается до тех пор, пока |bn - an| > 0.01.
При выполнении условия |bn - an| £ 0.01, полагаем xmax=( an + bn )/2.
Таблица 6.1. Результаты вычислений
а | y | z | b | f (a) | f (y) | f (z) | f (b) |
0.4000 | 1.3168 | 1.8832 | 2.8000 | 3.9357 | 5.7248 | 4.3549 | -9.942 |
0.4000 | 0.9666 | 1.3166 | 1.8832 | 3.9357 | 5.(761 | 5.7247 | 4.3549 |
0.9666 | 1.3167 | 1.5331 | 1.8832 | 5.176! | 5.7248 | 5.6372 | 4.3549 |
0.9666 | 1.1830 | 1.3167 | 1.5331 | 5.1761 | 5.5909 | 5.7248 | 5.6372 |
1.1830 | 1.3167 | 1.3993 | 1.5331 | 5.5909 | 5.7248 | 5.7416 | 5,6372 |
1.3167 | 1.3993 | 1.4504 | 1.5331 | 5.7248 | 5.7416 | 5.7223 | 5.6372 |
1.3167 | 1.3678 | 1.3993 | 1.4504 | 5.7248 | 5.7419 | 5.7416 | 5.7223 |
1.3167 | 1.3483 | 1.3678 | 1.3993 | 5.7248 | 5.7378 | 5.7419 | 5.7416 |
1.3483 | 1.3678 | 1.3798 | 1.3993 | 5.7378 | 5.7419 | 5.7428 | 5.7416 |
1.3678 | 1.3798 | 1.3873 | 1.3993 | 5.7419 | 5.7428 | 5.7427 | 5.7416 |
1.3678 | 1.3752 | 1.3798 | 1.3873 | 5.7419 | 5.7426 | 5.742S | 5.7427 |
1.3752 | 1.3798 | 1.3827 | 1.3873 | 5.7426 | 5.7428 | 5.7428 | 5.7427 |
В данном примере решение достигается на 12-м шаге (при а12=1.3798, b12=1.3873).
Ответ: xmax=( a12 + b12 )/2=1.3836; f (xmax) = fmax = 5.7428.
Сравнив полученные xmax, fmax с результатами первого подхода, обнаруживаем хорошее соответствие между ними, что свидетельствует о правильности найденного решения.
Замечание. Нахождение точки минимума по методу золотого сечения проводится аналогично, но сравнение f (y)и f (z) выполняется по обратному принципу - с сохранением меньшего из них для следующего шага. Кроме того, на каждом шаге вычислений (кроме первого) находим только одно новое значение функции f (x), что относят к преимуществам метода золотого сечения.
РЕКОМЕНДУЕМАЯ ОСНОВНАЯ ЛИТЕРАТУРА
1. Гусак А.А. Задачи и упражнения по высшей математике.: В 2 ч. Ч. 1: - Мн.: Выш. шк., 2006. – 247 с.
2. Высшая математика для экономистов. /Н.Ш. Кремер, Б.А. Путко, И.М. Тришин, М.Н. Фридман; под ред. проф. Н.Ш. Кремера. – 2-е изд., перераб. и доп. – М.: ЮНИТИ, 2002. – 471 с.
3. Турецкий В. Я. Математика и информатика. – М.: ИНФРА-М, 2002. – 560 с.
4. Турчак Л.И., Плотников П.В. Основы численных методов. Учебное пособие. – М.: ФИЗМАТЛИТ, 2005. – 304 с.
5. Магазинников Л.И., Магазинников А.Л. Высшая математика. Линейная алгебра и аналитическая геометрия. Учебное пособие – Томск: ТМЦДО, 2003. – 176с.
[1] Пример заимствован из источника: Иконникова И.А., Лаходынова Н.В., Гедике А.И. Информатика II. – Томск: Изд-во ТГАСУ. – 2000.