
- •Введение
- •1. Запуск математического пакета maple, структура окна
- •2. Описание основных команд–процедур пакета maple
- •2.1. Арифметические операции, типы данных в Maple
- •2.2. Структура команд Maple
- •Команда (параметр_1, параметр_2, …, параметр_n);
- •2.3. Преобразование математических выражений
- •2.3.1. Выделение частей арифметических выражений
- •2.3.2. Тождественные преобразования арифметических выражений
- •Collect(выражение, имя переменной относительно которой приводятся подобные);
- •3. Функции maple, решение уравнений и неравенств
- •3.1. Способы задания функций и замена переменных
- •Piecewise(cond_1,f1,cond_2,f2, …).
- •3.2. Операции оценивания
- •3.3. Решение уравнений и их систем
- •3.4. Решение неравенств
- •4. Графические и геометрические возможности пакета maple
- •4.1. Графические возможности пакета Maple
- •4.1.1. Двумерная графика
- •Polarplot ([переменная, выражение,параметры переменной],опции);
- •Pointplot(data_list,опции);
- •Sphereplot ((выражение), параметры_, параметры_, опции);
- •Sphereplot ([r_выражение, _выражение, _выражение], параметр_1, параметр_2, опции);
- •4.1.2. Трехмерная графика
- •4.2. Анимация
- •4.3. Геометрические пакеты Maple
- •4.3.1. Стереометрия
- •4.3.2. Планиметрия
- •5. Дифференциальное и интегральное исчисление функции одной переменной
- •5.1. Вычисление пределов в Maple для некоторых математических операций существует по две команды: прямого и отложенного исполнения. Имена команд состоят из одинаковых букв за исключением первой:
- •5.2. Дифференцирование
- •5.2.1. Вычисление производных
- •5.2.2. Дифференциальный оператор
- •5.3. Исследование функций
- •5.3.1. Непрерывность функции и точки разрыва
- •5.3.2. Экстремумы. Наибольшее и наименьшее значение функции
- •5.3.3. Исследование функции по общей схеме
- •{Arctan(0)}
- •6. Интегрирование
- •6.1. Аналитическое и численное интегрирование
- •6.2. Определенные интегралы
- •Is assumed to be: RealRange(Open(-1),3)
- •6.3. Основные методы интегрирования
- •7. Дифференциальные уравнения
- •7.1. Аналитическое решение дифференциальных уравнений
- •7.1.1. Общее решение дифференциальных уравнений
- •7.1.2. Фундаментальная (базисная) система решений
- •7.1.3. Решение задачи Коши или краевой задачи
- •7.1.4. Системы дифференциальных уравнений
- •7.1.5. Приближенное решение дифференциальных уравнений с помощью степенных рядов
- •7.2. Численное решение дифференциальных уравнений
- •7.2.1. Формат команд dsolve и odeplot для нахождения численного решения дифференциальных уравнений в графическом виде
- •Italic, 12]):
- •Italic, 12]):
- •7.2.2. Пакет графического представления решений дифференциальных уравнений dEtools
- •7.2.3. Построение фазовых портретов систем дифференциальных уравнений
- •8. Функции многих переменных, векторный анализ, ряды, интегральные преобразования
- •8.1. Дифференциальное исчисление функций многих переменных
- •8.1.1. Частные производные
- •8.1.2. Локальные и условные экстремумы функций многих переменных
- •Maximize(f,{x1,…,xn},range);
- •Minimize(f,{x1,…,xn}, range);
- •8.2. Интегральное исчисление функций многих переменных
- •8.3. Векторный анализ
- •8.4. Ряды и произведения
- •8.4.1. Вычисление суммы ряда и произведений
- •8.4.2. Разложение функции в степенной ряд и ряд Тейлора
- •8.5. Интегральные преобразования
- •8.5.1. Преобразование Фурье
- •8.5.2. Преобразование Лапласа
- •9. Линейная алгебра
- •9.1. Векторная алгебра
- •Warning, the protected names norm and trace have been redefined and unprotected
- •9.2. Действия с матрицами
- •9.2.1. Определение матрицы
- •9.2.2. Арифметические операции с матрицами
- •9.2.3. Определители, миноры и алгебраические дополнения, ранг и след матрицы
- •9.2.4. Обратная и транспонированная матрицы
- •Evalm(1/a);
- •Inverse(a).
- •9.2.5. Определение типа матрицы
- •1*Sqrt(3)/2,-1/2]]);
- •9.2.6. Функции от матриц
- •9.3. Спектральный анализ матрицы
- •9.4. Системы линейных уравнений, матричные уравнения
- •For имя переменной цикла in выражение 1 do выражение 2 od;
- •10.3. Процедуры-функции
- •10.4. Процедуры
- •Writeto (“имя файла”)
- •Appendto (“имя файла”)
- •Print(список Maple-выражений, перечисляемых через запятую);
- •Lprint(список Maple-выражений, перечисляемых через запятую);
- •Readdata(“имя файла”, тип переменной(integer/float – последний тип устанавливается по умолчанию),счетчик чисел);
- •Readlib(readdata):
- •12. Использование математического пакета maple для научных исследований
- •12.1. Исследование влияния изменяемых параметров плоской помольной камеры мельницы противоточного действия на скорость энергоносителя
- •12.1.1. Постановка задачи
- •12.1.2. Решение задачи
- •12.2. Определение коэффициента полезного заполнения материалом деформируемых бочкообразных камер устройств для тонкого и свертонкого помола материалов
- •12.2.1. Расчетная схема
- •12.2.2. Решение задачи
- •12.3. Исследование влияния основных конструктивных и технологических параметров на режимы работы трубной мельницы
- •Formula(1.8)
- •Formula(1.9)
- •Formula(2.1)
- •Formula(2.2)
- •Formula(2.3)
- •Formula(3.1)
- •Formula(3.2)
- •Formula(3.3)
- •13. Формат наиболее используемых команд аналитического пакета maple
- •Заключение
- •Библиографический список
- •Оглавление
For имя переменной цикла in выражение 1 do выражение 2 od;
Здесь тело цикла выражение 2 выполняется, в случае если символьная переменная заданная своим именем последовательно принимает значение каждого из операндов алгебраического выражения 1. Отметим, что работа данной конструкции зависит от внутреннего представления выражения 1. Так в случае если выражение 1 является суммой, то имя переменной цикла принимает поочередно значение каждого слагаемого, если произведение – то каждого сомножителя.
Пример.
[> restart;
[> a:=5*x^2+x+6/x;
[> b:=simplify(%);
[> for m in a do m; od;
[> for m in b do m; od;
10.3. Процедуры-функции
Процедуры-функции в Maple можно задавать двумя способами. Для задания процедур-функций первый способ использует символ () и задается следующей структурой:
имя функции:=(список формальных параметров) выражение;
где имя функции задается набором символов латинского алфавита, список формальных параметров вводится через запятую. Выражение – команда Maple, реализующая тело процедуры-функции.
Пример.
[> f1:=(x1,x2)->simplify(x1^2+x2^2);
[> f1(cos(x),sin(x));
1
Второй способ задания процедур-функций использует команду unapply и имеет следующую структуру:
имя функции:=unapply(выражение или операция, список переменных);
Этот способ задания процедур-функций полезен при определении новой функции через известную или, когда вычисленное выражение предполагает использовать как функцию.
Пример.
[> f3:=unapply(diff(z(r)^2,r)-2,z);
[> f3(sin);
[> combine(%);
10.4. Процедуры
Любая процедура в Maple начинается с заголовка, состоящего из имени процедуры, за которым следует знак присваивания и служебное слово proc, далее в круглых скобках через запятую указываются формальные параметры. Процедура обязательно заканчивается служебным словом end. Все выражения и команды заключенными между служебными словами proc и end составляют тело процедуры.
имя процедуры := proc (список формальных параметров); команды (или выражения); end;
Если процедура загружена, то ее вызов осуществляется по имени. Возвращаемым значением по умолчанию является значение последнего выполненного оператора (команды) из тела процедуры, при этом тип результата работы процедуры зависит от типа возвращаемого значения.
Пример.
[> f:=proc(x,y);x^2+y^2;simplify(%);end:
[> f(sin(x),cos(x));
1
При написании процедур в Maple можно использовать ряд команд и служебных слов, кроме указанного выше обязательного минимального набора, которые позволяют описывать переменные, управлять выходом из процедуры, сообщать об ошибках.
При описании формальных параметров процедуры можно явно задавать их тип через двоеточие. При таком описании Maple автоматически проверяет тип фактического параметра и выдает сообщение об ошибки в случае его несовпадения с типом формального параметра.
После заголовка процедуры может следовать описательная часть процедуры, отделяющаяся от него пробелом. При описании локальных переменных, используемых только внутри данной процедуры можно использовать описатель, который задается служебным словом local, после которого через пробел необходимо указать имена локальных переменных. Использование глобальных переменных в процедуре можно задавать служебным словом global, который должен размещаться в описательной части процедуры.
Для выхода из процедуры в любом месте ее тела и присваивания результату ее работы по выполнению нужной команды можно использовать команду RETURN(val), где val – возвращаемое значение, которое может иметь различный тип при выходе из разных мест процедуры.
Для аварийного выхода из процедуры в случае возникновения ошибки и сообщения о случившемся можно использовать команду ERROR(‘string’), здесь string – сообщение, которое выводится на экран монитора в аварийной ситуации. Таким образом, общий вид структуры процедуры можно изобразить следующим образом:
имя процедуры:=proc(список параметров процедуры)localсписок локальных переменных, приведенных через запятую; globalсписок глобальных переменных, приведенных через запятую; RETURN(val); ERROR(‘error in body of procedure’);… end;
Пример.
[> examp:=proc(x) local y,w; global z; if x<0 then RETURN(-x); elif x=0 then ERROR('Variablex=0'); fi;[x,x^2,x^3]; end;
[> examp(-1);
[> examp(0);
Error, (in examp) Variablex = 0
[> examp(2);
11. СПОСОБЫ ВВОДА И ВЫВОДА ИНФОРМАЦИИ
В СРЕДЕ MAPLE
Для сохранения имен (индентификаторов) переменных и их значений во внешнюю память в виде файла с именем name.txt необходимо ввести команду:
save список имен переменных, перечисленных через запятую, “имя файла с расширением txt”;
Если в качестве расширения указан символ m, то файл будет записан во внутреннем Maple-формате, при всех других расширениях в текстовом формате. Для вывода на экран сохраненной в файле информации используется команда
read “имя файла”;
Пример.
[> restart;
[> examp:=proc(x) local y,w; global z; if x<0 then RETURN(-x); elif x=0 then ERROR('Variablex=0'); fi; y:=x; w:=x^2; z:=x^3; save y,w,z,"nnn.txt"; close ("nnn.txt"); end;
[> examp(-1);
[> examp(0);
Error, (in examp) Variablex = 0
[> examp(2);
[> read "nnn.txt";
Для записи всего содержимого экрана в файл можно использовать следующие две команды.
Первая команда