Алгоритмы интерполяции

Проведение исследования задачи основной нахождения интерполяционных коэффициентов Лагранжа при равномерном распределении узлов интерполяции. Добавление выражений в формулу базисного полинома и вынесение за знаки перемножения в числителе и знаменателе.

Рубрика Математика
Вид статья
Язык русский
Дата добавления 02.02.2019
Размер файла 134,3 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

УДК 519.6

Таразский государственный университет имени М.Х. Дулати

АЛГОРИТМЫ ИНТЕРПОЛЯЦИИ

Егембердиева Ш.К.

Шевцов А.Н.

Рассмотрим задачу нахождения интерполяционных коэффициентов Лагранжа при равномерном распределении узлов интерполяции. Лагранж предложил способ вычисления таких многочленов[1, 2]:

где базисные полиномы определяются по формуле:

В случае равномерного распределения узлов интерполяции xj выражаются через расстояние между узлами интерполяции h и начальную точку x0: интерполяционный лагранж формула перемножение

и, следовательно,

Подставив эти выражения в формулу базисного полинома и вынеся за знаки перемножения в числителе и знаменателе, получим:

Теперь можно ввести замену переменной и получить полином от , который строится с использованием только целочисленной арифметики.

Составим программу[3]:

Таблица 1 Программа

procedure TForm1.BitBtn3Click(Sender: TObject);

var xn0,s:real; kj,s1,s2:integer;

begin

n:=StringGrid1.RowCount-1; xn0:=strtofloat(StringGrid1.Cells[0,1]); s1:=1; s2:=1;

for I := 1 to n do

begin

x[i]:=strtofloat(StringGrid1.Cells[0,i])-xn0;

y[i]:=strtofloat(StringGrid1.Cells[1,i]);

Chart1.Series[0].AddXY(xn0+x[i],y[i]);

end;

for I := 1 to n do yo[i]:=koef(i);

case n of

3:begin k[2]:=x0;

k[1]:=-(yo[1]*x1(1)+yo[2]*x1(2)+yo[3]*x1(3));

k[0]:= yo[1]*x2(1)+yo[2]*x2(2)+yo[3]*x2(3);

end;

4: k[3]:=x0;

s:=0; for I := 1 to n do s:=s+yo[i]*x1(i); k[2]:=-s;

s:=0; for I := 1 to n do s:=s+yo[i]*x2(i); k[1]:=s;

s:=0; for I := 1 to n do s:=s+yo[i]*x3(i); k[0]:=-s;

end;

5:begin k[4]:=x0;

s:=0; for I := 1 to n do s:=s+yo[i]*x1(i); k[3]:=-s;

s:=0; for I := 1 to n do s:=s+yo[i]*x2(i); k[2]:=s;

s:=0; for I := 1 to n do s:=s+yo[i]*x3(i); k[1]:=-s;

s:=0; for I := 1 to n do s:=s+yo[i]*x4(i); k[0]:=s;

end;

…………………………

end;

for I := 0 to n - 1 do

StringGrid2.Cells[1,12-i]:=floattostr(int(k[i]*1000)/1000);

memo1.Clear;

for i:=0 to (stringgrid1.RowCount-2)*10 do //160

begin

a:=i/10;

case n of

3:y1:=k[2]*xx(a,2)+k[1]*xx(a,1)+k[0];

4:y1:=k[3]*xx(a,3)+k[2]*xx(a,2)+k[1]*xx(a,1)+k[0];

5:y1:=k[4]*xx(a,4)+k[3]*xx(a,3)+k[2]*xx(a,2)+k[1]*xx(a,1)+k[0];

6:y1:=k[5]*xx(a,5)+k[4]*xx(a,4)+k[3]*xx(a,3)+k[2]*xx(a,2)+k[1]*xx(a,1)+k[0];

……………………..

end;

Chart1.Series[1].AddXY(xn0+a,y1);

// 1 proizv

case n of

3:py1:=2*k[2]*xx(a,1)+k[1];

4:py1:=3*k[3]*xx(a,2)+2*k[2]*xx(a,1)+k[1];

5:py1:=4*k[4]*xx(a,3)+3*k[3]*xx(a,2)+2*k[2]*xx(a,1)+k[1];

6:py1:=5*k[5]*xx(a,4)+4*k[4]*xx(a,3)+3*k[3]*xx(a,2)+2*k[2]*xx(a,1)+k[1];

……………………………..

end;

Chart2.Series[3].AddXY(xn0+a,py1);

if i>0 then if py10*py1<0 then

begin

stringgrid3.Cells[1,s1]:=floattostr(xn0+a);

stringgrid3.Cells[2,s1]:=floattostr(roundto(y1,-3));

if py10<py1 then stringgrid3.Cells[3,s1]:='min'

else stringgrid3.Cells[3,s1]:='max';

s1:=s1+1; end; py10:=py1;

// 2 proizv

case n of

4:vy1:=2*3*k[3]*xx(a,1)+2*k[2];

5:vy1:=3*4*k[4]*xx(a,2)+2*3*k[3]*xx(a,1)+2*k[2];

6:vy1:=4*5*k[5]*xx(a,3)+3*4*k[4]*xx(a,2)+2*3*k[3]*xx(a,1)+2*k[2];

7:vy1:=5*6*k[6]*xx(a,4)+4*5*k[5]*xx(a,3)+3*4*k[4]*xx(a,2)+2*3*k[3]*xx(a,1)+2*k[2];

end;

