Общая задача интерполирования


В качестве базовых интерполяционных функций можно выбрать, по большому счету, любой их набор — главное, чтобы такие функции были независимы. Причем линейной независимости функций в обычном понимании этого термина в данном случае недостаточно. Предположим, что интерполяция выполняется по узлам хо,х1,...,х„. Количество базовых интерполяционных функций должно совпадать с количеством узловых точек. Пусть это будут функции. Чтобы функции могли использоваться в процессе интерполяции, они должны быть такими, чтобы любая их линейная комбинация имела на интервале интерполяции число корней (т.е. точек, где эта линейная комбинация обращаются в нуль) по крайней мере на единицу меньше, чем число базовых узлов. Такие системы функций еще называют системами Чебышева.

Интерполяционную функцию ищем в виде Fn(x) = a0<po(x) + a,<pt(x) + ... + a,<pn(x). Коэффициенты а, находятся из тех условий, что в узловых точках значения интерполяционной функции совпадают с табулированными значениями интерполируемой функции: Fll(xl) = yi. Таким образом, имеем систему п+1 уравнений относительно п+1 неизвестного коэффициента а,. Из этих уравнений коэффициенты определяются однозначно.

Ниже представлен код процедуры, с помощью которой можно выполнять интерполяцию разными базовыми функциями.

Параметрами процедуры Mylnt() являются список базовых точек А, по которым строится интерполяционная функция, а также оператор f (), который задает общий вид базовых интерполяционных функций.



Содержание раздела