Компьютерная математика и пакет Maple

уже были выложены здесь

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


Функции пользователя
Функции пользователя Упрощенные функции пользователя Хотя ядро Maple 7, библиотека и пакеты содержат свыше 3000 функций, всегда может оказаться, что именно нужной пользователю (и порою довол...
Шаг 1
Шаг 1 Заданный таким образом объект все же не является полноценной функцией пользователя, и прежде всего потому, что в нем используются только глобальные переменные (х и у) и нет объявленного...
Статус переменных в процедурах и циклах
Статус переменных в процедурах и циклах Переменные, которые указываются в списке параметров (например, г, в нашем случае), внутри процедуры являются локальными. Это означает, что изменение их з...
Объявления переменных локальными с помощью оператора local
Объявления переменных локальными с помощью оператора local Если в теле процедуры имеются операции присваивания для ранее определенных (глобальных) переменных, то изменение их значений в ходе вы...
Объявления переменных глобальными с помощью слова global
Объявления переменных глобальными с помощью слова global Говорят, что запретный плод сладок! Что бы ни говорили о нежелательности - работы с глобальными переменными, бывает, что их применение ж...
Функция вывода сообщений об ошибках ERROR
Функция вывода сообщений об ошибках ERROR При профессиональной подготовке процедур пользователь должен предусмотреть их поведение при возможных ошибках. Например, если он готовит процедуру или...
Ключи в процедурах
Ключи в процедурах В объявление процедуры можно включить ключевые слова, вводимые словом options opseq Иногда их называют расширяющими ключами. Предусмотрены следующие ключи:  arrow...
Шаг 1
Шаг 1 Ключ trace Ключ trace задает вывод отладочной информации: > о:=ргос(х,у) option trace, arrow; x-sqrt(y) end:   о := proc (x, y) option trace, arrow, x - sqrt(y)...
Общая форма задания процедуры
Общая форма задания процедуры Выше мы рассмотрели основные частные формы задания процедур. Все они могут быть объединены в общую форму задания процедуры: name:-proc(<argseq>) # объяв...
Средства контроля и отладки процедур
Средства контроля и отладки процедур Большая часть функций и операторов системы Maple 7 реализована в виде процедур, написанных на Maple-языке программирования. Благодаря возможности их просмот...
Шаг 1
Шаг 1 Действие функции трассировки отменяется командой untrace:...
Шаг 2
Шаг 2 При отладке алгоритмов выполнения вычислений надо тщательно следить за сообщениями об ошибках. Для этого в Maple предусмотрены функция traceerr и системная переменная  lasterr, в к...
Работа с отладчиком программ
Работа с отладчиком программ В большинстве случаев составители программ (процедур) редко прибегают к пошаговой их отладке. Средства общей диагностики Maple 7 развиты настолько хорошо, что позво...
Операции ввода и вывода
Операции ввода и вывода Считывание и запись программных модулей В уроке 2 рассматривалась работа с файлами документов. Вводимые в текущий документ программные модули хранятся вместе с ним, та...
Создание своей библиотеки процедур
Создание своей библиотеки процедур Если приведенные выше примеры составления процедур кажутся вам простыми, значит, вы неплохо знаете программирование и, скорее всего, уже имеете несколько поле...
Шаг 1
Шаг 1 Можно построить графики введенных процедур-функций. Они представлены на Рисунок 7,4....
Шаг 2
Шаг 2 Рисунок 7.4. Построение графиков процедур-функций f1, f2 и f3 С помощью функции with можно убедиться, что библиотека mylib действительно содержит только что введенные в нее процедуры...
Основной способ задания функции пользователя
Основной способ задания функции пользователя Более гибкий способ задания полноценных функций пользователя базируется на применении функционального оператора. При этом используется следующая кон...
Шаг 1
Шаг 1 Нетрудно заметить, что при вычислении функции m(х.у) переменные х и у имели значения 3 и 4, однако за пределами функции они сохраняют нулевые значения, заданные им перед введением опред...
Шаг 2
Шаг 2 Последний пример показывает возможность проведения символьных операций с функцией пользователя....
Запись и считывание данных
Запись и считывание данных Обширные возможности Maple 7 делают привлекательным применение этой программы для автоматической обработки данных, поступающих от каких-либо экспериментальных установ...
Шаг 1
Шаг 1 Maple 7 имеет также типичные файловые операции:  writeto — запись в файл;  appendto — добавление к файлу;  open — открытие файла;  close — закрытие файла; &nb...
Вывод в специальных форматах
Вывод в специальных форматах Вывод в формате LaTeX Maple 7 имеет ряд средств для общения с другими программами. Часть из них, в основном относящаяся к обмену через файлы, уже была описана. Од...
Генерация кодов на языке Фортран
Генерация кодов на языке Фортран Язык Фортран вот уже многие десятилетия используется для программирования вычислительных задач. Накоплены обширные библиотеки решения таких задач на Фортране. П...
Генерация кодов на языке С
Генерация кодов на языке С Язык С (Си) также широко используется для решения вычислительных задач. Достаточно отметить, что сама система Maple 7 создана на языке С. Для генерации кодов на языке...
Дополнительные возможности Mapleязыка
Дополнительные возможности Maple-языка Переназначение определений В большинстве случаев Maple-язык использует достаточно длинные идентификаторы для своих определений, например функций. Однако...
Шаг 1
Шаг 1 Для отмены переназначения, например BJ, используется та же функция alias с повтором переназначения: > a1ias(B>BJ): Fx > BJ(0,1.); BJ(0,1.) Обратите внимание на то, что BJ...
Модули
Модули Модули придают языку программирования Maple 7 некоторые свойства языков объектно-ориентированного программирования. Они служат для реализации абстрактного типа данных на основе инкапсуля...
Макросы
Макросы Макрос — это макрокоманда, короткая запись длинных определений. По сравнению с переназначениями макросы более гибки и могут использоваться для сокращения операций загрузки новых определ...
Внешние вызовы
Внешние вызовы Maple 7 имеет команду system(string), с помощью которой можно исполнить любую команду MS-DOS, записанную в виде строки string. Например, для форматирования гибкого диска из сре...
Шаг 1
Шаг 1 а...
Шаг 2
Шаг 2 б Рисунок 7.5. Результат выполнения команды форматирования гибкого диска...
Вызов внешних процедур написанных на языке С
Вызов внешних процедур, написанных на языке С Maple 7 имеет средства для вызова внешних откомпилированных процедур, написанных на языке С. Такая необходимость для подавляющего числа пользовател...
Что нового мы узнали?
Что нового мы узнали? В этом уроке мы научились:  Задавать функции пользователя.  Использовать условные операторы.  Применять циклы for и while.  Использовать операторы п...
Графическая визуализация результатов
Графическая визуализация результатов выполнения функций пользователя В ряде случаев весьма желательна визуализация результатов выполнения функций пользователя. Порой она может давать неожиданны...
Шаг 1
Шаг 1 а...
Шаг 2
Шаг 2 б Рисунок 7.1. Примеры задания функций пользователя двух переменных с построением их графиков ВНИМАНИЕ  При задании функций пользователя рекомендуется просмотреть их график...
Импликативные функции
Импликативные функции Другой важный класс функций, которые нередко приходится задавать, — импликативные функции, в которых связь между переменными задана неявно, в виде какого-либо выражения. С...
Шаг 1
Шаг 1 Для графической визуализации импликативных функций служит функция implicitplot пакета plots. На Рисунок 7.2 представлено задание двух импликативных функций и построение их графиков....
Шаг 2
Шаг 2 Рисунок 7.2. Задание двух импликативных функций и построение их графиков В данном случае задано построение двух эллипсов. Верхний — это окружность, сплюснутая по вертикали, а второй —...
Условные выражения
Условные выражения Для подготовки разветвляющихся программ в Maple-язык программирования включен оператор if, позволяющий создавать следующую конструкцию: if <Условие сравнения? then &...
Шаг 1
Шаг 1а...
Шаг 2
Шаг 2б...
Шаг 3
Шаг 3 в Рисунок 7.3. Применение конструкции с функцией if для моделирования сигналов К сожалению, функции на базе конструкции if не всегда корректно обрабатываются функциями символьной...
Циклы for и while
Циклы for и while Зачастую необходимо циклическое повторение выполнения выражения заданное число раз или до тех пор, пока выполняется определенное условие. Maple 7 имеет обобщенную конструкцию...
Шаг 1
Шаг 1 Этот пример имеет не более чем познавательное значение, поскольку для создания такой матрицы Maple 7 имеет функцию identity, с помощью которой функция array позволяет сразу создать еди...
Шаг 2
Шаг 2 В заключение отметим, что возможна упрощенная частная конструкция цикла типа while: while expr do statseq od: Здесь выражения statseq выполняются, пока выполняется логическое усл...
Операторы пропуска и прерывания
Операторы пропуска и прерывания Иногда бывает нужным пропустить определенное значение переменной цикла. Для этого используется оператор next (следующий). Приведенный ниже пример иллюстрирует п...
Процедуры и процедурыфункции
Процедуры и процедуры-функции Простейшие процедуры Процедурой называют модуль программы, имеющий самостоятельное значение и выполняющий одну или несколько операций, обычно достаточно сложных...
Шаг 1
Шаг 1 Примечание 1Примечание 1  После ввода заголовка процедуры под строкой ввода появляется сообщение: «Warning, premature end of input». Оно указывает на то, что ввод ли...
Оператор возврата значения RETURN
Оператор возврата значения RETURN Как отмечалось, процедуры, которые возвращают значение результата в ответ на обращение к ним, во многом тождественны функциям. Будем называть их процедурами-фу...
Шаг 1
Шаг 1 Параметром оператора RETURN может быть любое выражение. В Maple не принято выделять процедуры-функции в какой-то отдельный класс. Действует правило — если не использован оператор RETUR...








Начало