- •Численные методы.
- •Действия над приближенными числами.
- •Относительная погрешность.
- •Число верных знаков.
- •Округление чисел.
- •Свойства погрешностей.
- •Универсальный математический пакет программ MathCad: основные сведения.
- •Примеры вычислений в среде MathCad.
- •Найти обратную матрицу
- •Построить график функции
- •Приближенное решение алгебраических и трансцендентных уравнений.
- •Программа на языке qbasic
- •Метод Ньютона (метод касательных).
- •Метод простых итераций (метод последовательных приближений).
- •То итерационный процесс
- •Предельное значение
- •Геометрическая иллюстрация метода итераций.
- •Интерполяция функций. Многочлен Лагранжа.
- •Текст программы на языке qbasic имеет вид
- •Блок-схема программы вычисления процедуры-функции lx() вычисления многочлена Лагранжа k – й степени в точке х1.
- •Интерполяционная функция Ньютона.
- •Аппроксимация функций по методу наименьших квадратов.
- •Текст программы на языке qbasic имеет вид
- •Текст программы на языке qbasic для вычисления среднего квадратического отклонения.
- •Метод Гаусса решения системы линейных уравнений.
- •Текст программы решения системы уравнений методом Гаусса на языке qbasic.
- •Приближенное вычисление определенных интегралов.
- •Формула прямоугольников.
- •Блок-схема программы вычисления интеграла по формуле прямоугольников.
- •Текст программы на языке qbasic интегрирования по формуле прямоугольников.
- •Формула трапеций.
- •Блок-схема программы вычисления интеграла по формуле Симпсона
- •Текст программы на qbasic интегрирования по формуле Симпсона.
- •Численное интегрирование дифференциальных уравнений.
- •Метод Эйлера.
- •Метод Рунге-Кутта.
- •Блок-схема программы вычисления решения дифференциального уравнения по методу Рунге-Кутта.
- •Блок-схема процедуры-функции метода Рунге-Кутта.
- •Расчетные формулы для метода Рунге- Кутта.
- •Результаты работы программы
- •Одномерная оптимизация.
- •Метод дихотомии.
- •Текст программы нахождения минимума методом градиентного спуска.
Интерполяция функций. Многочлен Лагранжа.
Пусть при изучении некоторого явления установлено, что существует функциональная зависимость между величинами х и у, при этом функция y = φ(x) Остается нам неизвестной, но на основании эксперимента установлены значения этой функции y0, у1, у2, …, уn при некоторых значениях аргумента x0, x1, x2, ….xn, принадлежащих отрезку [a, b].
Задача заключается в том, чтобы найти функцию, по возможности более простую с вычислительной точки зрения (например, многочлен), которая представляла бы неизвестную функцию y = φ(x) точно или приближенно. Другими словами, задачу можно сформулировать так:
на отрезке [a, b] заданы значения y0 = φ(x0), y1 = φ(x1), … y n = φ(xn) неизвестной функции
y = φ(x) в n + 1 различных точках x0, x1, x2, ….xn; требуется найти многочлен P(x) степени ≤ n, приближенно выражающий функцию y = φ(x).
В качестве такого многочлена естественно взять многочлен, значения которого в точках x0, x1, x2, ….xn совпадают c соответствующими значениями функции y = φ(x) − y0, у1, у2, …, уn . Поставленная задача называется задачей интерполяции функции.
В качестве искомого многочлена возьмем многочлен n – й степени вида
L n(x) = C0 (x – x1) (x – x2) … (x – x n) + C1(x – x0) (x – x2) … (x – x n) +
+C2(x – x0) (x – x1) (x – x3)…(x –x n) + … + C n (x – x0) (x – x1) …(x – x n – 1 ). (1)
Определим коэффициенты С0, С1, …, С n так, чтобы выполнялись условия
L n (x0) = y0, L n (x1) = y1, …, L n (x n) = y n . (2)
Положим в формуле (1) x = x0, тогда, принимая во внимание равенство (2), получим
y0 = C0 (x0 – x1) (x0 – x2) … (x 0– x n)
откуда
Затем, положив х = х1, получим
Подставляя найденные значения в выражение (1), получим
Этот формула называется интерполяционной формулой Лагранжа (1736 – 1813, Франция). L n(x) - многочлен Лагранжа.
Отметим без доказательства, что если y = φ(x) имеет производную (n + 1)-го порядка на отрезке [a, b], то погрешность при замене функции y = φ(x) многочленом L n(x), т.е. величина
R(x) = φ(x) – Ln(x)
удовлетворяет неравенству
Ввиду сложности этого выражения, практически погрешность вычисляется по формуле
| φ(x) – Ln(x)| ≤ |L n+1 (x) – L n (x)|
П р и м е р .
Выполнить интерполяцию c помощью многочлена Лагранжа функции y = φ(x), заданной таблично в точках x1 = 0.62 и x1 = 0.57.
№ узла |
0 |
1 |
2 |
3 |
4 |
5 |
x i |
0.50 |
0.55 |
0.60 |
0.65 |
0.70 |
0.75 |
y I = φ(x i) |
0.8881 |
1.0265 |
1.1752 |
1.3366 |
1.5095 |
1.6963 |
На рис.1 приведена блок-схема программы интерполяции по формуле Лагранжа. Программа использует обращение к процедуре-функции вычисления многочлена Лагранжа в точке х = х1. Блок-схема процедуры–функции приведена на рис. 2.
Далее приводится текст программы на языке QBASIC.