Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Mathematica 5/6/7. Полное руководство

Покупка
Артикул: 613161.01.99
К покупке доступен более свежий выпуск Перейти
В книге описаны основы программирования и применения трех последних версий системы Mathematica 5 (5.1 и 5.2), 6.0 и 7.0. Все они - мировые лидеры среди универсальных систем компьютерной математики. Особое внимание уделено описанию наиболее популярной версии Mathematica 6.0, в ядро которой добавлено свыше тысячи новых функций и команд, введены уникальные средства динамической оценки переменных, визуализации любых видов вычислений и динамического графического интерфейса ноутбуков (документов). Описаны сотни примеров применения систем. В последнюю главу добавлены новые возможности версии 7.0. Издание предназначено для всех пользователей ПК, применяющих математические методы в образовании, в инженерной практике и в научных расчетах и, прежде всего, желающих освоить программирование в системах Mathematica.
Дьяконов, В. П. Mathematica 5/6/7. Полное руководство [Электронный ресурс] / В. П. Дьяконов. - Москва : ДМК Пресс, 2010. - 624 с.: ил. - ISBN 978-5-94074-553-2. - Текст : электронный. - URL: https://znanium.com/catalog/product/408353 (дата обращения: 25.04.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Mathematica 5/6/7

Полное руководство

В. П. Дьяконов

Москва, 2010

УДК 32.973.26018.2
ББК 004.438

Д93

Д93
Дьяконов В. П.
Mathematica 5/6/7. Полное руководство. – М.: ДМК Пресс, 2010. – 624 с.: ил.

ISBN 9785940745532

В книге описаны основы программирования и применения трех последних версий системы Mathematica 5 (5.1 и 5.2), 6.0 и 7.0. Все они – мировые
лидеры среди универсальных систем компьютерной математики. Особое
внимание уделено описанию наиболее популярной версии Mathematica 6.0,
в ядро которой добавлено свыше тысячи новых функций и команд, введены
уникальные средства динамической оценки переменных,  визуализации
любых видов вычислений и динамического графического интерфейса ноутбуков (документов). Описаны сотни примеров применения систем. В последнюю главу добавлены новые возможности версии 7.0.

Издание предназначено для всех пользователей ПК, применяющих математические методы в образовании, в инженерной практике и в научных расчетах и, прежде всего, желающих освоить программирование в системах
Mathematica.

УДК 519.6
ББК В162я73

Все права защищены. Любая часть этой книги не может быть воспроизведена в какой

бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав.

Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность

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

© Дьяконов В. П., 20 0

ISBN 9785940745532
© Оформление, издание, ДМК Пресс, 2010

1

Краткое содержание

Введение .......................................................................... 29

Глава 1
ИНТЕРФЕЙС ПОЛЬЗОВАТЕЛЯ
И РАБОТА С MATHEMATICA 5/6................................... 33

Глава 2
ТИПОВЫЕ СРЕДСТВА
ПРОГРАММИРОВАНИЯ ................................................. 97

Глава 3
ТИПЫ ДАННЫХ, ОПЕРАТОРЫ
И ФУНКЦИИ .................................................................... 157

Глава 4
ФУНКЦИИ РАБОТЫ СО СЛОЖНЫМИ ТИПАМИ
ДАННЫХ .......................................................................... 203

Глава 5
ФУНКЦИИ МАТЕМАТИЧЕСКОГО
АНАЛИЗА ........................................................................ 231

Глава 6
ФУНКЦИИ ОБРАБОТКИ ДАННЫХ,
ФУНКЦИЙ И СИГНАЛОВ ............................................. 285

Глава 7
ФУНКЦИИ СИМВОЛЬНЫХ ПРЕОБРАЗОВАНИЙ... 369

Содержание
4

Глава 8
СРЕДСТВА ПРОГРАММИРОВАНИЯ
ГРАФИКИ ........................................................................ 399

Глава 9
СПЕЦИАЛЬНЫЕ СРЕДСТВА
ПРОГРАММИРОВАНИЯ ............................................... 495

Глава 10
MATHEMATICA 7 НОВЫЕ ВОЗМОЖНОСТИ ......... 571

Список литературы ..................................................... 619

Содержание

Введение .......................................................................................... 29

Глава 1
Интерфейс пользователя
и работа с Mathematica 5/6.................................................. 33

1.1. Пуск системы и начало работы с ней .......................... 34

1.1.1. История появления системы Mathematica и ее место ...... 34

1.1.2. Инсталляция и запуск системы Mathematica 5 ................. 35

1.1.3. Главное меню и окно редактирования документов ............ 36

1.1.4. Палитры математических операторов и функций ............ 37

1.1.5. Первые навыки работы и понятие о ноутбуках
(документах).............................................................................. 38

1.2. Работа с файлами (File) .................................................. 40

1.2.1. Основные виды файлов и пакеты расширения ................. 40

1.2.2. Команды позиции File меню ............................................. 41

1.2.3. Работа с файлами документов ......................................... 42

1.2.4. Операции с файлами со специальным форматом ............ 42

1.2.5. Преобразование документов в палитру и наоборот ............ 43

1.2.6.  Печать ноутбуков............................................................. 43

1.2.7. Команда завершения работы с системой – Exit................ 43

1.3. Редактирование документа (Edit) ................................ 44

1.3.1. Основные понятия о документах и их стилях.................... 44

1.3.2. Выделения в документах и использование мыши ............ 44

1.3.3. Подготовка текстовых комментариев .............................. 46

1.3.4. Команды позиции Edit главного меню .............................. 47

Содержание
6

1.3.5. Операции с буфером промежуточного хранения ............. 48

1.3.6. Специальные команды правки ......................................... 48

1.3.7. Установка предпочтений .................................................. 49

1.4. Работа с ячейками (Cell)................................................. 50

1.4.1. Понятие о ячейках документов ......................................... 50

1.4.2. Команды позиции Cell главного меню .............................. 50

1.4.3. Манипуляции с ячейками ................................................. 51

1.4.4. Работа с графическими и звуковыми возможностями ..... 54

1.5. Операции форматирования ячеек (Format) ............... 55

1.5.1. Команды позиции Format главного меню ......................... 55

1.5.2. Изменение стиля документов .......................................... 55

1.5.3. Опции стилей и программ и их изменение ....................... 56

1.5.4. Уточненное управление стилем документов .................... 57

1.5.5. Установка стиля интерфейса ........................................... 58

1.6. Ввод элементов документов (Input)............................. 58

1.6.1. Ввод координат двумерных графиков .............................. 58

1.6.2. Работа с селектором обзора трехмерных графиков ........ 59

1.6.3. Изменение цветовой гаммы............................................. 61

1.6.4. Работа с фонографом ...................................................... 61

1.6.5. Вставка файла.................................................................. 61

