Содержание

Слайд 2

MAPLE

Преобразования чисел с разным основанием В Maple возможна работа с числами, имеющими различное

MAPLE Преобразования чисел с разным основанием В Maple возможна работа с числами,
основание. Помимо десятичных чисел (основание 10 – decimal) используются:
двоичные (основание 2 — binary),
восьмеричные (основание 8 — octal), - шестнадцатеричные (основание 16 — hex).
Функция convert позволяет легко преобразовывать форматы чисел.

Эта функция может преобразовывать в числа и строковые выражения.

Слайд 3

MAPLE

Наборы (множества) Любые выражения могут включаться также в наборы. Такие наборы в виде

MAPLE Наборы (множества) Любые выражения могут включаться также в наборы. Такие наборы
множеств создаются с помощью фигурных скобок { }. Отличительная черта множеств — автоматическое устранение из них повторяющихся по значению элементов. Кроме того, Maple расставляет элементы множеств в определенном порядке — числа в порядке увеличения значения, а символы и строки в алфавитном порядке. Для множеств нет строгого математического определения, и мы будем считать их наборами, удовлетворяющими перечисленным выше признакам. С помощью множеств, в частности, задаются системы уравнений.

Слайд 4

MAPLE

Списки выражений Для создания упорядоченных наборов — списков — служат квадратные скобки [

MAPLE Списки выражений Для создания упорядоченных наборов — списков — служат квадратные
]:
 > [10, 2+3, 4+4, 8, 5, 1]:
[10, 5, 8, 8, 5, 1]
Элементы списков преобразуются и выводятся строго в том порядке, в каком они были заданы. Списки широко применяются для задания векторов и матриц.
В ряде случаев, например при подготовке данных для двумерных графиков, возникает необходимость в подготовке парных списков — скажем, координат точек (х, у) графика. Для этого можно использовать функцию zip(f, u, v) или zip(f, u, v, d). Здесь f — бинарная функция, u, v — списки или векторы, d — необязательный параметр.

Слайд 5

MAPLE

Для создания векторов (одномерных массивов) и матриц (двумерных массивов) служит функция array.

MAPLE Для создания векторов (одномерных массивов) и матриц (двумерных массивов) служит функция
Обычно она используется в следующих формах:
- аrrау[а. .b,s1] — возвращает вектор с индексами от а до b и значениями в одномерном списке s1; - аrrау[а. .b,c. .d,s2] — возвращает матрицу с номерами строк от а до b, номерами столбцов от с до d и значениями в двумерном списке s2.

Двумерные списки часто путают с матрицами. Векторы и матрицы создаются с помощью функции array и являются отдельным типом данных. Элементами векторов и массивов могут быть константы, переменные, выражения, списки и иные объекты. Эти элементы являются индексированными переменными и их положение указывается индексами. Размерность массивов, создаваемых списками, не ограничена и массивы могут быть многомерными. Имеется множество функций для работы со списками, массивами и матрицами.

Слайд 6

MAPLE

Таблицы
Еще одним важным типом множественных данных являются таблицы. Они задают данные

MAPLE Таблицы Еще одним важным типом множественных данных являются таблицы. Они задают
с произвольной индексацией. Для создания таблиц служит функция table, которая при вызове в простейшем виде table[] создает шаблон пустой таблицы.
Пустая таблица резервирует память под данные. Когда параметром функции table является список выражений, он выводится в естественном порядке расположения элементов таблицы, но с произвольным порядком индексации.
Можно выделить отдельные компоненты таблицы и вывести значения и индексы таблицы с помощью функций entries и indices.

Слайд 7

MAPLE

Строки и комментарии Строковые данные Строки как тип данных — это просто цепочки символов.

MAPLE Строки и комментарии Строковые данные Строки как тип данных — это
Они обычно используются для создания текстовых комментариев. Строки должны каким-либо образом выделяться, чтобы Maple не отождествляла их с именами констант и переменных. Для этого строки-комментарии имеют внутренний разделительный признак, который устанавливается при их вводе (нажатием клавиши F5, которое приводит к исчезновению знака >).
В других случаях последовательность символов рассматривается как строка, если она заключена в обратные апострофы, то есть в знаки '. Два апострофа подряд формируют апостроф как знак символьной строки, например `abc``def ` дает строку abc`def. Любое математическое выражение может входить в строку и при этом не выполняется:
> '2+2 не всегда "четыре"'; 
2+2 не всегда 'четыре'
Неисполняемые программные комментарии Часто возникает необходимость в задании программных комментариев. Любой текст после знака # рассматривается как невыводимый (неисполняемый) программный комментарий — даже если это математическое выражение. При этом он не вычисляется. Например:
> 2+3; #Это пример. А это выражение не вычисляется: 4+5 5
Комментарии полезны в программах на Maple-языке и обычно используются для объяснения особенностей реализованных алгоритмов.

