- •Раздел 6.
- •Раздел 6. Модели и алгоритмы решения задач численными методами с использованием математических пакетов Рекомендации по использованию учебного пособия
- •Тема 6.1. Элементы теории погрешностей
- •6.1.1. Точные и приближенные числа
- •6.1.2. Абсолютная и относительная погрешность
- •Тема 6.2. Методы решения нелинейных уравнений
- •6.2.1. Постановка задачи
- •Отделение корней (локализация корней);
- •Итерационное уточнение корней.
- •6.2.2. Отделение корней
- •6.2.2.1. Графическое отделение корней
- •6.2.2.2. Аналитическое отделение корней
- •6.2.3. Уточнение корней
- •6.2.3.1. Метод половинного деления
- •6.2.3.2. Метод итерации
- •6.2.3.3. Метод Ньютона (метод касательных)
- •6.2.3.4. Метод хорд
- •6.2.3.5. Сравнение методов решения нелинейных уравнений
- •6.2.4. Технология решения нелинейных уравнений средствами MathCad
- •Тема 6.3. Интерполяция функций
- •6.3.1. Постановка задачи
- •6.3.2. Интерполяционная формула Лагранжа
- •6.3.3. Интерполяционные формулы Ньютона
- •6.3.3.1. Конечные разности
- •6.3.3.2. Первая интерполяционная формула Ньютона
- •6.3.3.3. Вторая интерполяционная формула Ньютона
- •6.3.4. Сплайн – интерполяция
- •6.3.5. Сравнение интерполяционных многочленов по применению
- •6.3.6. Технология интерполяции функций в среде математических пакетов
- •Тема 6.4. Численное интегрирование
- •6.4.1. Постановка задачи
- •6.4.2. Метод прямоугольников
- •6.4.3. Формула трапеций
- •6.4.4. Формула Симпсона
- •6.4.5. Оценка погрешности численного интегрирования
- •6.4.6. Технология вычисления интегралов в среде математических пакетов
- •Тема 6.5. Методы решения обыкновенных дифференциальных уравнений
- •6.5.1. Постановка задачи
- •6.5.2. Метод Эйлера
- •6.5.3. Методы Рунге-Кутты
- •6.5.4. Решение оду n-го порядка
- •6.5.5. Сравнение методов решения оду
- •6.5.6. Технология решения обыкновенных дифференциальных уравнений средствами математических пакетов
- •6.6.2. Метод дихотомии
- •6.6.3. Метод золотого сечения
- •6.6.4. Сравнение методов
- •6.6.5. Технология решения задач одномерной оптимизации средствами математических пакетов
- •Тема 6.7. Аппроксимация функций
- •6.7.1. Постановка задачи аппроксимации
- •6.7.2. Метод наименьших квадратов
- •6.7.3. Технология решения задач аппроксимации функций средствами математических пакетов
- •Тема 6.8. Многомерная оптимизация
- •6.8.1. Постановка задачи и основные определения
- •6.8.2. Методы спуска
- •6.8.3. Метод градиентного спуска с дроблением шага
- •6.8.4. Метод наискорейшего спуска
- •6.8.5. Проблема оврагов. Метод покоординатного спуска
- •6.8.6. Технология решения задач многомерной оптимизации средствами математических пакетов
- •Список литературы
- •Тема 6.4. Численное интегрирование................................................71
- •Тема 6.5. Методы решения обыкновенных дифференциальных Уравнений............................................................................. 92
- •Тема 6.6. Одномерная оптимизация................................................ 115
- •Тема 6.7. Аппроксимация функций....................................................132
- •Тема 6.8. Методы многомерной оптимизации............................... 149
- •Список литературы.................................................................... 204
Тема 6.3. Интерполяция функций
6.3.1. Постановка задачи
6.3.2. Интерполяционная формула Лагранжа
6.3.3. Интерполяционные формулы Ньютона
6.3.3.1. Конечные разности
6.3.3.2. Первая интерполяционная формула Ньютона
6.3.3.3. Вторая интерполяционная формула Ньютона
6.3.4. Сплайн – интерполяция
6.3.5. Сравнение интерполяционных многочленов по применению
6.3.6. Технология интерполяции функций в среде математических пакетов
6.3.1. Постановка задачи
Вычисление значений функции y = f(x) – одна из тех задач, с которой приходится постоянно сталкиваться в инженерной практике. Однако сделать это не всегда возможно. Примером тому следующие типичные ситуации:
функция задана таблицей значений (нет аналитического выражения) , (i = 0, 1, 2,…, n), необходимо вычислить значения функции в точках, не совпадающих с табличными;
аналитическое выражение f(x) есть, но получение ее значений затруднено громоздкими и сложными вычислениями;
значения функции в требуемых точках могут быть получены только экспериментально.
В этих и ряде других случаев возникает необходимость приближенного вычисления функции y = f(x).
Задача аппроксимации состоит в следующем. Функцию f(x), заданную таблично, требуется приближенно заменить (аппроксимировать) некоторой функцией j(х) так, чтобы отклонение j(х) от f(x) в некоторой области удовлетворяло заданному условию. Функция j(х) называется аппроксимирующей функцией.
В качестве аппроксимирующей функции часто используют алгебраический многочлен вида:
jm(x) = a 0 + a 1 x + a 2 x2 + … + a m xm . (6.3.1-1)
В этом случае говорят о параболической аппроксимации.
Частным случаем задачи аппроксимации таблично заданной функции является интерполирование. Интерполирование состоит в следующем. Для функции y = f(x), заданной в (n + 1) точке , найти функцию j(х), принимающую в этих точках заданные значения, то есть
, i = 0, 1, 2, … n. (6.3.1-2)
Будем называть (6.3.1-2) условием интерполяции, точки – узлами интерполяции, а функцию j(х) – интерполирующей функцией.
При интерполяции критерием приближения аппроксимирующей функции к заданной является совпадение их значений в узлах интерполяции.
Геометрической интерпретацией задачи интерполяции является нахождение функции, график которой проходит через заданную систему точек , i = 0, 1, …, n (рис. 6.3.1-1). Если в качестве интерполирующей функции используется алгебраический многочлен (6.3.1-1) степени не выше n, то задача имеет единственное решение.
|
___ интерполируемая функция
----- интерполирующая функция
|
Рис.6.3.1-1
Применяя интерполирующую функцию (6.3.1-1), запишем условие (6.3.1-2) для каждого из (n + 1) узлов. В результате получим следующую систему (n + 1) линейных уравнений:
Эта система однозначно разрешима, так как ее определитель (определитель Вандермонда) отличен от нуля, если узлы интерполяции различны. Решение полученной системы n+1 линейных уравнений относительно неизвестных а0, а1, …, аn позволяет найти коэффициенты интерполирующего многочлена (6.3.1-1).
Пример 6.3.1-1. Пусть функция y = f(x) задана таблично:
xi |
1 |
1.2 |
1.4 |
1.6 |
1.8 |
y i |
0 |
-0.16 |
-0.24 |
-0.24 |
-0.16 |
Требуется построить интерполяционный многочлен, позволяющий вычислить значение f(x) в точке x = 1.43.
Полагая x0 = 1.2 , x1 = 1.4 , x2 = 1.6,
y0 =-0.16, y1 = -0.24, y2 = -0.24, получим систему уравнений
Решая систему уравнений, получим следующие значения а0 = 2, а1 = -3, а2 = 1. Тогда интерполяционный многочлен имеет следующий вид: P2(x) = 2 – 3x + x2, а значение многочлена в точке 1.43 равно P2(1.43) = - 0.2451.