ОБЩИЕ СВЕДЕНИЯ
Программа написана на языке программирования системы Scilab и именуется «Интерполяция функций по методу Стирлинга и Бесселя». Для нормального функционирования программы необходимо следующее программное обеспечение:
· операционная система не ниже Windows XP;
· инженерный пакет Scilab, версия не ниже 3.3.2
ФУНКЦИОНАЛЬНОЕ НАЗНАЧЕНИЕ
Программа предназначена для решения математических задач по интерполяции таблично заданной функций по методу Стирлинга и Бесселя. Файл-функция осуществляет расчет заданной функции в новых точках. С помощью GUI можно строить графики заданной и интерполированной функций, осуществляя ввод с помощью клавиатуры и мыши, загружать файлы с начальными значениями, сохранять данные и результаты работы файлы таблиц Exсel.
Функциональные ограничения: в поля ввода заданных точек можно ввести не более 50 значений.
ОПИСАНИЕ ПРОГРАММЫ
Описание метода
Конечная разность — математический термин, широко применяющийся в методах вычисления при интерполировании. Конечная разность обозначается как: .
Интерполяционные формулы Стирлинга и Бесселя — формулы в вычислительной математике, применяющиеся для полиномиального интерполирования. В этих формулах используются центральные разности, связанные с конечными разностями следующими соотношениями:
(1)
(2)
Если узлы интерполяции заданны с постоянным шагом, то есть:
(3)
где — шаг, и их число нечетно, то для интерполяции функции можно применить интерполяционный многочлен Стирлинга:
, (4)
Где:
(5)
Если узлы интерполяции заданны с постоянным шагом, то есть:
, (6)
где — шаг, и их число четно, то для интерполяции функции можно применить интерполяционный многочлен Бесселя:
(7)
3.2 Описание логической структуры
Описание логической структуры функциональной части программы представлено схемой алгоритма функции inter():
Передаются данные: X – матрица, содержащая заданные аргументы функции Y- матрица, содержащая значения заданных аргументов flag – переменная, содержащая способ интерполяции X_inp- массив, содержащий точки для интерполяции |
X_out- матрица выходных значений аргумента |
Условие выбора интерполяционной формулы |
n=size(X); N=n(2); Размер матрицы X m=size(X_inp); M=m(2); Размер матрицы X_inp |
Y_out[1][ i]=0; X_out[i]=X_inp[i] |
Нацало цикла для расчета Yout выходного значения функции |
L2=L2*((X_inp(i)-X(k))/(X(j)-X(k))); |
Начало цикла для расчета первой части полинома до элемента (j-1) |
Конец цикла для расчета первой части полинома до элемента (j-1) |
L1=L1*((X_inp(i)-X(k))/(X(j)-X(k))); |
L2=L2*((X_inp(i)-X(k))/(X(j)-X(k))); |
Начало цикла для расчета второй части полинома после элемента элемента (j-1) |
Конец цикла для расчета второй части полинома после элемента элемента (j-1) |
Y_out(1,i)=Y_out(1,i)+ +L1*L2*Y(j) |
Конец цикла для расчета Yout выходного значения функции |
Циклы 6,7,8 для подсчета матрицы конечных разностей d |
Конец циклов для подсчета матрицы конечных разностей d |
d(j,i)=d(j+1, i-1)-d(j, i-1); |
Циклы 9,10, 11 для расчета Yout выходного значения функции |
k(i, ii)=k(i, ii)*(X_inp(i)-X(jj)); |
Y_out(1, i)=Y_out(1, i)+(d(1, ii)*k(i, ii)/(factorial(ii)*((X(2)-X(1))^ii))); |
Конец циклов для расчета Yout выходного значения функции |
Руководство пользователя
Руководство пользователя для файл-функции
Файл-функция inter() запускается из Scilab Console, для этого нужно ввести строку [Yint]=inter(X, Y, Xint, flag). Входные и выходные данные функции подробно описаны в руководстве программиста для файл-функции.
Чтобы получить справочную информацию о работе, входных и выходных параметрах данной функции пользователю нужно в Scilab Console ввести строку: «help inter», после чего в этом же окне появятся справочные данные.