Дипломная работа: Создание с помощью средств пакета Maple демонстрационных материалов в виде библиотеки процедур к уроку информатики по теме "Кодирование звука"

Программа Maple (последняя версия 10.02) — своего рода патриарх в семействе систем символьной математики и до сих пор является одним из лидеров среди универсальных систем символьных вычислений. Она предоставляет пользователю удобную интеллектуальную среду для математических исследований любого уровня и пользуется особой популярностью в научной среде. Отметим, что символьный анализатор программы Maple является наиболее сильной частью этого ПО, поэтому именно он был позаимствован и включен в ряд других CAE-пакетов, таких как MathCad и MatLab, а также в состав пакетов для подготовки научных публикаций Scientific WorkPlace и Math Office for Word.

Пакет Maple — совместная разработка Университета Ватерлоо (шт. Онтарио, Канада) и Высшей технической школы (ETHZ, Цюрих, Швейцария). Для его продажи была создана специальная компания — Waterloo Maple, Inc., которая, к сожалению, больше прославилась математической проработкой своего проекта, чем уровнем его коммерческой реализации. В результате система Maple ранее была доступна преимущественно узкому кругу профессионалов. Сейчас эта компания работает совместно с более преуспевающей в коммерции и в проработке пользовательского интерфейса математических систем фирмой MathSoft, Inc. — создательницей весьма популярных и массовых систем для численных расчетов MathCad, ставших международным стандартом для технических вычислений.

Maple предоставляет удобную среду для компьютерных экспериментов, в ходе которых пробуются различные подходы к задаче, анализируются частные решения, а при необходимости программирования отбираются требующие особой скорости фрагменты. Пакет позволяет создавать интегрированные среды с участием других систем и универсальных языков программирования высокого уровня. Когда расчеты произведены и требуется оформить результаты, то можно использовать средства этого пакета для визуализации данных и подготовки иллюстраций для публикации. Для завершения работы остается подготовить печатный материал (отчет, статью, книгу) прямо в среде Maple, а затем можно приступать к очередному исследованию. Работа проходит интерактивно — пользователь вводит команды и тут же видит на экране результат их выполнения. При этом пакет Maple совсем не похож на традиционную среду программирования, где требуется жесткая формализация всех переменных и действий с ними. Здесь же автоматически обеспечивается выбор подходящих типов переменных и проверяется корректность выполнения операций, так что в общем случае не требуется описания переменных и строгой формализации записи.

Пакет Maple состоит из ядра (процедур, написанных на языке С и хорошо оптимизированных), библиотеки, написанной на Maple-языке, и развитого внешнего интерфейса. Ядро выполняет большинство базовых операций, а библиотека содержит множество команд — процедур, выполняемых в режиме интерпретации. Интерфейс Maple основан на концепции рабочего поля (worksheet) или документа, содержащего строки ввода-вывода и текст, а также графику.

Работа с пакетом происходит в режиме интерпретатора. В строке ввода пользователь задает команду, нажимает клавишу Enter и получает результат — строку (или строки) вывода либо сообщение об ошибочно введенной команде. Тут же выдается приглашение вводить новую команду и т.д. [4]

Сравнительный анализ систем компьютерной математики