Слайд 8

MAPLE

Константы Константы - это простейшие именованные объекты, несущие заранее предопределенные значения. Их имена

MAPLE Константы Константы - это простейшие именованные объекты, несущие заранее предопределенные значения.
(идентификаторы) также заранее определены и не могут меняться. Подробную информацию о константах можно найти, исполнив команду ?constant.
В выражениях часто встречаются литералы – это неименованные числовые константы. В выражении 2*sin(1.25) числа 2 и 1.25 являются числовыми литералами. Строковыми константами являются произвольные цепочки символов, заключенные в обратные апострофы, например 'Hello', 'Привет', 'My number‘. Числа, заключенные в апострофы, например '123456', также становятся строковыми константами, которые нельзя использовать в арифметических выражениях.
Встроенные в ядро константы
Есть также ряд констант, которые правильнее считать заведомо определенными глобальными переменными:
false — логическое значение «ложно»; gamma — константа Эйлера, равная 0.5772156649...; infinity — положительная бесконечность (отрицательная задается как -infinity); true — логическое значение «истинно»; Catalan — константа Каталана, равная 0.915965594...; FAIL — специальная константа (см. справку, выдаваемую по команде ?FAIL); I — мнимая единица (квадратный корень из -1); Pi — представляет константу  = 3.141...
В этот список не входит основание натурального логарифма — число е. В качестве этой константы рекомендуется использовать ехр(1). Она отображается как жирная прямая буква Е. A exp(1.) выводит 2.71828... (что и следовало ожидать). Идентификация констант
Функции type(х, constant) и type(x, realcons) возвращают логическое значение true, если х представляет целочисленную или вещественную константу, и false, если х не является константой.

Слайд 9

MAPLE

Переменные — это объекты, значения которых могут меняться по ходу выполнения документа.

MAPLE Переменные — это объекты, значения которых могут меняться по ходу выполнения
Тип переменной может быть задан директивно с помощью конструкции name::тип, а также явно простым присвоением значения. Имена (идентификаторы) переменных – это последовательность допустимых символов алфавита, начинающаяся с буквы. Регистр букв учитывается.
Не допускается использовать в качестве имен переменных зарезервированные слова, имена предопределенных констант и функций. Чтобы проверить уникальность вводимого идентификатора можно выполнить команду ?name, где name – выбранный идентификатор переменной.
По умолчанию любые переменные рассматриваются как объекты символьного типа. Благодаря этому такие переменные могут фигурировать в математических выражениях (таких, как sin(x)/x) без их предварительного объявления – это не влечет за собой появления сообщений об ошибках и является более естественным. Для присваивания переменным конкретных значений используется комбинированный символ присваивания «:=».
Если значение переменной определено с помощью оператора присваивания, то такие переменные не могут использоваться в символьных вычислениях. Для придания статуса неопределенных переменных необходимо либо вызвать команду restart (тогда все ранее определенные переменные станут неопределенными), либо выполнить оператор x:=‘x’;, либо использовать функцию x:=evaln(x);.

Слайд 10

MAPLE

Операторы

Имеется пять основных типов операторов:
- binary — бинарные операторы (двумя операндами);

MAPLE Операторы Имеется пять основных типов операторов: - binary — бинарные операторы

- unary — унарные операторы (с одним операндом);
- nullary — нульарные операторы (без операнда — это одна, две и три пары кавычек);
- precedence — операторы старшинства (включая логические операторы);
- functional — функциональные операторы.

Бинарные операторы:
«+» - Сложение; «-» - Вычитание; «*» - Умножение; «/» - Деление; «**» или «^» - Возведение в степень; «mod» - Остаток от деления; «$» - Оператор последовательности; «.» - Разделительная точка; «@» - Оператор композиции; «@@» - Повторение композиции; «,» - Разделитель выражений; «:=» - Присваивание; «..» - Задание интервала; «||» - Конкатенация (объединение) строк.

Слайд 11

MAPLE

Операторы

Для данных типа «множество» определены следующие бинарные операторы:
 union — включает первый

MAPLE Операторы Для данных типа «множество» определены следующие бинарные операторы: union —
операнд (множество) во второй; 
 intersect — создает множество, содержащее общие для операндов элементы; 
 minus — исключает из первого операнда элементы второго операнда.
В любом случае, в результирующем множестве устраняются повторяющиеся элементы.

Оператор композиции @@ может использоваться для создания сложных функций, содержащих цепные дроби.
В примере используется функциональный оператор «->», задающий пользовательскую функцию.

Специальный оператор % обеспечивает подстановку в строку ввода (или в выражение) последнего результата операции, %% — предпоследнего и %%% — третьего с конца.

Слайд 12

MAPLE

Операторы

Логические операторы:
«<» - Меньше; «<=» - Меньше или равно; «>» - Больше;