1.6.6.  Ввод таблиц, матриц и палитр ......................................... 61

1.6.7. Ввод и редактирование кнопок ........................................ 62

1.6.8. Вставка гиперссылки ....................................................... 62

1.6.9. Создание и ввод специальных объектов .......................... 63

1.6.10. Вставки, связанные с ячейками ..................................... 64

1.6.11. Вставки имен функций и списков их параметров ........... 65

1.7. Управление работой ядра системы (Kernel) .............. 65

1.7.1. Команды позиции Kernel главного меню .......................... 65

Содержание
7

1.7.2. Управление процессом вычислений ................................ 65

1.7.3. Выбор ядра системы ........................................................ 67

1.7.4. Управление показом номеров ячеек ................................ 67

1.7.5. Удаление всех ячеек вывода ............................................ 68

1.8. Операции поиска и замены ........................................... 68

1.8.1. Обзор подменю Find ........................................................ 68

1.8.2. Команды поиска и замены ............................................... 68

1.8.3. Обнаружение и открытие выделенных строк.................... 68

1.8.4. Работа с этикетками ........................................................ 69

1.9. Управление окнами (Windows) ...................................... 69

1.9.1. Команды позиции Windows главного меню....................... 69

1.9.2. Управление расположением и вывод
специальных окон...................................................................... 69

1.10. Работа с информационными
ресурсами системы Mathematica ........................................ 70

1.10.1. Справка по системе Mathematica 5 ................................ 70

1.10.2. Открытие справочной базы данных Mathematica 5.2 ...... 70

1.10.3. Работа со справкой Mathematica 5.1/5.2 ........................ 71

1.10.4. Другие команды меню Help ............................................ 73

1.11. Возможности системы Mathematica 5.2 ................... 74

1.11.1. Увеличение функциональности системы........................ 74

1.11.2. Поддержка многоядерных микропроцессоров .............. 74

1.11.3. Увеличение скорости вычисления математических
функций..................................................................................... 76

1.11.4. Поддержка 64разрядных микропроцессоров ............... 77

1.11.5. Повышение производительности в обычных условиях .... 78

1.12. Интерфейс пользователя системы
Mathematica 6 ........................................................................... 78

Содержание
8

1.12.1. Запуск Mathematica 6 и изменения в меню системы ...... 78

1.12.2. Справочная система Mathematica 6 ............................... 80

1.13. Особенности системы Mathematica 6 ....................... 83

1.13.1. Основные новинки системы Mathematica 6 .................... 83

1.13.2. Скорость работы Mathematica 6 ..................................... 85

1.13.3. Ориентация в изучении системы на примеры
ее применения ........................................................................... 86

1.13.4. Динамическая интерактивность при символьных
вычислениях .............................................................................. 87

1.13.5. Управление графиками мышью...................................... 89

1.13.6. Динамическая интерактивность при графической
визуализации ............................................................................ 90

1.13.7. Комплексное тестирование Mathematica 6
на скорость вычислений ............................................................ 93

Глава 2
Типовые средства программирования ..................... 97

2.1. Mathematica как система программирования ........... 98

2.1.1. Понятие о входном языке системы и языке реализации .... 98

2.1.2. Возможности языка программирования системы
Mathematica ............................................................................... 98

2.1.3. Структура систем Mathematica....................................... 100

2.1.4. Идеология систем Mathematica...................................... 101

2.1.5. Пакеты расширения AddOn........................................... 101

2.1.6. Полная и частичная загрузка пакетов расширения
AddOn..................................................................................... 102

2.1.7. Применение пакетов AddOn системы Mathematica 6 .... 102

2.1.8. Концепция динамического изменения
переменных в Mathematica 6 ................................................... 104

2.2. Функции символьных вычислений ............................. 106

Содержание
9

2.2.1. Понятие о символьных (аналитических) вычислениях.... 106

2.2.2. Диагностика ошибок ...................................................... 107

2.2.3. Простые примеры из математического анализа ............ 108

2.2.4. Точная арифметика ........................................................ 109

2.2.5. Проблемы символьных вычислений ............................... 110

2.2.6. Проверка результатов вычислений ................................ 113

2.2.7. Удаление введенных в ходе сессии определений .......... 113

2.3. Применение образцов.................................................. 114

2.3.1. Понятие об образцах...................................................... 114

2.3.2. Задание свойств функций с помощью образцов ............ 114

2.3.3. Задание в образцах типов данных ................................. 115

2.3.4. Типы образцов ............................................................... 115

2.4. Основы функционального
программирования в среде Mathematica......................... 116

2.4.1. Суть функционального программирования.................... 116

2.4.2. Функции пользователя................................................... 117

2.4.3.  Задание чистых функций ............................................... 118

2.4.4. Анонимные функции ...................................................... 119

2.4.5. Суперпозиция функций.................................................. 120

2.4.6. Функции FixedPoint и Cath .............................................. 120

2.4.7. Реализация рекурсивных и рекуррентных алгоритмов .... 121

2.5. Основы процедурного программирования.............. 122

2.5.1. Однострочные процедуры и их задание ......................... 122

2.5.2. Блоки для задания процедур.......................................... 123

2.6. Организация циклов ..................................................... 123

2.6.1. Для чего нужны циклы .................................................... 123

2.6.2. Циклы типа Do ................................................................ 124

2.6.3. Циклы типа For ............................................................... 126

Содержание
10

2.6.4. Циклы типа While ............................................................ 126

2.6.5. Директивыфункции прерывания и продолжения
циклов ..................................................................................... 127

2.7. Условные выражения и безусловные переходы ..... 128

2.7.1. Функция If ...................................................................... 129

2.7.2. Функциипереключатели ............................................... 130

2.7.3. Безусловные переходы .................................................. 131

2.8. Механизм контекстов ................................................... 132

2.8.1. Старые проблемы .......................................................... 132

2.8.2. Что такое контекст?........................................................ 133

2.8.3. Работа с контекстами..................................................... 134

2.8.4. Получение списков определений с контекстами ............ 135

2.9. Программирование вводавывода ............................ 136

2.9.1. Осуществление интерактивного диалога ....................... 136

2.9.2. Задание формата вывода .............................................. 137

2.10. Функции задания объектов GUI ноутбуков............. 140

2.10.1. Слайдеры однокоординатные ...................................... 140

2.10.2. Слайдеры двухкоординатные....................................... 141

2.10.3. Элементы установки опций CheckBox .......................... 141

2.10.4. Локаторы ..................................................................... 142

2.10.5. Функции управления и контроля мышью ...................... 142

2.10.6. Кнопка с надписью ....................................................... 144

2.10.7. Манипулятор ................................................................ 144

2.10.8. Задатчик угла поворота радиусвектора ...................... 144

2.10.9. Выпадающее меню акций ............................................ 145

