- •Оглавление
- •Введение
- •Рабочая программа
- •Краткий конспект лекций *
- •1. Решение алгебраических и трансцендентных уравнений
- •1.1. Метод простой итерации
- •1.2. Усовершенствованный метод последовательный приближений
- •1.3. Метод Ньютона-Рафсона
- •Уравнение касательной
- •1.4. Случай почти равных корней
- •1.5. Метод хорд
- •1.6. Метод секущих
- •Варианты заданий
- •Геометрическое толкование
- •Вопросы для самопроверки
- •2. Методы интерполяции
- •2.1. Метод Лагранжа
- •2.2. Вычислительная схема Эйткена
- •2.3. Определение явного вида интерполяционного многочлена
- •Варианты заданий
- •Вопросы для самопроверки
- •3.Метод наименьших квадратов
- •3.1.Постановка задачи и способ решения
- •3.2.Вычислительная схема метода наименьших квадратов
- •3.3.Получение таблицы экспериментальных данных
- •3.4. Методические указания по выполнению задания
- •3.5. Форматирование Диаграммы
- •Варианты заданий
- •Вопросы для самопроверки
- •4. Полином Чебышева
- •Свойства полиномов Чебышева
- •Определение полиномов Чебышева
- •Численная оценка полиномов Чебышева
- •5. Решение систем линейниых (слау) и нелинейных уравнений (снау)
- •5.1. Метод Ньютона - Рафсона для систем нелинейных уравнений
- •5.2. Метод итерациЙ для систем нелинейных уравнений
- •5.3. Системы линейных уравнений Метод Простой итерации
- •5.4. Метод Зейделя
- •Варианты заданий
- •Вопросы для самопроверки
- •6. Численное интегрирование
- •6.1.Квадратурные формулы, порожденные интерполяционными формулами
- •6.2. Квадратурные формулы Гаусса
- •6.3 Метод Ромберга
- •6.4. Вычисление интеграла по формуле прямоугольников
- •6.5 Вычисление интеграла по формуле трапеций
- •6.6. Вычисление интеграла методом Симпсона
- •6.7 Вычисление интеграла методом Гаусса
- •Варианты заданий
- •Вопросы для самопроверки
Вопросы для самопроверки
1. Что называется абсолютной и относительной погрешностями?
2. Какая цифра в числе называется верной? В чем состоит правило округления чисел?
3. В чем суть метода простой итерации для решения трансцендентных уравнений?
4. В чем суть метода Ньютона-Рафсона для решения алгебраических уравнений?
5. Почему в методе
простой итерации недостаточно сравнения
?
2. Методы интерполяции
Интерполированием называют приблтженное или точное нахождение какой –либо величины по известным отдельным значениям этой же величины или других величин, связанных с ней. Рассмотрим таблицу парный значений:
- индексированные
пары (они называются узлами интерполяции)
представляют собой фиксированные пары,
причем аргументы строго упорядочены:
.
Будем называть таблицу
табличной функцией
.
Алгебраическое интерполирование
восстанавливает достоверную аналитическую
зависимость
в виде так называемого интерполяционного
многочлена вида:
,
где (k-1)-
наивысшая степень полинома, описывающая
эту зависимость.
2.1. Метод Лагранжа
Для
данных значений
и
найти
многочлен F
(x)
= L
(x)
степени (n
- 1), удовлетворяющий условиям
Рассмотрим
конструкцию следующего вида:
.
Числитель состоит из произведений (n
- 1) сомножителей, а значит есть многочлен
степени (n
- 1). Числа
-корни
этого многочлена, то есть
i
= 2, 3, …, n,
причём
по построению. Таким образом, график
этого многочлена проходит через точку
и обращается в ноль во всех других точках
(узлах интерполяции) для
.
Аналогично:
для
.
Сумма этих
многочленов
называется интерполяционным
полиномом (или интерполяционной формулой)
Лагранжа,
который удовлетворяет всем условиям
исходной задачи. Решение
единственное: доказательство от
«противного». Пусть существует ещё один
полином Ф (x)
степени
.
Построим R
(x)
= F
(x)
– Ф (x).
Он является полиномом степени не выше
(n-1),
но у него n
корней в точках
,
чего быть не может -
.
Sub Lagrange()
'Программа, реализующая метод "Интерполяционный полином Лагранжа"
'n-кол-во узлов интерполяции
'i-счетчик цикла
's-вспомогательный многочлен
'T-интерполяционный многочлен
'a-текущая точка расчета
'k-счетчик цикла
'j-счетчик цикла
'nu-кол-во расчетных точек
Dim x(1 To 100) As Single 'задание типа х координаты,десятичное число обычной точности, размер 4 байта
Dim y(1 To 100) As Single 'задание типа у координаты,десятичное число обычной точности, размер 4 байта
Dim n As Integer 'задание типа кол-ва узлов интерполяции, целочисленный тип, размер 2 байта
Dim i As Integer 'задание типа счетчика цикла, целочисленный тип, размер 2 байта
Dim s As Single 'задание типа вспомогательного многочлена,десятичное число обычной точности, размер 4 байта
Dim T As Single 'задание типа интерполяционного многочлена,десятичное число обычной точности, размер 4 байта
Dim a As String 'задание типа текущей точки расчета,строки символов, 1 байт на символ
Dim k As Integer 'задание типа счетчика цикла, целочисленный тип, размер 2 байта
Dim j As Integer 'задание типа счетчика цикла, целочисленный тип, размер 2 байта
Dim nu As Integer 'задание типа кол-ва расчетных точек, целочисленный тип, размер 2 байта
nu = 200 'присвоение параметру nu значение 200
a = InputBox("Введите число узлов") 'диаолг запроса числа узлов
n = CInt(a)
For i = 1 To n 'начало цикла
x(i) = Worksheets(1).Cells(1, i).Value 'вывод на лист 1 шапки таблицы х(i) с i строчки столбца
y(i) = Worksheets(1).Cells(2, i).Value 'вывод на лист 1 шапки таблицы у(i) со 2 строчки i столбца
Next i 'конец цикла
For j = 0 To nu 'начало цикла
metka1: a = x(1) + ((x(n) - x(1)) / nu) * j 'расчет значения текущей точки
T = 0 'присвоение значения 0 интерполяционному полиному
For k = 1 To n 'начало цикла
s = 1 'присвоение значения 1 вспомогательному многочлену
For i = 1 To n 'начало цикла
If i = k Then GoTo metka2 'объявление условия
s = s * (a - x(i)) / (x(k) - x(i)) 'расчет вспомогательного многочлена
metka2: Next i 'конец цикла
T = T + s * y(k) 'расчет интерполяционного многочлена
Worksheets(1).Cells(3, j + 1).Value = CSng(a) 'вывод на лист 1
Worksheets(1).Cells(4, j + 1).Value = T 'вывод на лист 1 значения интерполяционного многочлена
Next k 'конец цикла
Next j 'конец цикла
End Sub 'конец программы