MAPLE Операторы Логические операторы: « » - Больше; «>=» - Большее или
«>=» - Большее или равно; «=» - Равно; «<>» - Не равно; «and» - Логическое «и»; «or» - Логическое «или».
Результатом вычисления выражения с логическими операторами являются логические константы true или false, если оно не выполняется.
Кроме того, к логическим операторам относится унарный оператор «not» — он представляет логическое «нет».
Для возврата логических значений выражений с этими операторами используется функция evalb(условие).

Логические операторы часто используются в управляющих структурах программ, составленных на языке программирования Maple.

Слайд 13

MAPLE

Операторы

Специальные типы операторов:
композиционные («@»);
функциональные («var -> result» или «

MAPLE Операторы Специальные типы операторов: композиционные («@»); функциональные («var -> result» или
var>»);
неопределенные и инертные («&name»);
заданные с помощью команды define(name, свойство1, свойство2,….)

time() – системная функция, показывающая время в секундах, затраченное на выполнение указанного в скобках оператора.

Слайд 14

MAPLE

Математические функции

Понятие о встроенных функциях
Maple имеет полный набор элементарных математических функций.

MAPLE Математические функции Понятие о встроенных функциях Maple имеет полный набор элементарных
Все они, кроме арктангенса двух аргументов, имеют один аргумент х, например sin(x). Он может быть целым, рациональным, дробно-рациональным, вещественным или комплексным числом. В ответ на обращение к ним элементарные функции возвращают соответствующее значение. Поэтому они могут быть включены в математические выражения. Все описанные здесь функции называются встроенными, поскольку они реализованы в ядре системы.

Целочисленные функции, используемые в теории чисел:
factorial(n) — функция вычисления факториала (альтернатива — оператор !);
iquo(a.b) — целочисленное деление а на b;
irem(a,b) — остаток от деления а на b;
igcd(a b) — наибольший общий делитель;
lcm(a,b) — наименьшее общее кратное.

Слайд 15

MAPLE

Математические функции

В ядре Maple реализован полный набор тригонометрических и гиперболических функций, а

MAPLE Математические функции В ядре Maple реализован полный набор тригонометрических и гиперболических
также их обратных функций: sin — синус; cos — косинус; tan — тангенс; sec — секанс; csc — косеканс; cot — котангенс; arcsin — арксинус; arccos — арккосинус; arctan — арктангенс; arcsec — арксеканс; arccsc — арккосеканс; arccot — арккотангенс; sinh — гиперболический синус; cosh — гиперболический косинус; tanh — гиперболический тангенс; sech — гиперболический секанс; csch — гиперболический косеканс; coth — гиперболический котангенс; arcsinh — гиперболический арксинус; arccosh — гиперболический арккосинус; arctanh — гиперболический арктангенс; arcsech — гиперболический арксеканс; arccsch — гиперболический арккосеканс; arccoth — гиперболический арккотангенс.
К степенным и логарифмическим относятся следующие функции Maple:
 ехр — экспоненциальная функция; ilog10 — целочисленный логарифм по основанию 10 (возвращает целую часть от логарифма по основанию 10);
 ilog — целочисленный логарифм (библиотечная функция, возвращающая целую часть от натурального логарифма); ln — натуральный логарифм;
 log — логарифм по заданному основанию (библиотечная функция);
 log10 — логарифм по основанию 10; sqrt — квадратный корень. 

Слайд 16

MAPLE

Математические функции

Функции с элементами сравнения
В алгоритме вычисления ряда функций заложено сравнение

MAPLE Математические функции Функции с элементами сравнения В алгоритме вычисления ряда функций
результата с некоторым опорным значением. К таким функциям относятся:
 abs — абсолютное значение числа;
 ceil — наименьшее целое, большее или равное аргументу;
 floor — наибольшее целое, меньшее или равное аргументу;
 frac — дробная часть числа;
 trunc — целое, округленное в направлении нуля;
 round — округленное значение числа;
 signum(х) — знак х (-1 при х < 0, 0 при х = 0 и +1 при х > 0).
Для комплексного аргумента х эти функции определяются следующим образом:
tranc(x) = trunc(Re(x)) + I*trunc(Im(x));
round(x) = round(Re(x)) + I*round(Im(x));
frac(x) - frac(Re(x)) + I*frac(Im(x)).
flооr(x) = floor(Re(x)) + I*floor(Im(x)) + X, где
ceil(x) = -flооr(-х) 

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

Слайд 17

MAPLE

Функции работы с массивами, векторами и матрицами

Вызов элемента и присваивание ему значений:
 V[i]:=x

MAPLE Функции работы с массивами, векторами и матрицами Вызов элемента и присваивание
— присваивание нового значения х i-му элементу вектора V;
 M[i,j]:=x — присваивание нового значения х элементу матрицы М.
Векторы и матрицы похожи на списки, но не полностью отождествляются с ними. Используя функцию преобразования данных convert, можно преобразовывать одномерные списки в векторы, а двумерные списки — в матрицы.
Функция type(V, vector) — тестирует аргумент V и возвращает true, если V — вектор, и false в ином случае;  type(M,matrix) — тестирует аргумент М и возвращает true, если М — матрица, и false в ином случае.

Для проведение вычислений с массивами и матрицами используется функция evalm(M)

Слайд 18

MAPLE

Примеры матричных вычислений:

Функции работы с массивами, векторами и матрицами

MAPLE Примеры матричных вычислений: Функции работы с массивами, векторами и матрицами

Слайд 19

MAPLE

Примеры символьных вычислений с матрицами.
Функция map(fname, M, x) позволяет выполнить функцию

MAPLE Примеры символьных вычислений с матрицами. Функция map(fname, M, x) позволяет выполнить
fname над всеми элементами матрицы.

Функции работы с массивами, векторами и матрицами

Слайд 20

MAPLE

Работа со строковыми данными

Обработка строк
Имеется ряд функций для работы со строками.

MAPLE Работа со строковыми данными Обработка строк Имеется ряд функций для работы
Из них наиболее важны следующие:
 lenght(str) — возвращает число символов, содержащихся в строке str;
 substring(str, a, b) — возвращает подстроку строки str от а-го символа до b-го;
 cat(strl,str2....) — возвращает строку, полученную объединением строк str1, str2,... (альтернатива — оператор конкатенации в виде точки .);
 SearchText(s, str) — производит поиск подстроки s в строке str и при его успехе возвращает номер позиции s в строке str (при отсутствии s в str функция возвращает 0).

Интерактивный ввод математических выражений с запросом:
функция readstat(promt), где promt — строка с текстовым комментарием.

Ввод строкового выражения с последующим преобразованием его в математическое выражение с помощью функции parse

Слайд 21

MAPLE

Пользовательские функции и средства программирования

Для повышения эффективности работы с Maple возникает необходимость

MAPLE Пользовательские функции и средства программирования Для повышения эффективности работы с Maple
в создании собственных функций.
Самый простой способ – присвоить некоторой переменной выражение и в дальнейшем его использовать, как функцию.

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

Для задания полноценных функций пользователя применяется функциональный оператор. При этом используется следующая конструкция: name:=(x,y,...)->expr.
После этого вызов функции осуществляется в виде name(x.y,...), где (х.у,...) — список формальных параметров функции пользователя с именем name. Переменные, указанные в списке формальных параметров, являются локальными. При подстановке на их место фактических параметров они сохраняют их значения только в теле функции (ехрr). За пределами этой функции переменные с этими именами оказываются либо неопределенными, либо сохраняют ранее присвоенные им значения.

Слайд 22

MAPLE

Пользовательские функции и средства программирования

Еще один способ задания функции пользователя базируется на

MAPLE Пользовательские функции и средства программирования Еще один способ задания функции пользователя
применении функции unapply: name:=unapply(expr,var1,var2,...)
При таком задании функции пользователя, помимо численных, можно проводить и символьные вычисления.

Для графической визуализации заданных функций, как правило используются функции plot и plot3d

Слайд 23

MAPLE

Пользовательские функции и средства программирования

Важный класс функций – импликативные, в которых связь

MAPLE Пользовательские функции и средства программирования Важный класс функций – импликативные, в
между переменными задана неявно, в виде какого-либо выражения. Самый характерный пример такой функции — это выражение для задания окружности радиуса r:
х^2 + у^2 = r^2.
Импликативные функции записываются как уравнения. Соответственно их можно решать с помощью функции solve.

Визуализация импликативных функций осуществляется функцией implicitplot пакета plots

Слайд 24

MAPLE

Пользовательские функции и средства программирования

Как и любой другой язык программирования Maple-язык содержит

MAPLE Пользовательские функции и средства программирования Как и любой другой язык программирования
набор операторов, с помощью которых можно организовывать сложные вычисления. К ним относятся:
Условный оператор: if (условие) then Элементы_1 else Элементы_2 fi;
Оператор цикла: for from to by while do <Выполняемые элементы> od; и его различные модификации, в том числе упрощенный цикл while do <Выполняемые элементы> od;
Процедуры
Можно задать некоторую последовательность действий в виде отдельной процедуры:
name := рroc(Формальные_параметры) Тело процедуры end;
Вызов осуществляется в любом месте: name(Фактические параметры);
Используя оператор return(Значение), можно явно указать значение, возвращаемое процедурой. Если return опущен, то процедура возвращает значение, полученное в последнем выражении тела.
Имя файла: MAPLE.pptx
Количество просмотров: 127
Количество скачиваний: 0