2.10.10. Панель ввода выражений ........................................... 146

2.10.11. Радиокнопки и меню установок .................................. 147

2.10.12. Слайдер изменения цвета .......................................... 149

Содержание
11

2.10.13. Спусковой «механизм» ............................................... 150

2.10.14. Функции указания места на объекте .......................... 151

2.10.15. Вывод сообщения при активизации объекта
мышью..................................................................................... 152

2.10.16. Вывод меню и выбор его позиций .............................. 154

2.10.17. Вывод меню c вкладками и их переключение ............. 154

2.10.18. Вывод слайдменю..................................................... 155

2.10.19. Конструирование отдельных окон с GUI ..................... 155

Глава 3
Типы данных, операторы и функции ........................ 157

3.1. Работа с простыми типами данных............................ 158

3.1.1. Типы данных системы .................................................... 158

3.1.2. Работа с целыми числами .............................................. 158

3.1.3. Работа с числами вещественного типа .......................... 160

3.1.4. Работа с комплексными числами ................................... 162

3.2. Работа со сложными типами данных ......................... 163

3.2.1. Символьные данные и строки ........................................ 163

3.2.2. Выражения..................................................................... 163

3.3. Работа с объектами и функциями .............................. 164

3.3.1. Объекты и идентификаторы ........................................... 164

3.3.2. Функции, опции, атрибуты и директивы......................... 165

3.4. Применение констант и размерных величин........... 167

3.4.1. Применение констант .................................................... 167

3.4.2. Физические константы и размерные величины ............. 168

3.5. Работа с переменными ................................................ 168

3.5.1. Расширенное понятие о переменных............................. 168

3.5.2. Назначение переменным идентификаторов (имен) ....... 169

Содержание
12

3.5.3. Особенности применения переменных.......................... 169

3.5.4. Эволюция значений переменных и операции
присваивания .......................................................................... 170

3.5.5. Предполагаемые переменные ....................................... 171

3.6. Применение подстановок ............................................ 172

3.6.1. Назначение подстановок ............................................... 172

3.6.2. Подстановки с помощью оператора /. ........................... 172

3.6.3. Подстановки с помощью операторов > и :> .................. 173

3.7. Задание и применение функций пользователя ...... 173

3.7.1. Задание функций пользователя ..................................... 173

3.7.2. Сохранение на диске и считывание функций
пользователя ........................................................................... 174

3.7.3. Задание функций пользователя с синтаксисом
языков программирования...................................................... 174

3.8. Средства арифметических вычислений ................... 175

3.8.1. Арифметические операторы .......................................... 175

3.8.2. Особенности выполнения арифметических операций ... 176

3.8.3. Рационализация чисел................................................... 177

3.8.4. Укороченная форма записи арифметических
операций ................................................................................. 178

3.9. Функции арифметических операций......................... 179

3.9.1. Встроенные функции ..................................................... 179

3.9.2. Основные арифметические функции ............................. 179

3.9.3. Функции генерации случайных чисел............................. 181

3.9.4. Функции выявления погрешностей и анализа
структуры чисел....................................................................... 183

3.10. Логические операторы и функции ........................... 183

3.10.1. Логические операции................................................... 183

3.10.2. Основные логические функции .................................... 184

Содержание
13

3.10.3. Дополнительные логические функции ......................... 186

3.11. Работа с математическими функциями.................. 187

3.11.1. Функции комплексного аргумента ............................... 187

3.11.2. Элементарные функции ............................................... 188

3.11.3. Ортогональные многочлены......................................... 189

3.11.4. Интегральные показательные и родственные
им функции.............................................................................. 190

3.11.5. Гаммаи полигаммафункции ...................................... 191

3.11.6. Функции Бесселя ......................................................... 192

3.11.7. Гипергеометрические функции .................................... 193

3.11.8.  Эллиптические интегралы и интегральные функции ... 193

3.11.9.  Функции Эйри ............................................................. 194

3.11.10.  Бетафункция и относящиеся к ней функции ............. 195

3.11.11.  Специальные числа и полиномы................................ 195

3.11.12.  Другие специальные функции ................................... 196

3.11.13. Новые специальные функции в Mathematica 6............ 198

3.12. Расширенные возможности работы
с объектами ............................................................................ 199

3.12.1. Оперативная помощь ................................................... 199

3.12.2. Средства диагностики и сообщения об ошибках ......... 199

3.12.3. Включение и выключение сообщений об ошибках ....... 200

3.12.4. Защита от модификации и ее отмена........................... 201

Глава 4
Функции работы со сложными типами
данных ............................................................................. 203

4.1. Создание списков и выделение элементов
списков .................................................................................... 204

4.1.1. Создание списков .......................................................... 204

Содержание
14

4.1.2. Генерация списков ......................................................... 205

4.1.3. Выделение элементов списков ...................................... 206

4.1.4. Вывод элементов списков.............................................. 208

4.2. Выявление структуры списков .................................... 209

4.2.1. Функции выявления структуры списков ......................... 209

4.2.2. Примеры выявления структуры списков ........................ 211

4.3. Работа со списком в стеке ........................................... 211

4.3.1. Понятие о стеке.............................................................. 211

4.3.2. Работа со стеком ........................................................... 212

4.4. Манипуляции с элементами списков ........................ 212

4.4.1. Включение в список новых элементов ........................... 212

4.4.2. Удаление элементов из списка ...................................... 213

4.4.3. Изменение порядка элементов в списке ........................ 214

4.4.4. Комбинирование списков и работа с множествами ....... 215

4.4.5. Другие функции для работы со списками ...................... 216

4.5. Базовые средства линейной алгебры ....................... 217

4.5.1. Задание массивов ......................................................... 217

4.5.2. Векторные функции ....................................................... 218

4.5.3. Функции для операций линейной алгебры ..................... 219

4.5.4. Функции декомпозиции матриц ..................................... 221

4.5.5. Решение систем линейных уравнений ........................... 222

4.6. Новые средства работы со списками
в Mathematica 6 ...................................................................... 223

4.6.1. Работа с оператором ;; для списков ............................... 223

4.6.2. Новые функции для работы со списками........................ 224

4.6.3. Новые функции для массивов, векторов и матриц ......... 225

4.7. Работа со строками ....................................................... 227

Содержание
15

4.7.1. Функции работы со строками......................................... 227

4.7.2. Примеры работы со строковыми функциями ................. 228

4.7.3. Дополнительные функции работы со строками.............. 228

Глава 5
Функции математического анализа ......................... 231

5.1. Функции вычисления сумм и произведений
рядов ........................................................................................ 232

5.1.1. Функция вычисления сумм............................................. 232

5.1.2. Функция вычисления сумм в численном виде ................ 233

5.1.3. Функция вычисления произведений .............................. 234

