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

Цель работы

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

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

С помощью алгоритма Ремеза найти многочлены наилучшего равномерного приближения 5-й и 10-й степени для функции на отрезке . Значения , , , , берутся из п/р №2.

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

Реализовать функцию f() для вычисления значений в функции .

Реализовать функцию remez(), выполняющая алгоритм Ремеза.

Построить полиномы 5-ой и 10-ой степени. Для полинома 5-ой степени построить кривые на графике и указать их вид для 1-ой, 2-ой, 3-ей, 4-ой, 6-ой и последней итерации, а для полинома 10-ой степени -- для 1-ой, 2-ой, 3-ей, 5-ой, 7-ой, 10-ой и последней итерации. Для сравнения полиномы выводить на графике вместе с функцией .

Для каждого из полиномов заполнить таблицу ниже и сделать выводы (здесь -- уровень квазиальтернанса; -- глобальный максимум погрешности; -- точность выравнивания; -- номер той точки квазиальтернанса, за которой идёт точка максимума):

Номер шага	Значение	Значение	Значение	Значение
1
2
...

Примечание: коэффициенты многочлена необходимо выводить в формате long g; все остальные значения -- в формате short g.

Дополнительное необязательное задание

Оценить фактическую точность выравнивания. Формально мы добиваемся исчерпывания машинной точности, но максимумы ищутся лишь по точкам графиков. Предлагается для каждой точки квазиальтернанса, за исключением совпадающих с концами отрезка (если такие есть), построить квадратичный интерполяционный многочлен с шагом графика для погрешности и найти максимум его модуля. Хорошую оценку фактической точности выравнивания будет давать отношение минимального из этих максимумов к максимальному (включая значения на концах, если они входят в квазиальтернанс).