Ознакомление с методикой приближенного представления интерполяционного полинома и способами оценивания погрешностей интерполяции

Страницы работы

Содержание работы

МО РФ

Новосибирский Государственный Технический Университет

Лабораторная работа №1

по Вычислительной математике

Интерполирование функции

Выполнили:                                                               Преподаватель:

Ильин М.Э.                                                                         Чикильдин Г.П.  

Аникин А.С.                                                                      

Кайгородов Ю.В.

Новосибирск 2004


Цель работы:

Ознакомиться с методикой приближенного представления интерполяционного полинома и способами оценивания погрешностей интерполяции.

Постановка задачи:

Вычислить приближенные значения функции y=f(x), xÎ[a,b] с шагом ∆x (∆x=0,1) посредством интерполяционного полинома Pn=(x) (n=2,3,4), определенного через yi=f(xi) в узлах интерполяции xi, iÎ[1,N] (N=3,4,5) с шагом h=(b-a)/(N-1) – const на интервале [a,b]. Оценить погрешности интерполирования функции y=f(x) на интервале [a,b] исследовать влияния количество узлов N (порядка n) на точность интерполирования.

Дана функция     y=exsin(x)

на интервале        [0.8 ,4.4]

Формула интерполяционного полинома

Pn(x) = a0 + a1x + a2x2 + … + anxn
Листинг 1.

Степень полинома 2-4

real x(10),y(10), u(10,10), v(10), x1(10), e(10), dx, fx, xi

      real pn(10),emo,eso,sum,eee(100)

      integer k,n1,j,k1,n

      real a,b,h

      write (*,10)

  10  format (/,5x,'vvedite kolichestvo uzlov',/)

      read *,n

      n1=n-1

      a=0.8

      b=4.4

      dx=0.1

      h=(b-a)/n1

      do 3 k=1, n

      x(k)=a+(k-1)*h

3     y(k)=exp(-x(k))*(sin(x(k)))

      call n1ysau (n,x,y,u,v)

      call n1ygau (u,v,x1,n)

      k1=(b-a)/dx+1

      write (1, 1005)

      do 20 j=1,n

  20  write (1,1000) x(j), y(j)

 1000 format (11x, f9.6, 4x, f9.6)

      write (1, 1010) n1

      write (1, *) '    koefficienti polinoma'

      do 21 j=1,n

  21  write (1, 1020) (x1(j))

      write (1, 1030)

      do 5 k=1,k1

      xi= a+(k-1)*dx

      fx= exp(-xi)*sin(xi)

      if (n.eq.4) pn(k)=x1(1)+x1(2)*xi+x1(3)*xi*xi+x1(4)*xi*xi*xi

      if (n.eq.3) pn(k)=x1(1)+x1(2)*xi+x1(3)*xi*xi

      if (n.eq.5) pn(k)=x1(1)+x1(2)*xi+x1(3)*xi**2+x1(4)*xi**3

     * +x1(5)*xi**4

      eee(k)= abs(fx-pn(k))

   5  write (1, 1040) k, xi, fx, pn(k), eee(k)

      call n1yeee(y,pn,n,e,em,es,ep,emo,eso,epo)

      write (1, 1045) emo, eso

 1045 format (5x, 'pogreshnosti: Emo', e11.4, /,7x,'Eso=',3x,E11.4)

 1005 format (/,10x,'interpolirovanie vedetsya po table',/

     * /, 3x, '***', 8x, 'X', 9x, 'Y=f(x)', 5x, '***',/)

 1010 format (/,'Stepen polinoma',i5)

 1020 format (e11.4, 2x)

 1030 format (/, 6x, 'k', 3x, 'x',8x, 'f(x)',5x, 'Pn(x)',4x, 'E(x)')

 1040 format ( 5x, i2, 2x, f7.4, 2x, f7.4, 2x, f7.4, 2x, f7.4)

  200 format (/,/,5x, f5.2)

  300 format (/,5x,'x= ',(5x,f8.6))

  310 format (/,5x,'y= ',(5x,f8.6))

  320 format (/,5x,'ai= ',(5x,f8.6))

  400 format (/,3(5x, f10.6))

      stop

      end

Листинг 2.

Файл результата для 2x узлов полинома степени 1.

          interpolirovanie vedetsya po table

   ***        X         Y=f(x)     ***

            0.800000     0.322329

            4.400000    -0.011683

Stepen polinoma    1

     koefficienti polinoma

 0.3966E+00 

-0.9278E-01 

      k   x        f(x)     Pn(x)    E(x)

      1   0.8000   0.3223   0.0000   0.3223

      2   0.9000   0.3185   0.0000   0.3185

      3   1.0000   0.3096   0.0000   0.3096

      4   1.1000   0.2967   0.0000   0.2967

      5   1.2000   0.2807   0.0000   0.2807

      6   1.3000   0.2626   0.0000   0.2626

      7   1.4000   0.2430   0.0000   0.2430

      8   1.5000   0.2226   0.0000   0.2226

      9   1.6000   0.2018   0.0000   0.2018

     10   1.7000   0.1812   0.0000   0.1812

     11   1.8000   0.1610   0.3223   0.1614

     12   1.9000   0.1415   0.3185   0.1769

     13   2.0000   0.1231   0.3096   0.1865

     14   2.1000   0.1057   0.2967   0.1910

     15   2.2000   0.0896   0.2807   0.1911

     16   2.3000   0.0748   0.2626   0.1878

     17   2.4000   0.0613   0.2430   0.1817

     18   2.5000   0.0491   0.2226   0.1734

     19   2.6000   0.0383   0.2018   0.1635

     20   2.7000   0.0287   0.1812   0.1524

     21   2.8000   0.0204   0.1614   0.1410

     22   2.9000   0.0132   0.1769   0.1638

     23   3.0000   0.0070   0.1865   0.1795

     24   3.1000   0.0019   0.1910   0.1891

     25   3.2000  -0.0024   0.1911   0.1935

     26   3.3000  -0.0058   0.1878   0.1937

     27   3.4000  -0.0085   0.1817   0.1903

     28   3.5000  -0.0106   0.1734   0.1840

     29   3.6000  -0.0121   0.1635   0.1756

     30   3.7000  -0.0131   0.1524   0.1655

     31   3.8000  -0.0137   0.1410   0.1547

     32   3.9000  -0.0139   0.1638   0.1777

     33   4.0000  -0.0139   0.1795   0.1933

Похожие материалы

Информация о работе

Тип:
Отчеты по лабораторным работам
Размер файла:
322 Kb
Скачали:
0