5.1.4. Функция вычисления произведений в численном виде..... 235

5.2. Функции вычисления производных ........................... 236

5.2.1. Основные функции для вычисления производных........... 236

5.2.2. Примеры вычисления производных ............................... 237

5.2.3. Примеры вычисления обобщенных производных .......... 239

5.3. Вычисление первообразных
и определенных интегралов ............................................... 240

5.3.1. Вычисление интегралов в символьном виде .................. 240

5.3.2. Примеры на вычисление определенных интегралов ...... 242

5.3.3. Примеры на вычисление кратных интегралов ................ 243

5.3.4. Численное интегрирование в Mathematica 5.1/5.2 ......... 245

5.3.5. Численное интегрирование в Mathematica 6 .................. 247

5.4. Вычисление пределов функций.................................. 248

5.4.1. Функция для вычисления пределов Limit........................ 248

5.4.2. Опции функции вычисления пределов ........................... 249

5.5. Функции решения алгебраических
и нелинейных уравнений ..................................................... 250

Содержание
16

5.5.1. Функция Solve для решения уравнений .......................... 250

5.5.2. Решение систем нелинейных уравнений
в символьном виде .................................................................. 250

5.5.3. Опции функции Solve ..................................................... 251

5.5.4. Функции численного решения уравнений ...................... 253

5.5.5. Функции вычисления корней уравнений ........................ 255

5.5.6. Дополнительные функции для решения уравнений............ 256

5.5.7. Графическая иллюстрация и выбор метода
решения уравнений ................................................................. 258

5.5.8. Получение одновременно нескольких корней ................ 261

5.5.9. Получение неизвестных  в явном виде ........................... 262

5.5.10. Решение рекуррентных уравнений............................... 263

5.5.11. Решение уравнения Фробениуса в Mathematica 6 ........ 264

5.6. Решение дифференциальных уравнений ................ 265

5.6.1. Решение дифференциальных уравнений
в символьном виде .................................................................. 265

5.6.2. Решение дифференциальных уравнений в частных
производных ........................................................................... 267

5.6.3. Решение дифференциальных уравнений
в численном виде .................................................................... 268

5.7. Функции минимизации и максимизации.................. 269

5.7.1. Поиск максимального и минимального чисел
в списке ................................................................................... 270

5.7.2. Поиск локального минимума и максимума
аналитической функции .......................................................... 271

5.7.3. Поиск глобального максимума и минимума
аналитической функции .......................................................... 272

5.7.4. Функции оптимизации в Mathematica 5/5.1/5.2 ............. 273

5.7.5. Функции оптимизации в Mathematica 6 .......................... 274

5.7.6. Визуализация оптимизации в Mathematica 6 ................. 275

5.8. Функции интегральных преобразований ................. 276

Содержание
17

5.8.1. Функции преобразований Лапласа ................................ 277

5.8.2. Функции Фурьепреобразований .................................. 279

5.8.3. Функции косинусного и синусного преобразований
Фурье ...................................................................................... 282

5.8.4. Функции zпреобразований ........................................... 283

Глава 6
Функции обработки данных, функций
и сигналов .............................................................................. 285

6.1. Разложение функций в степенные ряды .................. 286

6.1.1. Разложения в ряды Тейлора и Маклорена ...................... 286

6.1.2. Примеры разложения в ряды Тейлора и Маклорена ...... 287

6.1.3. Удаление члена с остаточной погрешностью ряда ......... 288

6.1.4. Графическая визуализация разложения в ряд ............... 288

6.1.5. О разложении в ряд при большом числе членов ............ 289

6.2. Средства синтеза сигналов......................................... 291

6.2.1. Синтез сигналов на основе встроенных функций........... 291

6.2.2. Гармонический синтез сигналов .................................... 292

6.3. Функции полиномиальной интерполяции
и аппроксимации ................................................................... 294

6.3.1. Функции полиномиальной интерполяция ...................... 294

6.3.2. Пример полиномиальной аппроксимации ..................... 296

6.3.3. Погрешность полиномиальной аппроксимации ............. 297

6.3.4. Полиномиальная аппроксимация специальных
функций................................................................................... 297

6.3.5. Полиномиальная аппроксимация при большом
числе узлов.............................................................................. 299

6.3.6. Рациональная интерполяция и аппроксимация ............. 301

6.3.7. Функции рациональной Падеаппроксимация ............... 305

Содержание
18

6.3.8. Оптимизация аппроксимации ........................................ 308

6.3.9. Методика минимаксной аппроксимации ....................... 310

6.3.10. Сплайновая интерполяция и аппроксимация ............... 314

6.4. Регрессия и метод наименьших квадратов ............. 315

6.4.1. Регрессия и визуализация ее результатов ..................... 315

6.4.2. Функции линейной регрессии ........................................ 317

6.4.3. Функции нелинейной регрессии .................................... 318

6.4.4. Функции полиномиальной регрессии ............................ 320

6.4.5. Функции тригонометрической регрессии ...................... 322

6.5. Функции дискретного преобразования Фурье ....... 323

6.5.1. Прямое и обратное дискретное преобразование
Фурье ...................................................................................... 323

6.5.2. Спектральный анализ на основе прямого
преобразования Фурье ........................................................... 325

6.5.3. Применение преобразования Фурье
для получения спектра сигналов ............................................. 326

6.5.4. Фильтрация сигналов с помощью преобразований
Фурье ...................................................................................... 327

6.5.5.  Расширенные функции для преобразования Фурье ...... 329

6.6. Кусочные функции Piecewise....................................... 331

6.6.1. Задание кусочных функций ............................................ 331

6.6.2. Работа с кусочными функциями ..................................... 332

6.7. Новые средства Mathematica 6 ................................... 333

6.7.1. Функции полиномиальной интерполяции ...................... 333

6.7.2. Пример трехмерной полиномиальной интерполяции .... 333

6.7.3. Полиномиальная интерполяция с заданием
значений производной в узлах ................................................ 333

6.7.4. Функция нелинейной регрессии FindFit ......................... 334

6.8.  Функции для работы со звуковыми сигналами ...... 335

Содержание
19

6.8.1. Роль синтеза звука ......................................................... 335

6.8.2. Функции для работы со звуком ...................................... 336

6.8.3. Примеры синтеза звуков в Mathematica 5.1/5.2 ............. 337

6.8.4. Работа со звуком в Mathematica 6 .................................. 337

6.9. Функции для работы с потоками и файлами............ 341

6.9.1. Потоки и файлы.............................................................. 341

6.9.2. Упрощенная работа с файлами ...................................... 341

6.9.3. Обычные средства для работы с файлами ..................... 342

6.9.4. Использование файлов других языков
программирования.................................................................. 343

6.9.5. Запись в файл определений........................................... 344

6.9.6. Другие функции для работы с файлами ......................... 344