Критерий сравнения Mathcad MATLAB Mathematica Maple
Интерфейс Типа "wysiwyg". Набор выражений происходит от позиции курсора. Выражений с клавиатуры приходится вводить относительно немного, так как в командном окне имеются различные палитры инструментов. Три окна: командное окно, все переменные и их типы и окно подсказок. Есть строка приглашения, обозначается знаком ">>". В отличие от Mathcad все функции приходится вводить с клавиатуры. Строка приглашения в отличие от MATLAB разделена на две области: ввода и вывода, которые составляют вместе область всего выражения. Область ввода можно редактировать. Также имеется палитра с греческими буквами, различными символами и панель матанализа. Интерфейс пользователя поддерживает концепцию рабочих листов ("worksheets"), которые объединяют текст, входные команды, вывод и графику в одном документе/ Программа позволяет одновременно работать с несколькими рабочими листами и устанавливать между ними динамические связи, то есть переводить вычисления с одного листа на другой.
Работа с массивами и матрицами Предоставлен достаточный набор функций для проведения различных операций с матрицами и векторами. Некоторые операции можно брать с соответствующей палитры, другие - вводить с клавиатуры или вставлять из меню Вставка-функции. Аналогично Mathematica матрицы и вектора формируются при помощи списка элементов. Функции вводятся с клавиатуры. Многомерный набор данных создается с помощью списка, который вводится с клавиатуры. Также с клавиатуры вводятся и функции для работы с матрицами и векторами. Аналогично Mathematica матрицы и вектора формируются при помощи списка элементов. Функции вводятся с клавиатуры.
Решение уравнений Различает решение уравнений и систем уравнений. Команды можно набирать с клавиатуры, можно вставлять из меню. Решает уравнения и системы уравнений функцией с различными параметрами. Содержит несколько функций для решения уравнений и систем уравнений. Функции могут находить корни уравнений с параметром. Также имеется функция для особых решений. Решает уравнения и системы уравнений
Математические операторы Приведен в таблице целый ряд операторов, как простых типа сложения, так и вычисления суммы, произведения, интегралов и производных и т.д., которые можно вводить с клавиатуры или вставлять из соответствующей палитры. Здесь в отличие от Mathcad все операторы вводятся с клавиатуры в виде отдельных символов и функций. Дан относительно подробный список операторов. Также, как и в MATLAB операторы приходится вводить с клавиатуры, но некоторые можно найти и на палитре инструментов. Помимо функций в математических системах для записи математических выражений используются специальные знаки — операторы. К примеру, вычисление квадратного корня часто записывается с помощью его специального знака — V. Достаточно хорошо известны операторы сложения +, вычитания -, умножения *, деления / и некоторые другие. Операторы обычно используются с операндами в виде констант или переменных, например в записи 2* (3+4) числа 2, 3 и 4 — это операнды, а знаки * и + — операторы. Скобки используются для изменения порядка выполнения операций. Так, без них 2*3+4=10, тогда как 2*(3+4)=14, поскольку вначале вычисляется выражение в скобках.
Встроенные функции Построены по принципу всех функций: название функции и параметры в скобках. Можно выделить функции упрощения выражения, раскрытия скобок, тригонометрические и целый ряд других. Здесь в основном используются только функции, которые вводятся с клавиатуры. Приведено множество функций различного назначения с различным числом параметров. Помогают пользователю в решении различного характера задач.

Maple 7 имеет множество встроенных функций, включенных в его ядро и в пакеты.

Функция в выражениях задается вводом ее имени и списка параметров функции (одного или нескольких), заключенного в круглые скобки, например sqrt(2) задает функцию вычисления квадратного корня с параметром 2 (численной константой). Основным признаком функции является возврат значения в ответ на обращение к ней по имени (идентификатору) с указанием списка параметров функции.

Программирование Предоставлены шаблоны для создания программ и подпрограмм. В качестве выходного значения указывается последнее значение, вычисленное программой. Также внутри программы можно использовать функции, описанные ранее. Программы пишутся в том же файле, что и все вычисления. Здесь программы создаются в виде отдельных М - файлов. Если написать программу какой-нибудь функции, то эту функцию можно будет использовать как стандартную. Также в программу можно вставлять комментарии. Можно создавать различные функции и оперировать с ними. Позволяет внутри одного блока ввода создавать программы. Результатом будет последнее вычисленное значение. В отличие от Mathcad, где программы пишутся "в столбик", здесь пишутся в строку. Есть возможность создавать собственные функции, процедуры на языке программирования, напоминающего Паскаль.
Графические возможности Графики строятся на основе имеющихся шаблонов. Основные виды: график в декартовой плоскости, в полярной системе координат, трёхмерный в виде гладкой поверхности, в виде контурных кривых и т.д. Сначала задаётся функция графика, диапазон, затем строится сам график, который можно редактировать. Функция графика создаётся из командной строки. Графики создаются на формах в определённой системе координат. В команде построения можно указывать свойства графика. Функция, которая рисует график, заканчивается на "PLOT" в двухмерном случае, и "PLOT 3D" в трёхмерном случае. Чтобы построить график, нужно сначала задать функцию. Также можно и редактировать график. В библиотеке ядра Maple имеются всего четыре графические команды: plot – для вывода плоской или 2D-графики, plot3d – для вывода пространственной или 3D-графики, smartplot и smartplot3d – для “быстрого” вывода графики. Первые две команды предоставляют пользователю обширные возможности визуализации различных объектов и простые способы задания их свойств. Последнее обстоятельство достигается за счет наличия тщательно продуманной системы опций – необязательных аргументов plot и plot3d.. Так же в среде Maple можно создать анимацию.

§1.2 Maple-язык и его синтаксис

Знаки алфавита

