Амосов А.А., Дубинский В.А., Копченова Н.В. Вычислительные методы для инженеров (1994) (1095853), страница 56
Текст из файла (страница 56)
Особый класс задач составляют так называемые задами дискретпиов мини византии. В этих задачах множество Х, на котором минимизируется функция ~ является конечным или счетным. Часто Х вЂ” множество точек с целочисленными координатами, удовлетворяющими некоторым ограничениям. Методы решения таких задач описаны, например, в [76].
5. Авторы рекомендуют обратить внимание на книгу [24], в особенности на ее последние главы (" Моделирование", "Практические вопросы" и "Вопросы и ответы"). В них содержится большое число весьма интересных замечаний, полезных рекомендаций и советов для широкого круга специалистов, заинтересованных в решении практических задач минимизации.
Г*ава 11 ПРИБЛИЖЕНИЕ ФУНКЦИЙ И СМЕЖНЫЕ ВОПРОСЫ .В этой главе рассматриваются наиболее важные и часто встречающиеся в приложениях методы приближения функций одной переменной. Значительное внимание уделено интерполяции, причем рассматривается интерполяция не только алгебраическими многочленами, но и тригонометрическими многочленами, а также интерполяция сплайнами.
Довольно подробно обсуждается метод наименьших квадратов, широко используемый в практике инженерных расчетов. Дается понятие о наилучшем равномерном приближении и дробно-рациональных аппроксимапиях. В главу включены также некоторые вопросы вычислительной математики, имеющие непосредственное отношение к методам аппроксимации ~приближения) функций, Это 'конечные и разделенные разности, многочлены Чебышева, быстрое дискретное преобразование Фурье. ~ 11.1. Постановка задачи приближения функций Вычисление значения функции у = 1(х) — одна из тех задач, с которой постоянно на практике приходится сталкиваться.
Естественно, что при решении на ЭВМ серьезных задач желательно иметь быстрые и надежные алгоритмы вычисления значений используемых функций. Для элементарных, а также для основных специальных функций такие алгоритмы разработаны, реализованы в виде стандартных программ и включены в математическое обеспечение ЭВМ. Однако в расчетах нередко используются и другие функции, непосредственное вычисление которых затруднено либо приводит к слишком большим затратам машинного времени. Укажем на некоторые типичные ситуации.
1. Функция 1 задана таблицей своих значений: у; = ~(хв), (в = О, 1, 2, ..., и), 292 а вычисления производятся в точках х, не совпадающих с табличными. 2. Непосредственное вычисление значения у = ~(х) связано с проведением сложных расчетов и приводит к значительным затратам машинного времени, которые могут оказаться неприемлемыми, если функция ~вычисляется многократно. 3.
При заданном значении х значение ~(х) может быть найдено из эксперимента. Ясно, что такой способ "вычисления" в большинстве случаев нельзя использовать в вычислительных алгоритмах, так как он связан с необходимостью прерывания вычислительного процесса для проведения эксперимента1. В этой ситуации экспериментальные данные получают до начала вычислений на ЭВМ.
Нередко они представляют собой таблицу типа (11.1) с тем отличием, что табличные значения у,*. отличаются от "истинных" значений уь так как заведомо содержат ошибки эксперимента. Возникающие проблемы нередко удается решить следующим образом. Функцию 1(х) приближенно заменяют другой функцией у (х), вычисляемые значения которой и принимают за приближенные значения функции ~ Конечно, такая замена оправдана лишь тогда, когда значения д (х) вычисляются быстро и надежно, а погрешность приближения ~(х) — у (х) достаточно мала.
Обсудим кратко некоторые вопросы, с которыми в каждом конкретном случае приходится сталкиваться при выборе постановки задачи приближения и метода ее решения. 1о. Необходимо решить, какую информацию о функции ~ можно использовать как входные данные для вычисления приближения у. Например, часто известна или может быть получена таблица значений функции вида (11.1), а иногда — и таблица ее производных. В некоторых случаях можно использовать информацию о значениях функции на всем отрезке [а, $]. 2о. Полезно иметь некоторую дополнительную априорную информацию об аппроксимируемой функции. Часто она бывает качественного характера, например известно, что функция ~ "достаточно гладкая" (" плавно меняющаяся"), периодическая, монотонная, четная и т.
п. Иногда удается получить некоторые количественные характеристики функции ~ например, бывают известны верхние оценки для максимума 1 Правда, в некоторых алгоритмах такое прерывание естественно, например если ЭВМ используется для управления технологическим процессом, сложной технической системой или включена в систему обработки и планирования физического эксперимента. модуля некоторых ее производных, величина периода, оценка уровня погрешности в заданных значениях. Зо. Знание свойств функции /позволяет осознанно выбирать класс С аппроксимирующих функций.
Часто такой класс представляет собой параметрическое семейство функций вида у = у (х, а) = у (х, ао, ап ... а ) и выбор конкретной аппроксимирующей функции у осуществляется с помощью выбора параметров ао ап "., аа. Широко используются классы функций вида Ф (х) = аорто(х) + аг р1(х) + " + ааааа(х), (11.2) являющихся линейными комбинациями фиксированного набора некоторых базисных функций ~ро(х), уг(х), ..., ра(х).
Функцию Фа(х) часто называют обобщенным иногочленоа по системе функций ~ро, ~р1, ..., ра, а число нг — его степенью. Если в качестве базисных функций берутся степенные функции уг(х) = хх, то возникает задача приближения алгебраическими много- членами Ра(х) = ао+ ага+ " + аах ° (11.3) Отметим, что методы приближения функций алгебраическими много- членами играют важную роль в численном анализе и наиболее глубоко разработаны. Одна из причин этого состоит в том, что многочлены (11.3) легко вычисляются, без труда дифференцируются и интегрируются. Тригонометрические многочлены Яа(х) = ао+ Е (аь сов 2хЬ'+ А в1п 2хЬ), 1~Хнг/2 (11.4) Яа(х) = Е аь ехр (2хйх), — ~жк /г (11.5) что соответствует выбору базисных функций юг(х) = ехр (2хйх), -гп/2 < Й ~ пг/2.
Используются также и некоторые нелинейные комбинации функций, отличные от (11.2). Например, в ряде случаев эффективным является использование класса дробно-рациональных функций 294 часто используемые для аппроксимации периодических на отрезке [О, Ц функций, также могут быть записаны в виде (11.2), если в качестве базисных функций выбрать функции уо(х) = 1, ~рг(х) = сов 2хх, р2(х) = вш 2тх; срз(х) = сов 4ггх, 1рг(х) = вш 4хх, .... Используя формулу Эйлера ехр (гу) = сов у + г а(п у, можно'записать тригонометрический многочлен (11.4) в виде ао + а>х + ... + а»>х4В 1+ Ьх+ ... + Ь|, Выбор класса 6 аппроксимирующих функций осуществляется с учетом того, насколько хорошо может быть приближена функция 1 функциями из этого класса.
4о. Необходим критерий выбора в классе С конкретной аппроксимирующей функции д, являющейся в смысле этого критерия наилучшим приближением к 1 Например, требование совпадения функции д с функцией 1 в некоторых фиксированных точках приводит к задаче интерполяции. Другой распространенный критерий — требование минимизации среднеквадратичного уклонения — лежит в основе метода наименьших квадратов. Существует большое число других критериев, естественных в конкретных прикладных проблемах. 5о. Важно понимать, что решение указанных выше вопросов тесно связано с тем, как мы собираемся использовать приближение д н какая точность нам нужна.
3 а м е ч а н и е. Задачу выбора в классе 0 конкретной приближающей функции можно рассматривать как задачу идентификации (см. $1.1), если интерпретировать функцию у = д (х, а) как математическую модель реальной функциональной зависимости у = 1 (х). $11.2. Интерполяция обобщенными многочленами 1. Постановка згщачи интерполяции. Пусть в точках хо, хЪ ..., х„, расположенных на отрезке [а, о1 и попарно различных, задана таблица (11.1) значений некоторой функции 1 Задача инпзерполяиии состоит в построении функции д, удовлетворяющей условию д (х;) = у; (з = О, 1, ...> п). (11.6) Другими словами, ставится задача о построении функции д, график которой проходит через заданные точки (х„у,) (рис.
11.1). Указанный способ приближения функций принято называть иншерполяиией (или интерполированием), а точки х; узлами иншерполлиии. Нетрудно видеть, что выбор функции д неоднозначен, так как по заданной таблице можно построить бесконечно много интерполирующих функ- Рис. 11.1 295 ций. На практике, как правило, функцию у выбирают из достаточно узкого класса С функций, в котором единственность выбора гарантируется.