6.10. Системные функции ................................................... 346

6.10.1. Функции времени и даты.............................................. 346

6.10.2. Общесистемные функции ............................................ 347

6.10.3. Общесистемные функции в Mathematica  6 .................. 349

6.11. Функции статистической обработки
данных и массивов Statistics ............................................... 350

6.11.1. Назначение пакета Statistics в Mathematica 5.1/5.2 ...... 350

6.11.2. Манипуляции с данными – DataManipulation ................ 350

6.11.3. Стандартная обработка массива данных ..................... 352

6.11.4. Линейное сглаживание данных и их фильтрация.......... 354

6.11.5. Экспоненциальное сглаживание .................................. 356

6.11.6. Функции непрерывного распределения
вероятностей........................................................................... 357

6.11.7. Функции дискретного распределения ......................... 359

6.11.8. Графика пакета Statistica .............................................. 360

6.11.9. Другие функции статистики ......................................... 361

Содержание
20

6.12. Статистические вычисления в Mathematica 6 ....... 363

6.12.1. О пакете расширения Statistics в системе
Mathematica 6 .......................................................................... 363

6.12.2. Аналитические статистические расчеты ...................... 363

6.12.3. Численные статистические расчеты в Mathematica 6 ... 365

6.12.4. Статистические расчеты с графической
визуализацией ........................................................................ 365

Глава 7
Функции символьных преобразований .................. 369

7.1. Работа с выражениями ................................................. 370

7.1.1. Полная форма выражений ............................................. 370

7.1.2. Основные формы выражений ........................................ 371

7.1.3. Части выражений и работа с ними ................................. 371

7.1.4. Удаление элементов выражения .................................... 373

7.1.5. Другие манипуляции с выражениями............................. 373

7.1.6. Контроль выражений ..................................................... 375

7.2. Работа с функциями ...................................................... 375

7.2.1. Приложение имени функции к выражению
или его части ........................................................................... 375

7.2.2. Укороченная форма функций ......................................... 376

7.2.3. Выделение заданного аргумента в функциях ................. 376

7.2.4. Подстановки в функциях ................................................ 377

7.2.5. Рекурсивные функции .................................................... 377

7.2.6. Дополнительные примеры на работу с функциями ........ 378

7.2.7. Инверсные функции ....................................................... 379

7.3. Задание математических отношений ....................... 379

7.3.1. Для чего нужно задание новых отношений .................... 379

7.3.2. Примеры задания математических отношений.............. 380

Содержание
21

7.4. Функции упрощения выражений ................................ 381

7.4.1. Роль упрощения выражений .......................................... 381

7.4.2. Основная функция Simplify ............................................. 382

7.4.3. Примеры упрощения выражений функцией Simplify ...... 383

7.4.4. Функция полного упрощения FullSimplify ....................... 383

7.5. Раскрытие и расширение выражений ....................... 384

7.5.1. Функции раскрытия и расширения выражений .............. 384

7.5.2. Примеры расширения и раскрытия выражений ............. 385

7.5.3. Функция Collect .............................................................. 386

7.5.4. Функции преобразования тригонометрических
выражений .............................................................................. 387

7.6. Функции и директивы для работы с полиномами ... 389

7.6.1. Определение полинома (степенного многочлена) ......... 389

7.6.2. Основные операции над полиномами ............................ 390

7.6.3. Разложение полиномов – функции класса Factor ........... 390

7.6.4. Функции для работы с полиномами ............................... 392

7.6.5. Примеры работы с полиномами ..................................... 392

7.7. Расширенные операции с выражениями ................. 394

7.7.1. Функции для расширенных операций с выражениями ... 394

7.7.2. Примеры расширенной работы с выражениями ............ 396

7.7.3. Средства работы с выражениями в Mathematica 6 ............ 397

Глава 8
Средства программирования графики ................... 399

8.1. Построение графиков функций одной
переменной ............................................................................ 400

8.1.1. Графическая функция Plot .............................................. 400

8.1.2. Опции функции Plot........................................................ 400

Содержание
22

8.1.3. Применение опций функции Plot.................................... 402

8.1.4. Директивы двумерной графики и их применение .......... 405

8.1.5. Построение графика по точкам – функция ListPlot ......... 407

8.1.6. Получение информации о графических объектах .......... 408

8.2. Перестройка и комбинирование графиков .............. 409

8.2.1. Директива Show ............................................................. 409

8.2.2. Примеры применения функции Show............................. 409

8.3. Примитивы двумерной графики ................................. 410

8.4. Построение графиков в полярной системе
координат................................................................................ 412

8.4.1. Задание функции в параметрической форме ................ 412

8.4.2. Функции для построения параметрически заданных
графиков ................................................................................. 413

8.4.3. Примеры построения графиков в полярной
системе координат .................................................................. 414

8.5. Построение контурных графиков ............................... 415

8.5.1. Функции для построения контурных графиков............... 415

8.5.2. Опции для функций контурной графики ......................... 416

8.5.3. Примеры построения контурных графиков .................... 417

8.6. Построение графиков плотности ............................... 419

8.6.1. Функции графиков плотности ........................................ 419

8.6.2. Примеры построения графиков плотности .................... 420

8.7. Построение графиков поверхностей ........................ 421

8.7.1. Принципы построения поверхностей и фигур ................ 421

8.7.2. Основные функции для построения 3D графиков .......... 421

8.7.3. Опции 3D графики.......................................................... 421

8.7.4. Директивы трехмерной графики .................................... 423

Содержание
23

8.7.5. Примеры модификации 3D графиков с помощью
опций....................................................................................... 424

8.7.6. Графическая функция ListPlot3D .................................... 429

8.7.7. Параметрическая 3D графика ........................................ 430

8.7.8. Построение фигур, пересекающихся в пространстве .... 432

8.8. Примитивы трехмерной графики
и их применение .................................................................... 434

8.8.1. Функция Graphics3D и ее опции и примитивы ................ 434

8.8.2. Примеры применения функции Graphics3D
с примитивами ........................................................................ 436

8.9. Дополнительные средства графики
Mathematica 5.1/5.2 .............................................................. 438

8.9.1. Импорт графических изображений ................................ 438

8.9.2. Экспорт графических изображений ............................... 439

8.9.3. Вставка графических и иных объектов ........................... 440

8.10. Новые средства графики в Mathematica 6 ............. 442

8.10.1. Позиция Graphics меню и графический редактор......... 442

8.10.2. Расширение возможностей функции Plot..................... 445

8.10.3. Использование опций закраски областей
двумерных графиков ............................................................... 445

8.10.4. Графические динамические модули в Mathematica 6 ... 448

8.10.5. Визуализация данных из списков................................. 450

8.10.6. Рельефная графика...................................................... 453

8.10.7. Трехмерные объекты, полученные вращением
кривых ..................................................................................... 454