Chart3.Series[3].AddXY(xn0+a,vy1);

if i>0 then if vy10*vy1<0 then begin

stringgrid3.Cells[5,s2]:=floattostr(xn0+a);

stringgrid3.Cells[6,s2]:=floattostr(roundto(y1,-3));

s2:=s2+1;end;

vy10:=vy1;end;

end;

// - кнопка интерполяция

// Вывод на график узлов интерполяции

// расчет интерполяционных коэффициентов

// и так далее до 9

// расчет функции

// и так далее до 9

// поиск первой производной

// и так далее до 9

//определение максимумов и минимумов

// поиск второй производной

// и так далее до 9

Возьмем таблицу с данными:

Таблица 2 Исходные данные

X

2000

2001

2002

2003

2004

2005

2006

2007

2008

Y

3,2

1,5

3,7

1,5

1,8

5,9

5,1

1,8

4,9

Сделаем расчет интерполяционных коэффициентов.

Таблица 3 Коэффициенты

x^8

x^7

x^6

X^5

x^4

x^3

x^2

x^1

x^0

-0,001

0,043

-0,496

2,732

-7,147

6,196

5,245

-8,272

3,2

Тогда функция примет следующий вид:

Рис. 1. График функции с узлами интерполяции

Исследуем функцию на экстремумы и точки перегиба:

Таблица 4 Критические точки

Точки экстремума

Точки перегиба

x

y

x

y

1

2000,6

0,728

min

2001,2

2,179

2

2002

3,7

max

2002,7

2,301

3

2003,5

0,907

min

2004,5

3,868

4

2005,5

6,502

max

2006,3

3,653

5

2007

1,8

min

2007,5

4,007

6

2007,9

5,471

max

Рис. 2. График первой производной Рис. 3. График второй производной

Построенные алгоритмы и программа позволяют находить интерполяционную функцию Лагранжа, критические точки и экстремумы.

Литература

1. Бугров Я.С., Никольский С.М. Высшая математика: Учеб. для вузов: Под ред. В. А. Садовничего. - М.: Дрофа, 2004. - 512 c.

2. Зимина О.В. Высшая математика. - М.: ФИЗМАТЛИТ, 2005. - 368 с.

3. Шевцов А.Н. Математическое моделирование в прикладных задачах. Учеб.пособие. - Тараз, 2012. - 250 с.

Размещено на Allbest.ru


Подобные документы

  • Методы численного дифференцирования. Вычисление производной, простейшими формулами. Численное дифференцирование, основанное на интерполяции алгебраическими многочленами. Аппроксимация многочленом Лагранжа. Дифференцирование, с использованием интерполяции.

    курсовая работа [1,3 M], добавлен 15.02.2016

  • Непрерывная и точечная аппроксимация. Интерполяционные полиномы Лагранжа и Ньютона. Погрешность глобальной интерполяции, квадратичная зависимость. Метод наименьших квадратов. Подбор эмпирических формул. Кусочно-постоянная и кусочно-линейная интерполяции.

    курсовая работа [434,5 K], добавлен 14.03.2014

  • Задача нахождения экстремума: сущность и содержание, оптимизация. Решение методами квадратичной интерполяции и золотого сечения, их сравнительная характеристика, определение основных преимуществ и недостатков. Количество итераций и оценка точности.

    курсовая работа [779,5 K], добавлен 25.08.2014

  • Роль интерполяции функций, значения которой совпадают со значениями заданной функции в некотором числе точек. Интерполирование функции полиномами, непосредственно непрерывных функций на отрезке и в точке. Определение понятия погрешности интерполяции.

    курсовая работа [157,4 K], добавлен 10.04.2011

  • Понятие интерполяций функций и их роль в вычислительной математике. Рассмотрение метода интерполяции кубическими сплайнами, составление алгоритма и программного модуля. Описание тестовых примеров. Достоинства и недостатки метода сплайн-интерполяции.

    курсовая работа [195,1 K], добавлен 08.06.2013

  • Роль многочленов Чебышева в теории приближений и их использование в качестве узлов при интерполяции алгебраическими многочленами. Преимущества разложения функции по полиномам Чебышева. Разработка программы численного расчета решения подобной задачи.

    контрольная работа [184,2 K], добавлен 13.05.2014

  • Иоганн Карл Фридрих Гаусс - величайший математик всех времен. Интерполяционные формулы Гаусса, дающие приближенное выражение функции y=f(x) при помощи интерполяции. Области применение формул Гаусса. Основные недостатки интерполяционных формул Ньютона.

    контрольная работа [207,3 K], добавлен 06.12.2014

  • Осуществление интерполяции с помощью полинома Ньютона. Уточнение значения корня на заданном интервале тремя итерациями и нахождение погрешности вычисления. Применение методов Ньютона, Сампсона и Эйлера при решении задач. Вычисление производной функции.

    контрольная работа [155,2 K], добавлен 02.06.2011

  • Основные понятия и некоторые классические теоремы теории интерполяции. Определение общих свойств пространств Лоренца. Понятие нормы и спектрального радиуса неотрицательных матриц. Исследование интерполяционных признаков семейств конечномерных пространств.

    курсовая работа [289,9 K], добавлен 12.01.2011

  • Построить интерполяционный многочлен Ньютона. Начертить график и отметить на нем узлы интерполяции. Построить интерполяционный многочлен Лагранжа. Выполнить интерполяцию сплайнами третьей степени.

    лабораторная работа [70,8 K], добавлен 06.02.2004

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.