Главная > Разное > Кривые и поверхности на экране компьютера
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

1.1.8. Программная реализация

Описанный выше алгоритм построения интерполяционного кубического сплайна и вычисления его значений в произвольной точке реализован в виде подпрограммы Spline, написанной на языке Фортран:

(см. скан)

(см. скан)

(см. скан)

Обращение к программе имеет вид:

(см. скан)

Программа Spline обращается к подпрограмме решения системы линейных уравнений с трехдиагональной матрицей Progon3 (см. приложение А).

Перед обращением к программе Spline необходимо:

1) задать размерности массивов не забывая, что размерности массивов на единицу больше размерностей массивов

2) присвоить фактические значения элементам массивов х и у и переменным при первом обращении к программе, при повторных обращениях).

Пример. Построим на отрезке равномерную сетку из 21 узла и вычислим значения функции в этих узлах. По этим данным построим интерполяционный кубический сплайн, удовлетворяющий граничным условиям 1-го типа, и сравним значения заданной функции и ее двух первых производных со значениями построенного сплайна и двух его первых производных в точках

Программа для решения этой задачи может иметь следующий

(см. скан)

Вычисления по этой программе привели к следующим результатам:

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

Следующая программа строит интерполяционный сплайн, удовлетворяющий граничным условиям 2-го типа,

(см. скан)

(см. скан)

Вычисления по этой программе привели к следующим результатам:

Максимум вычислялся на множестве точек из предыдущего примера.

Если требуется по тому же массиву данных построить интерполяционный сплайн, удовлетворяющий граничным условиям 3-го типа, то можно воспользоваться программой, текст которой приведен ниже.

(см. скан)

(см. скан)

Вычисления по этой программе привели к следующим результатам:

Максимум вычислялся на множестве точек из предыдущего примера.

Следующая программа строит и тестирует интерполяционный сплайн, удовлетворяющий граничным условиям 4-го типа.

(см. скан)

(см. скан)

Вычисления по этой программе привели к следующим результатам:

Максимум вычислялся на множестве точек из основного примера.

Текст профаммы Spline находится в файле spline.for в поддиректории INTERPOL на дискете, которую можно приобрести в издательстве "Диалог-МИФИ". В эту же поддиректорию помещены файлы, содержащие примеры применения программы Spline при других граничных условиях. Подробную информацию об именах этих файлов и их содержании можно найти в файле readme.txt из директории SPLINES этой дискеты и в приложении В нашей книги.

<< Предыдущий параграф Следующий параграф >>
Оглавление