User Tools

Site Tools


Sidebar






Old

courses:computational_mathematics:prac4

This is an old revision of the document!


Практическая работа №4: Алгоритм Ремеза

Цель работы

Освоение и реализация алгоритма Ремеза для построения полиномов наилучшего равномерного приближения средствами GNU Octave.

Основные теоретические положения

Алгоритм Ремеза (алгоритм замены Ремеза) – это итеративный алгоритм равномерного аппроксимирования функций $ f \in C[a, b] $, основанный на теореме П. Л. Чебышёва об альтернансе. Предложен Е. Я. Ремезом в 1934 году.

Теоретической основой алгоритма Ремеза является следующая теорема:

Теорема. Для того, чтобы некоторый многочлен $ P^*(x) $ степени не выше $ n $ был многочленом, наименее уклоняющимся от $ f \in C[a,b] $, необходимо и достаточно, чтобы на $ [a,b] $ нашлась по крайней мере одна система из $ n + 2 $ точек $ x_i $, $ a \leqslant x_0 < x_1 < \dots < x_{n+1} \leqslant b $, в которых разность $ f(x) - P^*(x) $:

  1. поочерёдно принимает значения разных знаков,
  2. достигает по модулю наибольшего на $ [a,b] $ значения.

Такая система точек называется чебышёвским альтернансом.

Пусть $ E_n $ – величина наилучшего приближения функции $ f(x) $ многочленами степени $ n $. Оценку $ E_n $ снизу даёт следующая теорема:

Теорема Валле-Пуссена. Если для функции $ f \in C[a,b] $ некоторый многочлен $ P(x) $ степени $ n $ обладает тем свойством, что разность $ f(x) - P(x) $ на некоторой системе из $ n + 2 $ упорядоченных точек $ x_i $ принимает значения с чередующимися знаками, то \[E_n(f) \geqslant \min|f(x_i) - P(x_i)|.\]

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

С помощью алгоритма Ремеза найти многочлены наилучшего равномерного приближения 5-й и 10-й степени для функции $ f(x) = \cfrac A{x^2 + px + q} $ на отрезке $ [a, b] $. Значения $ a $, $ b $, $ A $, $ p $, $ q $ берутся из п/р №3.

Порядок выполнения работы

  1. Реализовать функцию f() для вычисления значений в функции $ f(x) $.
  2. Реализовать функцию remez(), выполняющая алгоритм Ремеза.
  3. Построить полиномы 5-ой и 10-ой степени. Для полинома 5-ой степени построить кривые на 1-ой, 2-ой, 3-ей, 4-ой, 6-ой и последней итерации, а для полинома 10-ой степени – 1-ой, 2-ой, 3-ей, 5-ой, 7-ой, 10-ой и последней итерации. Для сравнения полиномы выводить на графике вместе с функцией $ f(x) $.
  4. Для каждого из полиномов заполнить таблицу, сделать выводы:
Номер шага Значение $ \sigma $ Значение $ R_{\max} $ Значение $ \varepsilon $
1
2

Содержание отчёта

  • Цель работы.
  • Краткое изложение основных теоретических понятий.
  • Постановка задачи с кратким описанием порядка выполнения работы.
  • Графики интерполяционных многочленов и их вид.
  • Таблицы для оценки погрешности.
  • Общий вывод по проделанной работе.
  • Код программы.
courses/computational_mathematics/prac4.1611947825.txt.gz · Last modified: 2022/12/10 09:08 (external edit)