Svoboda | Graniru | BBC Russia | Golosameriki | Facebook
Главная > Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

Распознанный текст, спецсимволы и формулы могут содержать ошибки, поэтому с корректным вариантом рекомендуем ознакомиться на отсканированных изображениях учебника выше

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

4.4. Базис в виде ортогональных полиномов дискретной переменней

Построим систему базисных функций так, чтобы обращались в нуль скалярные произведения на дискретном множестве узловых точек (4.5), тогда матрица рама (4.4) будет диагональной, что позволит отказаться от использования процедур численного решения системы нормальных уравнений.

В зависимости от распределения погрешности обрабатываемых данных можно построить полиномы дискретной переменной, ортогональные с соответствующими дискретными весовыми функциями Из классических ортогональных полиномов дискретной переменной известны полиномы Хана, Мейкснера, Кравчука и Шарлье [48].

Рассмотрим алгоритм [49] построения полиномов Чебышева дискретной переменной, которые являются важным частным случаем полиномов Хана с единичной весовой функцией Полином нулевой степени выберем единичным

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

где коэффициент определим из условия ортогональности

Запишем условие (4.16) в развернутом виде

откуда получим

Полином второй степени также представим в общем виде с неопределенными коэффициентами

которые найдем из двух условий ортогональности:

Аналогичным способом запишем ортогональный полином степени к

Для полиномов Чебышева дискретной переменной установлена двухслойная рекуррентная формула [49], по которой можно вычислить полином любой степени через начальные полиномы (4.14) и (4.15),

где

Аппроксимирующая функция определяется, как и ранее (4.2), в виде линейной комбинации базисных функций, в качестве которых теперь выбраны полиномы Чебышева дискретной переменной

Вследствие диагональности матрицы Грама коэффициенты линейной комбинации (4.20) определяются как частные от деления правых частей (4.6) системы нормальных уравнений на диагональные элементы этой матрицы

При увеличении количества базисных функций в сумме (4.20) не придется пересчитывать коэффициенты определенные с меньшим значением

Программу, реализующую рассмотренный вариант МНК, строим по схеме рис. 4.3.

Рис. 4.3. Блок-схема программы обработки данных методом наименьших квадратов с ортогональным базисом

В основном блоке программы (строки 10-99) описаны массивы для узлов и значений аппроксимируемой зависимости, для значений полиномов Чебышева дискретной переменной степеней к - 1 и к, и С - для коэффициентов (4.19) рекуррентной формулы (4.18) и коэффициентов (4.21) аппроксимирующей функции (4.20). В диалоговом режиме вводятся: наибольший номер узла и наибольшая степень полинома границы и шаг изменения аргумента для вычисления аппроксимирующей функции Затем в соответствии с блок-схемой рис. 4.3 обращаемся к формированию таблицы узлов и значений исходной функции в них (строка 30). Коэффициенты вычисляются путем обращения к соответствующей подпрограмме из строки 40. В цикле по (строки 50-90) вычисляем и выводим на дисплей значения аппроксимирующей функции

В блоке 1 (строки 100-190) реализован ввод в диалоговом режиме узлов и значений аппроксимируемой функции.

В блоке 2 (строки 200-299) в цикле (строка 200) инициализируются значения полиномов Чебышева младших степеней для каждого узла Причем, чтобы рекуррентную формулу (4.18) применить при полагаем тогда из общей формулы получим выражение (4.15) для Переменная инициализируемая в строке 210, введена для запоминания знаменателя коэффициента который совпадает с числителем коэффициента В строках 220-290 реализованы формулы (4.18), (4.19) и (4.21). Чтобы избежать вычисления полинома и коэффициентов использован условный оператор в строке 250.

Подпрограмма вычисления аппроксимирующей функции (4.20) при аргументе для полиномов Чебышева вновь использует рекуррентную формулу (4.18), но теперь уже с известными коэффициентами В строке 300 инициализируются полиномы Чебышева для них используются простые переменные здесь же с учетом, что инициализируется начальное значение суммы (4.20) (переменная В цикле (строки 310-320) вычисляются необходимые базисные функции и накапливается их линейная комбинация (4.20).

В программах коэффициенты вычисляются в подпрограммме имеющей входные параметры и выходные - Массивы для размещения полиномов Чебышева И описаны как локальные в этой подпрограмме. Аппроксимирующая функция (4.20) вычисляется в подпрограмме имеющей входные параметры и выходной параметр где размещается значение функции

Для тестирования программ 4.4 можно использовать пример

(см. скан)

(см. скан)

(см. скан)

(см. скан)

Categories

1
Оглавление
[email protected]