Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Глава2 (17-57).doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
924.67 Кб
Скачать

2 Аппроксимация функций

2.1 Понятие аппроксимации

Пусть дана функция y=f(x), причем явная связь между y и x или неизвестна, или эта зависимость содержит трудно вычисляемые выражения, так что ее использование в практических расчетах затруднительно.

В таких случаях задают эту связь в виде некоторой таблицы xi ,yi, т.е. дискретному множеству значений аргумента хi ставят в соответствие множество значений функции уi (i=0, 1, ... , n). Отметим, что функциональная зависимость может сразу быть задана в виде таблицы, например, результаты эксперимента.

Встает проблема – как определить значения функции для промежуточных значений аргумента. Для этого надо данную функцию f(x) приближенно заменить (приблизить, аппроксимировать1) некоторой другой функцией (х) так, чтобы отклонение (х) от f(x) в заданной области было наименьшим, а вид и вычисление функции (х) были более простыми.

Функция f(x) называется аппроксимируемой, а (х) – аппроксимирующей. Часто в качестве аппроксимирующей функции выбирают многочлен:

(х)= Pn(x)= а0 + а1 х+ а2 х2 + ... + аn xn .

Если приближение строится на заданном дискретном множестве точек хi (таблица), тогда аппроксимация называется точечной (например, интерполирование). Приближение можно также строить и на непрерывном множестве точек (отрезок [a, b]), тогда аппроксимация называется непрерывной или интегральной.

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

1) аппроксимация многочленами Тейлора (рядами);

2) интерполирование;

3) среднеквадратичная аппроксимация;

Все эти приближения реализуются алгебраическими многочленами (полиномами).

2.2 Вычисление значений полиномов по схеме горнера

После построения аппроксимирующего полинома наступает этап работы с ним. И здесь важно уметь как можно экономичнее вычислять значение такого полинома для различных значений аргумента x= .

На первый взгляд, наиболее естественный способ – провести n–1 умножений, найдя степени . Затем, выполнив еще n умножений и n сложений, получить Pn(). Итого 3n–1 действий.

Другой способ, называемый схемой Горнера, состоит в перезаписи полинома в виде

Pn(x) = a0 + x( a1 + x(a2 + ... + x(an–2 + x(an–1 + xan )) ... ) .

Эта запись легко программируется. Поиск Pn() организуется следующим способом:

bn = an ; bn–1 = an–1 + bn ; bn–2 = an–2 + bn–1 ; ...

b1 = a1 + b2 ; b0 = a0 + b1 = Pn ( ).

Этот способ реализуется за n умножений и n сложений, итого 2n действий1.

Он весьма экономичен при реализации на ЭВМ, т.к. в памяти необходимо хранить только коэффициенты ак и одну промежуточную величину b.

Схема счета вручную очень наглядна и имеет вид:

аn an–1 an–2 ... a0  

+ bn bn–1 ... b1

bn = an bn–1 bn–2 ... b0 = Pn ().

Пример 1. Вычислить P3 = 6x3 47x2 +12x +27 при х=8.

6 -47 12 27 8  

+ 48 8 160

6 1 20 187 = P3(8).

Схему Горнера удобно применять для проведения замены х = у +  в полиномах Pn(x).

Известно, что всегда можно полином n-ой степени поделить на бином х– , в общем случае с остатком, т.е.

Pn(x) = (bn xn–1 + bn–1 xn–2 + ... +b1)(x – ) + b0,

где, очевидно, b0 = Pn() .

C другой стороны, если произвести в Pn(x) замену x = y + , то, раскрыв скобки и сгруппировав подобные, получим:

Pn(y+) = An yn + An–1 yn–1 + ... + A1 y + A0 =

= (An yn–1 + An–1 yn–2 + ... + A1)y + A0.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]