8.10.8. Визуализация работы клеточных автоматов ................ 458

8.10.9. Графы, деревья и прочее ............................................. 461

8.11. Функции пакета расширения Graphics ................... 461

8.11.1. Функции анимационной графики ................................. 461

Содержание
24

8.11.2. Управление цветом графиков ...................................... 465

8.11.3. Построение стрелок ..................................................... 467

8.11.4. Задание картографических систем .............................. 467

8.11.5. Построение объемных контурных графиков –
ContourPlot3D .......................................................................... 468

8.11.6. Построение графиков с окраской внутренних
областей.................................................................................. 470

8.11.7. Графики логарифмические и полулогарифмические ... 472

8.11.8. Графики в полярной системе координат ...................... 473

8.11.9. Построение столбиковых и круговых диаграмм ........... 473

8.11.10. Объединение графиков различного типа ................... 475

8.11.11. Трехмерные столбиковые диаграммы ........................ 476

8.11.12. Построение точек и кривых в пространстве ............... 477

8.11.13. Построение графиков поверхности и ее проекций..... 477

8.11.14. Построение графиков неявных функций .................... 478

8.11.15. Вывод обозначений кривых – легенд ......................... 479

8.11.16. Построение графиков с примитивами........................ 480

8.11.17. Построение трехмерных заданных параметрически
графиков ................................................................................. 481

8.11.18. Трехмерные графики в сферической
и цилиндрической системах координат ................................... 481

8.11.19. Построение графиков полей ...................................... 481

8.11.20. Построение пространственных фигур
стереометрии .......................................................................... 482

8.11.21. Создание графических форм ..................................... 485

8.11.22. Построение фигур, пересекающихся
в пространстве ........................................................................ 485

8.11.23. Применение сплайнов................................................ 486

8.11.24. Функции построения фигур вращения ....................... 486

8.12. Идеология применения пакета Graphics
в Mathematica 6 ...................................................................... 488

Содержание
25

8.12.1. Роль пакета Graphics в Mathematica 6 ........................... 488

8.12.2. Представление точек графиков произвольными
объектами ............................................................................... 488

8.12.3. Функция PolyhedronData .............................................. 488

8.12.4. Функция GraphData ...................................................... 490

8.12.5. Функция GraphicsGrid ................................................... 491

8.12.6. Директива вставки Inset ............................................... 492

8.12.7. Директива непрозрачности Opacity ............................. 493

Глава 9
Специальные средства
программирования ........................................................... 495

9.1. Функциональное программирование
специальной графики........................................................... 496

9.1.1. Пример программирования графической задачи .......... 496

9.1.2. Задание функции для построения фрактала
Maнделброта ........................................................................... 497

9.1.3. Задание функции для построения модели деления
клеток ...................................................................................... 498

9.2. Подготовка пакетов расширений системы
Mathematica ............................................................................ 499

9.2.1. Типовая структура пакетов расширения ........................ 499

9.2.2. Средства создания пакетов расширений....................... 501

9.2.3. Текстовые сообщения и комментарии ........................... 501

9.2.4. Примеры подготовки пакетов расширений .................... 502

9.2.5. Подготовка пакетов применений ................................... 504

9.3. Отладка и трассировка программ .............................. 505

9.3.1. Некоторые правила культурного программирования ..... 506

9.3.2. Трассировка программных модулей .............................. 507

Содержание
26

9.3.3. Основные функции трассировки и отладки .................... 508

9.4. Новые средства программирования
в Mathematica 6 ...................................................................... 510

9.4.1. Динамическое изменение переменных и функция
Dymamic .................................................................................. 510

9.4.2. Динамический модуль DynamicModule .......................... 511

9.4.3. Функция сброса интерактивных изменений Deploy ............ 512

9.4.4. Модуль манипуляций Manipulate .................................... 512

9.4.5. Средства отладки программ и ноутбуков ....................... 513

9.5. Обзор пакетов расширения AddOn .......................... 518

9.5.1. Состав пакетов расширения AddOn систем
Mathematica 5.1/5.2 ................................................................. 518

9.5.2. Пакет алгебраических функций Algebra ......................... 520

9.5.3. Пакет вычислительных функций Calculus ....................... 523

9.5.4. Функции дискретной математики – пакет DisсreteMath..... 527

9.5.5. Функции вычислительной геометрии ............................. 529

9.5.6. Функции геометрических расчетов – пакет Geometry .... 532

9.5.7. Расширение в теории чисел – пакет NumberTheory ....... 535

9.5.8. Функции численных расчетов – расширение
NumberMath ............................................................................ 540

9.5.9. Функции работы со звуком пакета Miscellaneous ........... 545

9.5.10. Функции для работы с географическими объектами.... 551

9.5.11. Физические и химические данные ............................... 556

9.5.12. Задание данных только вещественного типа –
RealOnly ................................................................................... 561

9.5.13. Пакет расширения с утилитами – Utilities ..................... 562

9.6. Данные о других средствах расширения ................. 566

Содержание
27

Глава 10
Mathematica 7 – новые возможности ....................... 57

10.1. Пути развития новых версий систем
Mathematica ............................................................................ 572

10.1.1. Области применения систем Mathematica 6/7 ............. 572

10.1.2. Новые возможности системы Mathematica 7 ................ 573

10.2. Новинки интерфейса Mathematica 7 ....................... 574

10.2.1. Особенности интерфейса системы Mathematica 7 ....... 574

10.2.2. Работа со справкой Mathematica 7 ............................... 575

10.2.3. Изменение предпочтений и настроек
в Mathematica 6/7 .................................................................... 578

10.2.4. Особенности ноутбуков системы Mathematica 7 .......... 580

10.3. Математические данные в Mathematica 6/7 .......... 582

10.3.1. Основные типы математических данных ...................... 582

10.3.2. Функция GraphData с данными по графам.................... 583

10.3.3. Функция KnotData с данными об узлах ......................... 583

10.3.4. Функция LatticeData с данными по решеткам ............... 584

10.3.5. Функция PolyhedroneData с данными о полиэдрах ....... 585

10.3.6. Функция ExampleData с данными о примерах .............. 586

10.3.7. Экспорт и импорт математических и графических
объектов .................................................................................. 586

10.3.8. Специальные форматы графов в Mathematica 6/7 ....... 587

10.3.9. Интегрированные данные в Mathematica 6/7 ............... 588

10.4. Некоторые новые математические
возможности .......................................................................... 590

10.4.1. Визуализация содержимого матриц ............................ 590

1

Введение
28

10.4.2. Разреженные массивы (SparceArray) и матрицы .......... 591

10.4.3. Некоторые другие матричные функции ........................ 592

10.4.4. Новые математические функции в Mathematica 7 ........ 593

