- Фантастика и фэнтези
- Ироническое фэнтези
- Стимпанк
- Детективная фантастика
- Киберпанк
- Попаданцы
- LitRPG
- Космоопера
- Технофэнтези
- Городская фантастика
- Русское фэнтези
- Юмористическая фантастика
- Космическая фантастика
- Боевое фэнтези
- Эпическая фантастика
- Зарубежная фантастика
- Книги магов
- Мистика
- Разная фантастика
- Разное фэнтези
- Любовное фэнтези
- Романтическая фантастика
- Городское фентези
- Историческая фантастика
- Историческое фэнтези
- Социально-философская фантастика
- Сказочная фантастика
- Иностранное фэнтези
- Романтическое фэнтези
- Ироническая фантастика
- Ужасы и Мистика
- Постапокалипсис
- Героическая фантастика
- Фэнтези
- Научная Фантастика
- Социально-психологическая
- Альтернативная история
- Боевая фантастика
- Разная литература
- Пословицы, поговорки
- Шахматы
- Визуальные искусства
- Фанфик
- Авто и ПДД
- Военное
- Отраслевые издания
- Гиды, путеводители
- Зарубежная образовательная литература
- Военная история
- Цитаты из афоризмов
- Современная литература
- Великолепные истории
- Начинающие авторы
- Современная зарубежная литература
- Боевые искусства
- Изобразительное искусство, фотография
- Кино
- Литература 19 века
- Недвижимость
- Музыка, музыканты
- Готические новеллы
- Истории из жизни
- Культура и искусство
- Спецслужбы
- Зарубежная прикладная литература
- Музыка, танцы
- Подростковая литература
- Прочее
- Военная техника, оружие
- Газеты и журналы
- Периодические издания
- Домоводство, Дом и семья
- Любовные романы
- Экономическая литература
- Научные и научно-популярные книги
- О животных
- Биохимия
- Культурология
- Юриспруденция
- Политика
- Психотерапия
- Языкознание
- Научпоп
- Медицина
- Психология, личное
- Радиотехника
- Филология
- Педагогика
- Образовательная литература
- Деловая литература
- Физика
- Науки: разное
- Химия
- Воспитание детей, педагогика
- Детская психология
- Зарубежная публицистика
- Биология
- Архитектура
- Зарубежная психология
- Науки о космосе
- Социология
- Математика
- География
- Беременность, ожидание детей
- Литературоведение
- Транспорт, военная техника
- Обществознание
- Зоология
- География
- Альтернативная медицина
- Иностранные языки
- Ветеринария
- Рефераты
- Астрология
- Биофизика
- Экология
- История Европы
- Учебники
- Шпаргалки
- Государство и право
- Ботаника
- Религиоведение
- История
- Техническая литература
- Прочая научная литература
- Психология
- Детективы и Триллеры
- Справочная литература
- Проза
- Новелла
- Юмор
- Проза
- Историческая проза
- Русская современная проза
- Советская классическая проза
- Повести
- Очерки
- Эссе
- Рассказы
- Зарубежная современная проза
- Сентиментальная проза
- Зарубежная классика
- Афоризмы
- Эпистолярная проза
- Феерия
- Семейный роман/Семейная сага
- Разное
- Антисоветская литература
- Магический реализм
- Русская классическая проза
- Современная проза
- О войне
- Контркультура
- Классическая проза
- Поэзия, Драматургия
- Детская литература
- Детская фантастика
- Детские остросюжетные
- Детские стихи
- Детские приключения
- Внеклассное чтение
- Учебная литература
- Зарубежные детские книги
- Бизнес
- Загадки
- Книги для подростков
- Школьные учебники
- Детский фольклор
- Книги для дошкольников
- Детские детективы
- Детская познавательная и развивающая литература
- Буквари
- Прочая детская литература
- Сказка
- Детская проза
- Детская образовательная литература
- Юмор
- Документальные книги
- Бизнес
- Внешнеэкономическая деятельность
- Тайм-менеджмент
- Кадровый менеджмент
- О бизнесе популярно
- Управление, подбор персонала
- Бизнес
- Менеджмент и кадры
- Продажи
- Экономика
- Ценные бумаги и инвестиции
- Малый бизнес
- Делопроизводство, офис
- Корпоративная культура, бизнес
- Банковское дело
- Финансы
- Зарубежная деловая литература
- Ораторское искусство / риторика
- Личные финансы
- Интернет-бизнес
- Поиск работы
- Государственное и муниципальное управление
- Бухучет и аудит
- Работа с клиентами
- Менеджмент
- Краткое содержание
- Личная эффективность
- Переговоры
- Приключения
- Старинная литература
- Религия и духовность
- Компьютеры и Интернет
- Блог
Читаем без скачивания Maple 9.5/10 в математике, физике и образовании - Владимир Дьяконов
Шрифт:
Интервал:
Закладка:
Как видно из приведенного рисунка, в интервале изменения x от -1,4 до 1,4 аппроксимирующее выражение почти повторяет исходную зависимость. Однако затем график аппроксимирующей функции быстро отходит от графика исходной зависимости и погрешность аппроксимации резко возрастает. При этом он ведет себя иначе даже качественно, никоим образом не показывая асимптотическое поведение, характерное для исходной зависимости. Это говорит о том, что полиномиальная аппроксимация плохо подходит для экстраполяции (предсказания) зависимостей.
Как уже отмечалось, считается, что полиномиальная аппроксимация дает большую погрешность при степени полинома более 5–6. Однако, этот вывод базируется на том, что большинство вычислительных программ работает всего с 5–10 точными знаками в промежуточных и окончательных результатах.
Maple по умолчанию имеет 10 точных знаков чисел. Это показывает следующий пример:
> restart:Digits;
10Таким образом, Maple, как и любая другая программа может давать большую погрешность при высоких степенях аппроксимирующего полинома.
В этом убеждает рис. 5.10, на котором представлена программа полиномиальной аппроксимации функции синуса с возможностью выбора степени полинома N. Программа автоматически задает N+1 отсчетов функции синуса и затем выполняет ее полиномиальную аппроксимацию для N=10 и Digits=8. Результат аппроксимации совершенно неудовлетворительный — видно, что программа под конец пошла вразнос — так именуются хаотические изменения кривой аппроксимирующей функции.
Рис. 5.10. Пример неудачной аппроксимации синуса при N=10 и Digits=8
Практическая рекомендация при полиномиальной аппроксимации выглядит следующим образом — число точных цифр в промежуточных результатах Digits должно на несколько цифр превышать значение N. Рисунок 5.11, приведенный для N=10 и Digits=15 удовлетворяет этому правилу. При этом все точки точно укладываются на кривую полинома 10-го порядка. Однако за пределами интервала, в котором находятся узловые точки, кривая аппроксимации резко отклоняется от функции синуса. Это говорит о том, что достаточно точная экстраполяция (предсказание) при полиномиальном приближении невозможна — повышение степени полинома лишь ухудшают возможности экстраполяции.
Рис. 5.11 Пример достаточно корректной аппроксимации синуса при N=10 и digits=15
Maple 9.5 является системой, позволяющей выполнять арифметические вычисления с практически произвольным числом точных цифр. Ограничения на это число накладывается объемом памяти ПК (для современных ПК не актуально) и возрастанием времени вычислений. В качестве примера аппроксимации полиномом высокой степени на рис. 5.12 приведен документ, осуществляющий аппроксимацию функции синуса для степени полинома N=30 при числе точных цифр Digits=40. Нетрудно заметить, что все 31 узловые точки прекрасно укладываются на кривую полинома и что за пределами расположения этих точек она резко отклоняется от синусоидальной функции.
Рис. 5.12. Пример аппроксимации функции синуса полиномом степени N=30 при Digits=40
В целом аппроксимация полиномами высокой степени хотя и возможна, но непрактична, поскольку такие полиномами едва ли можно назвать простыми аппроксимирующими функциями.
5.7.2. Сплайн-интерполяция в Maple
Для сплайн-интерполяции используется Maple-функция spline(X,Y,var,d). Здесь X и Y — одномерные векторы одинакового размера, несущие значения координат узловых точек исходной функции (причем в произвольном порядке), var — имя переменной, относительно которой вычисляется сплайн-функция, наконец, необязательный параметр d задает вид сплайна. Он может иметь цифровые 1, 2,3 или 4, либо символьные значения:
linear — линейная функция, или полином первого порядка,
quadratic — квадратичная функция, или полином второго порядка,
cubic — полином третьего порядка,
quartic — полином четвертого порядка.
Если параметр d опущен, то сплайн-функция будет строиться на основе полиномов третьего порядка (кубические сплайны). Важно отметить, что за пределами узловых точек сплайны обеспечивают экстраполяцию, представляя данные в соответствии с первым полином слева и последним справа.
Технику сплайновой аппроксимации наглядно поясняет рис. 5.13. На нем представлено задание векторов узловых точек X и Y и четырех сплайновых функций, по которым построены их графики. Для одной из функций (кубических сплайнов) показан вид сплайновой функции.
Рис. 5.13. Задание сплайновой аппроксимации и построение графиков полученных функций
Как видно из рис. 5.13, сплайновая функция представляет собой кусочную функцию, определяемую на каждом отдельно. При этом на каждом участке такая функция описывается отдельным полиномом соответствующей степени. Функция plot «понимает» такие функции и позволяет без преобразования типов данных строить их графики. Для работы с кусочными функциями можно использовать функции convert и piecewise.
Обычно удобно представлять на одном графике узловые точки и кривые интерполяции и экстраполяции. На рис. 5.14 дан пример такого рода. Здесь для одних и тех же данных, представленных векторами datax и datay заданы все 4 возможные типа сплайновой интерполяции/экстраполяции (заданы числами, указывающими на степень полиномов сплайн-функций).
Рис. 5.14. Сплайновая интерполяция/экстраполяция при степени полиномов от 1 до 4
Вывод указан для степени полиномов 1, что соответствует линейной интерполяции/экстраполяции. Для других случаев вывод заблокирован двоеточием, поскольку выглядит очень громоздким. Тем не менее, читатель может просмотреть его, заменив двоеточие на точку с запятой. С помощью графической функции display выводятся как все кривые сплайновой интерполяции/экстраполяции, так и узловые точки — рис. 5.15. Полезно обратить внимание на плохую пригодность для экстраполяции сплайнов второго порядка.
Рис. 5.15. Графики, построенные документом, представленным на рис. 5.14
Мы вернемся к рассмотрению сплайновой аппроксимации в конце этой главы при описании пакета расширения CurveFitting.
5.7.3. Полиномиальная интерполяция табличных данных
На самом деле выполнять все расчеты для полиномиальной аппроксимации в Maple 9.5 не нужно, поскольку системы имеет реализующую данный алгоритм встроенную функцию interp(X,Y,v) или, в инертной форме, Interp(X,Y, v). Переменная v указывает имя переменной интерполяционного полинома. Векторы X и Y должны содержать n+1=N координат точек исходной зависимости, где n — степень интерполирующего полинома.
Рисунок 5.16 показывает технику применения полиномиальной аппроксимации на основе функции interp с построением графика исходных точек и аппроксимирующего полинома. Нетрудно заметить, что график полинома проходит точно через исходные точки — они показаны квадратиками.
Рис. 5.16 Пример осуществления полиномиальной аппроксимации для таблично заданных данных (точек)
В этом примере полезно присмотреться к визуализации результатов вычислений и совместному построению графика интерполирующего полинома и исходных точек. В частности, для построения последних использована обычная функция plot, позволяющая выводить на график точки с заданными координатами, причем не только в виде окружностей, но и в виде точек, маленьких крестиков, кружков, квадратов и других фигур. Для выбора типа точек и других параметров графика его надо выделить (установив указатель мыши в поле графика и щелкнув левой кнопкой) и нажать правую кнопку мыши — появится контекстно-зависимое меню с операциями форматирования графика.
Приведем еще несколько примеров использования функции Interp:
> Interp([2,5,6], [9,8,3], х) mod 11;
8х² + 6х + 9> alias(alpha=RootOf(х^4+х+1));
α> a := Interp([0,1,alpha],[alpha,alpha^2,alpha^3], x) mod 2;
a := x² + (α² + α + 1)x + α5.8. Применение числовой аппроксимации функций
5.8.1. Состав пакета numapprox
Для более глубоких и продвинутых операций аппроксимации служит специальный пакет расширения numapprox. Этот пакет содержит небольшое число безусловно очень важных функций:
> with(numapprox);
[chebdeg, chebmult, chebpade, chebsort, chebyshev, confracform, hermite_pade, hornerform, infnorm, laurent, minimax, pade, remez]В их числе функции интерполяции и аппроксимации полиномами Чебышева, рядом Тейлора, отношением полиномов (аппроксимация Паде) и др. Все они широко применяются не только в фундаментальной математике, но и при решении многих прикладных задач. Рассмотрим их, начиная с функций аппроксимации аналитических зависимостей.