В наши дни
многие уже путают компьютерную математику
как науку о математических
вычислениях и преобразованиях с помощью компьютеров с СКМ Маthematica, созданной
фирмой Wolfram Research, Inc. Хотя это и знаменательно само по себе, во избежание
такой путаницы мы начнем наш курс с рассказа о том, как зародилась компьютерная
математика и как были созданы программные системы компьютерной математики различных
классов. Здесь мы также опишем отражение системы Mathematica в мировой сети
Интернет.
Для многих
неискушенных в математике пользователей не совсем понятно, что делают СКМ, особенно
те из них, которые выполняют символьные операции. Поэтому в этом уроке мы впервые
познакомимся с особенностями различных систем и оценим их возможности, так сказать,
в первом приближении. Некоторые из приведенных примеров лучше повторить в дальнейшем
— после изучения основ работы с системой
Урок 1. Первое знакомство
В наши дни многие уже путают компьютерную математику как науку о математических вычислениях и преобразованиях с помощью компьютеров с СКМ Маthematica, созданной фирмой Wolfram Research, Inc. Хотя это и знаменательно само по себе, во избежание такой путаницы мы начнем наш курс с рассказа о том, как зародилась компьютерная математика и как были созданы программные системы компьютерной математики различных классов. Здесь мы также опишем отражение системы Mathematica в мировой сети Интернет.
Первое знакомство
Зарождение и развитие систем компьютерной алгебры
Математические системы Mathematica
Структура систем Mathematica и их идеология
Знакомство с символьными вычислениями
Установка систем и их особенности
Отличительные особенности Mathematica 4
Что нового мы узнали?
Урок 2. Интерфейс системы
Прежние версий системы Mathematica имели довольно скромный стандартный интерфейс, характерный для приложений MS-DOS. Однако в версиях Mathematica 3/4 интерфейс был существенно переработан. В этом уроке подробно рассматривается интерфейс систем Mathematica 3/4. Освоение интерфейса не менее важно, чем освоение чисто математических возможностей системы, поскольку именно использование всех возможностей интерфейса позволяет готовить вполне современные документы, отличающиеся высоким качеством визуализации.
Интерфейс системы
Строка меню и окно редактирования документов
Палитры математических операторов и функций
Понятие о документах в форме notebooks
Особенности интерфейса Mathematica 4
Работа с файлами
Редактирование документа
Работа с ячейками
Ввод элементов документов
Управление работой ядра
Операции поиска и замены
Работа с окнами и справкой
Что нового мы узнали?
Урок 3. Типы данных
С этого урока начинается серьезное освоение математических возможностей систем Mathematica 3 и 4. Мы изучим основные типы данных, операторов, функций и объектов, с которыми может работать система Mathematica 3/4, а попутно познакомимся и с некоторыми простыми операциями ввода данных и их обработки.
Типы данных
Основные классы данных
Операторы и функции
Работа с объектами
Работа со списками и массивами
Операции линейной алгебры
Что нового мы узнали?
Урок 4. Операции математического анализа
В этом уроке описаны основные операции математического анализа, детали которых можно найти в любом справочнике по высшей математике. Эти операции чаще всего используются при проведении математических и научно-технических расчетов и потому описаны достаточно полно
Операции математического анализа
Вычисление сумм
Вычисление произведений
Вычисление производных
Вычисление интегралов
Вычисление пределов функций
Уравнения и системы уравнений
Дифференциальные уравнения
Оптимизационные задачи
Преобразования Лапласа — LaplaceTransform
Что нового мы узнали?
Урок 5. Представление и обработка данных
Представление и обработка данных — еще один класс математических задач, имеющих явно практическую направленность. В этом уроке мы рассмотрим ряд средств решения этих задач — начиная с общеизвестного разложения аналитических функций в ряды Тейлора и Маклорена и кончая различными видами аппроксимации, интерполяции и регрессии. Будут также затронуты прикладные вопросы применения интерполяции при спектральном анализе сигналов и моделировании нелинейных электрических и электронных цепей.
Представление и обработка данных
Разложение функций в ряды
Преобразования Фурье
Интерполяция, аппроксимация и регрессия
Спектральный анализ с линейной интерполяцией сигнала
Что нового мы узнали?
Урок 6. Специальные математические функции
Специальные математические функции являются решениями линейных дифференциальных уравнений специального вида или представлениями особых интегралов, которые не могут быть выражены через элементарные функции. Здесь не приводятся определения специальных математических функций ввиду их общеизвестности и наличия соответствующей информации в справочной базе данных систем.
Специальные математические функции
Ортогональные многочлены
Интегральные показательные и родственные им функции
Гамма- и полигамма-функции
Функции Бесселя
Гипергеометрические функции.
Функции Эйри
Специальные числа и полиномы
Что нового мы узнали?
Урок 7. Работа с периферийными устройствами
Если пользователь использует систему Mathematica для выполнения чисто математических расчетов, то он может ничего не знать о подавляющем большинстве описанных в этом уроке функций. Их основное назначение — незаметная поддержка работы с периферийными устройствами ввода/вывода. Однако все функции этого урока открыты для опытных пользователей, стремящихся использовать систему в составе программных комплексов. Здесь рассматривается только часть функций для работы с периферийными устройствами — даны те из них, которые используются достаточно часто. Многие функции этой группы перечислены в приложении.
Работа с периферийными устройствами
Функции задания формата вывода
Удаление введенных в ходе сессии определений
Потоки и файлы
Использование файлов других языков программирования
Другие функции для работы с файлами
Общесистемные функции
Урок 8. Графика и звук
Графика, как важнейшее средство визуализации вычислений, всегда была козырной картой системы Mathematica и во многом способствовала ее высокой репутации как мирового лидера среди систем компьютерной математики. Обширные графические возможности достигаются при небольшом числе встроенных функций графики за счет их модификации с помощью опций и директив. Благодаря этому Mathematica позволяет строить практически любые виды графиков. Для просмотра и изменения опций графика можно (выделив ячейку с графиком) воспользоваться описанным ранее инспектором опций, в котором есть соответствующий раздел.
Графика и звук
Двумерная графика
Трехмерная графика
Специальные средства визуализации и звука
Урок 9. Компьютерная алгебра
Математические выражения — основа описания алгоритмов вычислений. Фактически, вся символьная математика основана на тех или иных видах преобразований выражений. Такие преобразования и описаны в данном уроке.
Компьютерная алгебра
Работа с выражениями
Функции компьютерной алгебры
Что нового мы узнали?
Урок 10. Основы программирования
Ранее не раз говорилось, что Mathematica, в сущности, является диалоговым языком программирования сверхвысокого уровня. Однако мы еще не поднимались (или не опускались) до уровня подготовки программ в среде Mathematica 3/4. Между тем, Mathematica и впрямь имеет программные средства, ничем не уступающие таковым для современных языков программирования, а в области подготовки программ для математических преобразований и вычислений намного их превосходящие. В этом уроке мы, наконец, изучим систему Mathematica как язык программирования.
Основы программирования
Методы программирования
Образцы и их применение
Функции пользователя
Суперпозиция функций
Пример программирования графической задачи
Использование процедур
Проблемы совместимости
Подготовка пакетов расширений системы Mathematica
Создание средств визуального программирования
Отладка и трассировка программ
Урок 11. Математические пакеты расширения
Начиная с этого урока, мы переходим к изучению стандартных пакетов расширения (Standard Add-on Packages), которые встроены в системы Mathematica 3/4. Они не требуют отдельной инсталляции, но перед использованием их средств пакеты надо объявлять. Стандартные пакеты расширений содержат примерно столько же дополнительных средств, сколько их содержится в ядре, — то есть тоже порядка тысячи. Применение пакетов расширения особенно эффективно, если оно производится достаточно опытными пользователями.
Математические пакеты расширения
Пакет алгебраических функций Algebra
Пакет вычислительных функций Calculus
Пакет дискретной математики DiscreteMath
Геометрические расчеты — пакет Geometry
Линейная алгебра — пакет LinearAlgebra
Расширение в теории чисел — пакет NumberTheory
Численные расчеты — пакет NumericalMath
Урок 12. Статистические расчеты
В ядре системы Mathematica практически нет статистических функций. Зато пакет расширения Statistics дает сотни функций, охватывающих практически все разделы теоретической и прикладной статистики. Тем не менее, вопрос о привлечении универсальных математических систем к выполнению серьезных математических расчетов является спорным из-за существования множества специальных статистических компьютерных систем, таких как Statistica, StatGraphics и т. д.
Статистические расчеты
Статистические расчеты— пакет Statistics
Регрессия
Урок 13. Полезные функции
Слово Miscellaneous в переводе на русский язык означает «всякая всячина». Большинство функций этого пакета, на первый взгляд, не имеет прямого отношения к математическим расчетам. Однако как сказать! Этот пакет представляет систему Mathematica в особом свете — как систему, имеющую далеко не стандартные средства синтеза звука и графического представления информации самого общего вида. Физики, химики, географы и даже музыканты могут найти в этом пакете средства, полезные им при обработке на компьютере информации произвольного вида.
Полезные функции
Пакет расширения с утилитами — Utilities
Урок 14. Расширения графики— пакет Graphics
Пакет расширения Graphics дает множество средств для построения графиков самого изысканного вида. Он является прекрасным инструментом для визуализации задач, допускающих представление результатов в графической форме. Объем материала данного пакета намного выходит за пределы одного урока, поскольку предполагает отбор нужного материала для изучения того или иного вида графики.
Расширения графики— пакет Graphics
Установка аргумента цвета — ArgColor
Построение объемных контурных графиков — ContourPlot3D
Специальные типы трехмерных графиков — Graphics3D
Вывод обозначений кривых — Legend
Построение 3D-параметрических графиков — ParametricPlot3D
Построение полиэдров — Polyhedra
Примитивы, использующие сплайны — Spline
Приложение. Данные по дополнительным функциям Mathematica
Обзор