10.5. Расширение возможностей
решения дифференциальных уравнений ........................ 595

10.5.1. Еще о решении дифференциальных уравнений
в численном виде .................................................................... 595

10.5.2. Задание решения дифференциальных уравнений
в виде модуля или функции пользователя ............................... 597

10.5.3. Пример решения дифференциального уравнения
второго порядка с двумя граничными условиями .................... 598

10.5.4. Улучшение визуализации фазовых траекторий ............ 599

10.5.5. Пример решения ДУ ВандерПоля
с применением средства Equation Trekker ............................... 600

10.5.6. Еще о визуализации решений
дифференциальных уравнений ............................................... 602

10.6. Примеры построения ноутбуков
для Mathematica 6/7.............................................................. 603

10.6.1. О применении систем Mathematica
в решении задач моделирования ............................................ 603

10.6.2. Моделирование емкостного релаксатора
на лавинном транзисторе ........................................................ 604

10.6.2. Моделирование цепи на туннельном диоде ................. 607

10.6.3. Спектральный анализ и синтез сложных сигналов ....... 612

Список литературы ........................................................... 619

Введение

Первые попытки создания компьютерных программ для аналитических вычислений были предприняты еще на первых ламповых ЭВМ. Но их технические возможности (в частности, ничтожно малый по нынешним временам объем памяти и
низкая скорость вычислений) не позволили этому направлению развиваться всерьез и дать практические, а не только абстрактные, результаты. Поэтому говорить
о появлении реальных систем компьютерной алгебры стало возможным только
после появления ЭВМ третьего поколения класса «Мир2» и «Мир3», созданных
научной школой академика В. М. Глушкова. Эти ЭВМ, увы, тоже с довольно
скромными техническими характеристиками, имели язык программирования
Аналитик, поддерживающий аналитические вычисления  [1].
Однако массовое развитие компьютерная алгебра получила после появления
программируемых микрокалькуляторов и персональных компьютеров, выполненных на интегральных схемах большой степени интеграции (БИС) [2]. Это
случилось уже в 80–90х годах прошлого века. Тогда  уже появились первые графические калькуляторы с ориентацией на научные расчеты и с системами символьных вычислений [7, 8] и первые книги по средствам персональных массовых
вычислений и компьютерной алгебре [2–7, 9, 10]. Появилось и множество разработок коммерческих систем компьютерной математики (СКМ), описанных в первой обобщающей монографии по этому направлению [8] и во множестве книг
[8–21, 26–33].
Побудительным мотивом к подготовке этой книги стало появление новейшей
версии системы Mathematica – шестой и отсутствие в нашей литературе книг по
ней и даже по двум предшествующим реализациям этой системы (Mathematica 5.1 и Mathematica 5.2). Система Mathematica изначально была лидером среди
систем компьютерной алгебры. Версии Mathematica 5.1/5.2, ныне самые известные и популярные среди пользователей системами этого класса, были направлены на сохранение этого лидерства.
Однако новейшая версия Mathematica 6 – это уже не просто лидер. Это поистине революционный программный продукт с огромным числом новаций, выдвигающих систему в особое положение, и придающий ей возможности, которые,
скорее всего, покажутся фантастическими для многих пользователей системами
компьютерной математики! Это касается новаций интерфейса документов системы, высочайшей скорости вычислений и огромного набора полезных функций.
К сожалению, современные версии системы Mathematica в русскоязычной литературе описаны очень мало. Так, из ряда книг [23–32] только три [29–30] содержат описание уже изрядно устаревшей версии Mathematica 5. Книг по версиям
Mathematica 5.1/5.2/6 до настоящего времени не было, хотя каждая очередная
версия вела к существенному обновлению системы. Особенно существенным
было отсутствие книг по основам программирования в системах класса Mathematica.

Введение
30

Данная книга впервые описывает основы программирования и применения
трех последних версий систем компьютерной алгебры и компьютерной математики – Mathematica 5.1/5.2/6. Они созданы фирмой Wolfram Research, Inc. (США).
В ней автор книги прошел научную стажировку (рис. 0.1). Многие материалы,
полученные во  время этой стажировки, включены в данную книгу.

Рис. 0.1. Автор книги В. Дьяконов (в центре)
с  главой фирмы С. Вольфрамом (справа)
и одним из ведущих менеджеров Р. Гермундсоном (слева)
на международной конференции по MathML (США)

Особенностью этой книги, в отличие от ближайшей к ней по тематике книги
автора [29], является то, что она в первую очередь ориентирована на программистов и описывает систему Mathematica как мощный профессиональноориентированный на математические и научнотехнические расчеты язык программирования сверхвысокого уровня. Огромное число встроенных средств вычислений
позволяет решать подавляющее большинство задач на языке Mathematica, предельно приближенном к обычному языку математических вычислений. Пользователь начинает программировать в среде Mathematica, фактически, начиная
с первых страниц книги. Но книга полезна и обычному пользователю, даже не
знакомому с программированием.
Это далеко не первая книга автора по СКМ, объединяющим средства компьютерной алгебры и численных расчетов. За многие годы работы в области компьютерной математики автором опубликовано около полусотни книг практически по
всем версиям систем компьютерной математики. В списке литературы данной

Введение
31

книги указаны только первые и последние (на момент завершения рукописи этого
труда) книги по таким широко известным системам, как Mathcad, Maple, MATLAB,
Derive и др. [1021].
Серьезное знакомство автора со всеми СКМ позволило сделать вывод, что две
системы – Mathematica и Maple стали бесспорными лидерами среди систем, ориентированных на аналитические расчеты. Они как пара лидирующих спортсменов, попеременно вырывающихся вперед. В наше время есть множество серьезных оснований считать, что Mathematica 6 в настоящее время явно вышла на
первое место. И серьезные пользователи СКМ должны учитывать это новое важное обстоятельство.
За рубежом система Mathematica широко применяется не только в научнотехнических и математических расчетах, но и в преподавании многих дисциплин
в университетах, вузах и даже школах [5876]. Новые потрясающие возможности
визуализации вычислений (в том числе графической и динамической) резко расширяют возможности последних версий Mathematica в сфере образования.
К сожалению, что отмечалось, в нашей литературе системы Mathematica 5.1/
5.2/6 не были описаны и их новые возможности нашим читателям неизвестны.
Соответственно, место этих систем в нашей науке (в том числе технической) и
в нашем образовании объективно не оценено и неадекватно мировой значимости
этих систем. Этот серьезный пробел и призвана восполнить эта книга.
Материал данной книги дан так, что основная его часть может использоваться
пользователями любой версии системы Mathematica, начиная с объявленных в заголовке книги и даже более ранних версий. Новые возможности Mathematica 6,
которые отсутствуют в предшествующих версиях, выделены в отдельные разделы. Это позволяет избежать недоразумений, связанных с существенно разным
числом функций, операторов и команд в системах Mathematica 5.1/5.2 и Mathematica 6 (в Mathematica 6 число функций и команд только в ядре удвоилась) и
различной организацией доступа к ним.
В книге умеренного объема, такой как эта, просто физически невозможно описать все около 3000 функций системы Mathematica 6. Если отвести каждой функции и примерам по ней только по страничке, то даже краткий справочник только
по функциям системы имел бы свыше 3000–4000 страниц! Именно столько страниц (и даже больше) имеют в совокупности книги Михаила Трота – одного из
разработчиков системы Mathematica [73–76].
На роль подобных детальных справочников, для большинства пользователей
характерных большой информационной избыточностью, данная книга не претендует. Поэтому главным в ее написании было изучение основных функций системы и тщательный подбор тех из них, которые соответствуют тематике книги (математические и научнотехнические расчеты). Ответственность за удачу или
неудачу такого подбора лежит на авторе книги.
Разумеется, автором использовался материал по его предшествующим книгам
по системам Mathematica [26–29], который накапливался многие годы, материал
справок (увы, англоязычных) и полученная автором во время стажировки в Wolfram Research, Inc. обширная документация (в том числе электронная) по системе.

