- •Пакет прикладных программ mathematica Инструкция пользователя
- •1. Общие сведения. Ядро и интерфейс пакета Математика
- •2. Точные и приближенные вычисления. Численные и аналитические операции
- •3. Рабочий документ и ячейки. Основные команды
- •4. Сеанс работы в системе Математика. Глобальный характер данных.
- •5. Правила написания. Основные встроенные функции.
- •Примеры выражений
- •Формы обращений к функциям
- •Нескольких аргументов
- •7. Циклические операции
- •Логические операторы
- •7.4. Функция If
- •7.5. Логические выражения
- •8. Функции пользователя. Составление программ
- •8.1. Функции пользователя. Описания типов аргументов
- •8.2. Немедленное и задержанное присваивание
- •8.3. Альтернативные определения функций
- •8.4. Составление программ. Глобальные и локальные переменные
- •8.5. Прерывание вычислений
- •9. Списки
- •9.1. Создание списков. Обращение к элементам списков
- •9.2. Преобразование списков
- •9.3. Матричные функции
- •10. Массивы
- •11. Основные типы графиков
- •11.1. Двумерные графики
- •Show[GraphicsArray[{g1, g2,…}], options]
- •11.3. Изображения трехмерных объектов
- •11.4. Анимация
- •12. Функция Manipulate
- •13. Аналитические операции. Интерполяция. Решение уравнений
- •13.1. Аналитические операции
- •13.2. Интерполяция
- •13.3. Решение алгебраических уравнений
- •13.4. Решение дифференциальных уравнений
- •14. Преобразование выражений
- •14.1. Стандартная форма выражений
- •Примеры выражений
- •14.2. Обращение к элементам выражений
- •14.3. Представление выражения в виде дерева
- •14.4. Операции преобразования выражений
- •14.5. Повторное выполнение операций
- •14.6. Анонимные функции
- •14.7. Функциональные операторы Outer и Inner
- •Вопросы
4. Сеанс работы в системе Математика. Глобальный характер данных.
В течение сеанса работы Математика нумерует все обращения к ядру пакета – все входные и выходные выражения. Комментарии не нумеруются. Эта нумерация – сквозная, проходящая через все файлы – рабочие документы, с которыми ведется работа. Если, например, в одном рабочем документе мы произвели обработку десяти входных выражений и затем обратились к новому файлу, то первому подсчитываемому выражению в новом документе присваивается номер 11. Если затем вернемся в прежний файл и пересчитаем вновь какое-либо выражение из первых десяти, то теперь этому выражению присвоится номер 12. Таким образом, хотя Математика и помнит результаты всех вычислений данного сеанса, но номера ячеек на экране могут быть вразнобой. Мы можем вновь упорядочить нумерацию, пересчитав заново все ячейки. Для этого можно воспользоваться командой Evaluate Notebook из раздела меню Evaluation, или выделить все ячейки с помощью клавиш Ctrl+A и запустить их на счет. После такого пересчета нумерация будет упорядочена, но будет начинаться, естественно, не с единицы.
Обращаться к полученным ранее результатам можно с помощью команд:
% - обращение к последней подсчитанной ячейке,
%% - обращение к предпоследней подсчитанной ячейке и т.д.
Из сказанного ясно, что последняя подсчитанная ячейка - это не обязательно самая нижняя на экране, а предпоследняя - не обязательно вторая снизу.
Существует также обращение к ячейкам непосредственно по их номеру:
%n,
где n - номер ячейки. Следует при этом не забывать, что при повторных пересчетах номер ячейки изменяется, так что в обращении к пересчитанной ячейке нужно изменить номер. С другой стороны, результаты всех обращений к ядру хранятся в течение всего сеанса под их первоначальными номерами, поэтому в любой момент можно обратиться к этим результатам по их номеру, даже если соответствующие ячейки к этому моменту уже удалены с экрана.
Для обращения к результатам расчетов можно также пользоваться идентификаторами. Например, обозначим идентификатором "a" десятичный логарифм числа 2; для этого запишем выражение: a=Log[10, 2]//N .
В этом выражении знак равенства описывает операцию простого присваивания. Нажав затем клавиши Shift+Enter, получим значение логарифма: 0.30103. Теперь мы можем вызывать это число из любого рабочего документа (в течение данного сеанса работы), просто написав идентификатор "a". Изменить значение введенного идентификатора можно также из любого рабочего документа. Если идентификатор в дальнейшем не понадобится, его значение можно стереть с помощью команды "Clear[идентификатор]". Узнать значение любого идентификатора позволяет команда: "?идентификатор".
Приведенные рассуждения иллюстрируются следующим примером рабочего сеанса. Вначале, находясь в рабочем документе Newnb-1, присвоим идентификатору "a" значение 5. Затем перейдем в новый файл Newnb-2 и убедимся, что и в этом файле a=5. После этого находясь в файле Newnb-2, сотрем значение а с помощью команды Clear[a]. Возвратившись теперь в файл Newnb-1, убедимся, что значение идентификатора стерто, однако значение 5 в ячейке номер 1 сохранилось.
Итак, результаты расчетов, проводимых в течение сеанса работы, носят глобальный характер:
-
все результаты нумеруются и сохраняются в течение всего сеанса работы,
-
результаты расчетов доступны из любого рабочего документа либо по номеру ячейки, либо по имени идентификатора,
-
Значения, присвоенные идентификаторам, могут быть изменены (или стерты) из любого рабочего документа.
В связи с глобальным характером результатов следует внимательно относиться к выбору идентификаторов. При одновременной работе с несколькими файлами может возникнуть путаница, если разные данные имеют одинаковые обозначения. Часто Математика информирует о непонятных на первый взгляд ошибках, возникающих из-за того, что разные по характеру данные обозначены одинаково. Разобраться в таких ошибках помогает команда "?идентификатор", позволяющая узнать, что скрывается за данным именем в текущий момент. Локализовать, а иногда и устранить ошибку позволяет повторный пересчет всего рабочего документа; пересчет можно запустить с помощью команды меню Evaluation – Evaluate Notebook. Более радикальный способ – перезагрузка пакета Математика. Для этого достаточно закрыть ядро пакета (Quit Kernel) и открыть его вновь.