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

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

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

(см. скан)

(см. скан)

(см. скан)

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

Входные данные:

число узлов сетки по оси массив длины содержит узлы сетки по оси число узлов сетки по оси у; у - массив длины содержит узлы сетки по оси у;

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

- код типа граничных условий на прямых

массив длины элемент содержит значение частной производной по х в узлах для граничных условий типа ;

массив длины элемент содержит значение частной производной по х в узлах для граничных условий типа ;

код типа граничных условий на прямых - условия типа;

массив длины элемент содержит значение частной производной по у в узлах для граничных условий типа ;

массив длины элемент содержит значение частной производной по у в узлах для граничных условий типа ;

массив ддины 4, содержит значения смешанных производных в угловых точках сетки в случае граничных условий 1-го или 2-го типа;

рабочие массивы ддины рабочие массивы длины одномерные массивы длины содержат значения параметров сплайна;

код режима работы:

программа вычисляет параметры сплайна,

параметры сплайна известны; координаты точки, в которой вычисляются параметры сплайна.

Результат:

значение сплайна в точке с координатами

Чтобы показать, как пользоваться программой рассмотрим следующий пример.

Пример. Построим сетку из узлов в прямоугольнике

и вычислим значения функции в этих узлах.

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

Множество этих точек обозначим Q .

Для оценки качества интерполяции сравним значения сплайна и заданной функции на множестве

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

(см. скан)

(см. скан)

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

Для построения по тому же массиву данных интерполяционного сплайна, удовлетворяющего граничным условиям 2-го типа, можно воспользоваться следующей программой:

(см. скан)

(см. скан)

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

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

(см. скан)

(см. скан)

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

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

(см. скан)

(см. скан)

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

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

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