Введение
32

Однако во всех случаях речь идет не о формальном переводе справки или указанной документации, ввиду их огромного объема просто невозможного, а об их
творческой переработке. В список литературы данной книги включены только
книги по Mathematica 3 и более поздним версиям. Описание более ранних версий
в наше время уже неактуально.
Данная книга продолжает крупную серию книг автора, посвященных применению современных СКМ в массовых научнотехнических и учебных расчетах.
К их освоению и изучению автор пришел после многих лет работы с микрокалькуляторами и персональными компьютерами (ПК), что нашло отражение в первых
книгах автора [6,7] и в последующих. При написании этой книги использовался
опыт автора в подготовке этих книг и участие автора в подготовке ряда научных
конференций, например 8 конференций «Системы компьютерной математики и
их приложения», проведенных в Смоленском государственном университете. Это
позволило подготовить данную книгу достаточно быстро – до того, как могла бы
появиться новая версия системы Mathematica.
Автор благодарит корпорацию Wolfram Research, Inc., ее создателя и главного
разработчика систем класса  Mathematica С. Вольфрама (S. Wolfram) и одного из
ведущих сотрудников фирмы Wolfram О. Маричева за интерес, проявленный к работе автора, и прекрасные условия, созданные для стажировки автора на этой
фирме, что позволило собрать ряд бесценных сведений, многие из которых вошли
в эту книгу и до этого не публиковались.  Автор благодарит также менеджера фирмы Анну Форейман за помощь в работе и ряд других сотрудников Wolfram Research, Inc., охотно продемонстрировавших автору замечательные возможности
систем класса Mathematica. Некоторые из них описаны в данной книге.
С фирмой Wolfram Research, Inc., разработчиком математических систем Mathematica, вы можете связаться по адресу:
Wolfram Research, Inc
100 Trade Center Drive, Champaign, IL 61820, USA.
http://www.wolfram.com
Email: info@wri.com
Тел.: 2173980700. Факс: 2173980747
С автором можно связаться по электронной почте vpdyak@keytown.com.

Глава 1

Интерфейс пользователя
и работа с Mathematica 5/6

1.1. Пуск системы и начало
работы с ней .............................. 34
1.2. Работа с файлами (File) ....... 40
1.3. Редактирование
документа (Edit) ......................... 44
1.4. Работа с ячейками (Cell) ...... 50
1.5. Операции форматирования
ячеек (Format) ............................ 55
1.6. Ввод элементов
документов (Input) ..................... 58
1.7. Управление работой ядра
системы (Kernel) ........................ 65
1.8. Операции поиска
и замены .................................... 68
1.9. Управление окнами
(Window) .................................... 69
1.10. Работа
с информационными
ресурсами системы
Mathematica ............................... 70
1.11. Возможности системы
Mathematica 5.2 ......................... 74
1.12. Интерфейс пользователя
системы Mathematica 6 .............. 78
1.13. Особенности системы
Mathematica 6 ............................ 83

Интерфейс пользователя и работа с Mathematica 5/6
34

1.1. Пуск системы и начало работы с ней

1.1.1. История появления системы
Mathematica и ее место

Система Mathematica 1, появившаяся в 1988 г., стала первой серьезной системой
компьютерной алгебры  [22]. Очередная версия Mathematica 2 могла уже работать
под операционные системы MSDOS и Windows 3.0 [23–26]. Системы вызвали
живейший интерес со стороны учащихся, преподавателей вузов и университетов,
аспирантов, инженеров и научных работников во всем мире. В том числе и в России, хотя у нас этот период совпал с распадом СССР и разрушением основ советской науки.
Версии Mathematica 3/4 [26, 27] обеспечивали системе лидирующее место среди систем компьютерной математики конца XX века – начала XXI века. Уже они
обеспечивали практическое решение огромного числа математических, физических и научнотехнических задач [34–57]. Число операторов и функций в ядре
систем было доведено до более чем 1000, в пакетах расширения до 800.
Однако в начале XXI века Mathematica стала испытывать острую конкуренцию со стороны других систем компьютерной математики. В области компьютерной алгебры в лидеры пробилась система Maple [20, 21], созданная  изначально
в университетских кругах и быстро развивающаяся (последняя версия этой системы – Maple 11). Кстати, за подготовку книги [21] по Maple 9.5/10 автор стал
победителем всероссийского конкурса «Лучшая научная книга 2006», проведенного фондом развития общественного образования, в номинации «Информационные технологии».
Среди систем для численных расчетов и моделирования ведущее место заняла
мощная матричная система MATLAB с пакетом блочного математического моделирования Simulink. Для более или менее полного ее описания пришлось подготовить серию из пяти книг [13–17]. Большую известность получила система
Mathcad с ее бесподобным математически ориентированным интерфейсом и тщательным отбором входящих в ее ядро функций [10, 11]. Определенную часть рынка заняли малые системы Derive [19, 20] и MuPAD [8], созданные для целей образования.
В связи с этим лидирующее место системы Mathematica в России и в странах
СНГ стало менее определенным. Нередко начинающие пользователи отказывались от Mathematica просто потому, что им был плохо понятен язык функционального программирования этой системы, их пугали необычность фиксации
ввода клавишами Shift+Enter (обычно ввод фиксируется клавишей Enter), необычные имена функций, например Sin[x], с указанием параметров в квадратных
скобках, и прочие неожиданные для них «мелочи». Но главное – первые версии
Mathematica имели малое число практических примеров применения системы.
Кроме того, многим казалось, что система слабо и долго модернизируется – смена

К покупке доступен более свежий выпуск Перейти