Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






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






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

Приближение функций

Задание 1. По заданной таблице значений функции составить формулу интерполяционного многочлена Лагранжа. Построить его график.

x        
y        

 

 

 

Задание 2. Вычислить одно значение заданной функции для промежуточного значения аргумента с помощью интерполяционного многочлена Лагранжа и оценить погрешность интерполяции. Этот же результат получить с помощью программы для компьютера.

Задана функция , а также известны значения функции

 

x y
1, 2 0, 3486
1, 9 1, 0537
3, 3 1, 7844
4, 7 2, 2103
5, 4 2, 3712
6, 8 2, 6322
7, 5 2, 7411

 

А. Используя метод ручного вычисления заполнена следующая таблица:

 

3, 5 1, 2 1, 9 3, 3 4, 7 5, 4 6, 8 7, 5
  2, 3 -0, 7 -2, 1 -3, 5 -4, 2 -5, 6 -6, 3 1753, 441 0, 3486 0, 000199
  0, 7 1, 6 -1, 4 -2, 8 -3, 5 -4, 9 -5, 6 -421, 654 1, 0537 -0, 0025
  2, 1 1, 4 0, 2 -1, 4 -2, 1 -3, 5 -4, 2 25, 41218 1, 7844 0, 070218
  3, 5 2, 8 1, 4 -1, 2 -0, 7 -2, 1 -2, 8 67, 76582 2, 2103 0, 032617
  4, 2 3, 5 2, 1 0, 7 -1, 9 -1, 4 -2, 1 -120, 708 2, 3712 -0, 01964
  5, 6 4, 9 3, 5 2, 1 1, 4 -3, 3 -0, 7 652, 2461 2, 6322 0, 004036
  6, 3 5, 6 4, 2 2, 8 2, 1 0, 7 -4 -2439, 57 2, 7411 -0, 00112
                    0, 083803

 

Для нахождения окончательного результата сумма значений столбца умножается на произведение диагональных разностей:

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

Б. Далее составлена программа для компьютера на языке C# 4.5

результат выполнения

 

using System;

namespace lab4_2

{

class Program

{

static void Main()

{

int i, j, n=7;

double a=3.5, l, f;

double[] x = {1.2, 1.9, 3.3, 4.7, 5.4, 6.8, 7.5};

double[] y = {0.3486, 1.0537, 1.7844, 2.2103, 2.3712, 2.6322, 2.7411};

f = 0;

for(i=0; i< n-1; i++)

{

j = 0;

l = 1;

lebel1: if (i == j) j++;

if (j < = n-1)

{

l=l*(a-x[j])/(x[i]-x[j]);

j++;

goto lebel1;

}

 

l = y[i] * l;

f = f + l;

}

 

Console.Write(" При а = 3, 5 \nf(3, 5) = " + f);

Console.Read();

}

}

}

Результат выполнения программы в среде Microsoft Visual Studio 2012 express

 

Далее необходимо оценить погрешность интерполяции по формуле

где

;

производная (n+1) порядка

Далее необходимо найти производную 7 порядка от

; ;

 

n x f```````(x)
  1, 2 1140, 048529
  1, 9 31, 83077654
  3, 3 0, 456055226
  4, 7 0, 031170092
  5, 4 0, 010962358
  6, 8 0, 001954225
  7, 5 0, 000942736

 

7! = 5040

Погрешностью интерполяции в точке (или локальной погрешностью) называется модуль остатка интерполяции в этой точке

Исходя из оценки интерполяционной погрешности вычисленные значения находятся в допустимых пределах.

 

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

x        
y        

 

Используя формулы 4.52 стр. 226

и обозначения

Учитывая, что , составлена система уравнений для нахождения коэффициентов

 

 

 

 

 


 

 

 

;

Далее по формуле 4.51 стр. 226 вычислены коэффициенты

Далее по формуле 4.48 стр. 226 вычислены коэффициенты

 

Поскольку значения коэффициентов – значения функции из таблицы, то сплайн построен

 

 

Проверка результатов интерполирования путем вычисления значений сплайна в узловых точках показывает, что сплайн построен верно

 

 


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.012 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал