|
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://num-anal.srcc.msu.ru/lib_na/cat/i/iis2r.htm
Дата изменения: Mon Sep 22 15:43:26 2014 Дата индексирования: Sun Apr 10 00:17:50 2016 Кодировка: Windows-1251 |
|
Текст подпрограммы и версий ( Фортран ) iis2r.zip |
Тексты тестовых примеров ( Фортран ) tiis2r.zip |
|
Текст подпрограммы и версий ( Си ) iis2r_c.zip |
Тексты тестовых примеров ( Си ) tiis2r_c.zip |
|
Текст подпрограммы и версий ( Паскаль ) iis2r_p.zip |
Тексты тестовых примеров ( Паскаль ) tiis2r_p.zip |
Вычисление значения кусочно - полиномиальной функции в заданной точке.
Пусть кусочно - полиномиальная функция задана следующим образом: на каждом полуинтервале (xk, xk + 1), k = 0, 1, ..., N - 1, неравномерной сетки x0 < x1 < x2 < ... < xN она является полиномом степени M
Ak1 (x - xk)M + Ak2 (x - xk)M - 1 + ... + Ak M (x - xk) + Ak M + 1
с известными коэффициентами Ak1, Ak2, ..., Ak M + 1. Подпрограмма вычисляет значения этой кусочно - полиномиальной функции в заданной точке xt : x0 < xt < xN.
SUBROUTINE I IS2R (XT, N, X, M, A, YT, IERR)
Параметры
| XT - | заданная точка xt, в которой ищется значение кусочно - полиномиальной функции (тип: вещественный); |
| N - | заданное число полуинтервалов, N ≥ 2 (тип: целый); |
| X - | вещественный одномерный массив размерности N + 1, в котоpом заданы узлы сетки xk; |
| M - | заданная степень кусочно - полиномиальной функции (тип: целый); |
| A - | вещественный двумерный массив размера N * (M + 1), в котоpом задаются на соответствующих местах коэффициенты Ai j кусочно - полиномиальной функции в порядке убывания степеней; |
| YT - | вещественная переменная, содержащая вычисленное значение кусочно - полиномиальной функции в заданной точке xt; |
| IERR - | целая переменная, служащая для сообщения об ошибках, обнаруженных в ходе работы подпрограммы; при этом: |
| IERR=65 - | когда заданное значение XT не принадлежит полуинтервалу (x0, xN]. |
Версии: нет
Вызываемые подпрограммы
| UTI I10 - | подпрограмма выдачи диагностических сообщений при работе подпрограммы I IS2R. |
Замечания по использованию
| Коэффициенты кусочно - полиномиальной функции помещаются в матрице A по столбцам. |
На сетке xk = (k - 1) * π / 4, k = 1, ..., 5, заданы значения коэффициентов интерполяционного полинома.
DIMENSION X(5), A(4, 6)
DATA XT /0.134/
DATA X /(0., 0.7854, 1.5708, 2.3562, 3.1416/
DATA A(1, 1), A(2, 1), A(3, 1), A(4, 1) /0.0115, 0.0028, -0.0036, 0.0004/
DATA A(1, 2), A(2, 2), A(3, 2), A(4, 2) /-0.0075, 0.0301, 0.0467, 0.0167/
DATA A(1, 3), A(2, 3), A(3, 3), A(4, 3) /-0.1624, -0.1152, -0.0026, 0.122/
DATA A(1, 4), A(2, 4), A(3, 4), A(4, 4) /0., -0.355, -0.5005, -0.3512/
DATA A(1, 5), A(2, 5), A(3, 5), A(4, 5) /1., 0.7071, 0., -0.7071/
DATA A(1, 6), A(2, 6), A(3, 6), A(4, 6) /0., 0.7071, 1., 0.7071/
N = 4
M = 5
CALL IIS2R (XT, N, X, M, A, YT, IERR)
Результат: YT = 0.1336