Язык Maple (или Maple-язык) является одновременно входным языком общения с Maple 7 и языком ее программирования. Входящие в него средства (прежде всего операторы и функции) подобраны настолько полно и удачно, что при решении подавляющего большинства типовых математических задач от пользователя не требуется знаний даже основ программирования. Для решения нужной задачи обычно достаточно составить алгоритм и подобрать набор нужных для его реализации функций и иных средств Maple-языка.

В то же время Maple-язык — один из самых мощных языков программирования математических задач, содержащий почти 3000 операторов, команд и функций, входящих в ядро, основную библиотеку и пакеты функций Maple 7. При этом относящаяся к традиционному программированию часть Maple-языка реализована с помощью довольно скромного набора специальных знаков и зарезервированных слов.

Большинство функций Maple 7 (в частности, все, входящие в пакеты) написаны на этом языке. Поэтому знание этого языка является определяющим в серьезном изучении Maple. Ниже Maple-язык описывается как типичный язык программирования.

Алфавит Maple-языка содержит 26 малых латинских букв (от а до z), 26 больших латинских букв (от А до Z), 10 арабских цифр (от 0 до 9) и 32 специальных символа (арифметические операторы +, -, *, /, знак возведения в степень ж и др.). Все они будут рассмотрены в данной главе. Имеется пять пар альтернативных символов (означающих одно и тоже):

и** [и (| ] и |) {и (* } и *)

К специальным одиночным и составным знакам относятся элементы синтаксиса языка:

· % — системная переменная, хранящая результат предшествующей операции;

· : — фиксатор выражения, предотвращающий вывод результата вычисления в ячейку вывода;

· ; — фиксатор выражения, дающий вывод результата вычисления в ячейку вывода;

· # — указатель программного комментария;

· " — ограничитель строки (например, 'string');

· := — оператор присваивания (например,х:=5);

· : ; — пустой оператор;

· :: — указатель типа переменной (например, n::integer или z: -.complex);

· \ — знак обратного деления, который имеет множественные значения в зависимости от контекста (см. справку по этому знаку - backslash).

Комментарии в программе, не выводимые в ячейки вывода, задаются после символа #. В них допустимо использовать все символы кодовых таблиц, что важно при вводе русскоязычных комментариев, использующих символы кириллицы. Применение последних для идентификаторов (имен) объектов недопустимо.

Зарезервированные слова

Зарезервированные слова используются для создания условных выражений, циклов, процедур и управляющих команд. Список 42 зарезервированных слов Maple 7 дан ниже.

and break by catch description
do done el if else end
error export fi finally for
from global if in intersect
local minus mod module next
not od option options or
proc quit read return save
stop then to try union
use while

Совокупность правил, по которым записываются определения всех объектов Maple-языка, называется его синтаксисом. Некоторые особенности синтаксиса полезно знать уже в начале освоения Maple. Например, то что знак - (минус) имеет двойное значение. Применительно к одному числу, переменной или выражению он меняет их знак. Однако два знака минус подряд (например, в записи - 3) задавать нельзя. Другое назначение знака минус — создание операции вычитания, например 5-2 илиа-b. Соответственно двойное назначение имеет и знак•+, причем число без знака считается положительным, так что +5=5.

При вводе действительных чисел с порядком для указания порядка используется символ * (например, 2*1(Г100 или 2*1(Г-100). Для возведения числа в степень наряду с оператором *• можно использовать и составной оператор** (две звездочки подряд). Для изменения общепринятого приоритета вычислений используются круглые скобки, в них же задаются параметры функций и процедур. Более подробно синтаксис Maple-языка рассматривается ниже.

Некоторые операторы представлены двумя символами — например, оператор присваивания переменным их значения: = содержит двоеточие и знак равенства. В таких операторах между символами недопустим знак пробела. Однако его можно использовать между отдельными частями выражений — так, (а+b)/с эквивалентно (а + b) / с.

По набору операторов и функций Maple-язык намного превосходит любой универсальный язык программирования. Это позволяет наряду с обычными программными конструкциями задавать множество специальных конструкций, подчас резко упрощающих запись математических выражений. К примеру, возможна работа со списками имен функций. Язык Maple имеет множество операций над символьными выражениями и гибкий аппарат создания и преобразования типов данных и результатов вычислений.

К-во Просмотров: 258
Бесплатно скачать Дипломная работа: Создание с помощью средств пакета Maple демонстрационных материалов в виде библиотеки процедур к уроку информатики по теме "Кодирование звука"