Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Математическая система Maple: основные принципы работы






Система Maple (разработана канадской компанией Waterloo Maple Software) на сегодняшнее время является одной из ведущих вычислительных систем компьютерной математики (наряду с MathCad, MathLab, Mathematica). По сути, Maple – это не просто математическая программа, а целый комплекс так называемых пакетов (packages), каждый из которых направлен на решение различных задач линейной алгебры, аналитической геометрии, математического анализа, дифференциальных уравнений, математической статистики, линейного и нелинейного программирования и т.д.

Maple традиционно считают системой аналитико-символьных вычислений (в отличие от нее MathCad – в основном программа для численных расчетов). Это означает, что система в большинстве случаев выдает ответ на решение задачи в самом общем – символьном виде. Maple одна из самых надежных идостоверных систем компьютерной математики. Надежных – в смысле высокой достоверности и точности полученных результатов при самых сложных символьных вычислениях.

Особенно эффективно использование Maple при обучении математике. Высочайший «интеллект» этой системы символьной математики объединяется в ней с мощными средствами математического численного моделирования и возможностями графической визуализации решений.

Maple – интегрированная система. Она объединяет в себе:

  • мощный язык программирования, основанный на языке С++ (он же язык для интерактивного общения с системой);
  • редактор для подготовки и редактирования документов и программ;
  • современный многооконный пользовательский интерфейс с возможностью работы в диалоговом режиме;
  • мощную справочную систему [меню Help, вкладки Introduction (общая справочная система), Topic Search… (поиск справки по какому-то определенному разделу или команде), Glossary (глоссарий)];
  • ядро алгоритмов и правил символьных и аналитических преобразований математических выражений;
  • численный и символьный процессоры;
  • систему диагностики ошибок при вычислениях и преобразованиях;
  • библиотеки встроенных и дополнительных процедур и функций;
  • пакеты (packages) внешних функций для решения различного рода задач и поддержи других языков программирования и программ.

Рассмотрим кратко основные принципы работы в Maple. Более подробную информацию можно взять в [1, 9, 12, 13], а также на многочисленных сайтах, посвященных этой системе.

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

При первоначальном запуске появляется рабочее окно программы Maple (см. рис. 1.1).

Рис. 1.1.

В некоторых новых версиях программы оно может несколько отличаться от этого (в данном пособии речь идет о версии Maple 12, большинство примеров и описаний идут корректно на версиях Maple 10 и Maple 11). Рабочее окно программы состоит из следующих элементов:

1) основного (главного) меню (вкладки File, Edit, View, Insert, Format, Spreadsheet, Window, Help);

2) панели главных инструментов;

3) контекстной панели инструментов;

4) рабочей области (окно ввода и редактирования документов).

Рабочий лист (worksheet) среды является основным документом, в котором вводятся команды пользователя и в который выдаются результаты работы.

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

Основной режим работы системы Mapleкомандно-диалоговый режим. Это означает, что пользователь на запрос системы

[ >

должен ввести команды, понятные процессору Maple. Признаком окончания ввода команды служит символ точка с запятой (;) (результат действия процессора и вычисления будет выведен на экран) или символ двоеточие (:) (вычисления не будут выведены на экран, данный символ используется как знак разделителя при записи некоторых команд в одной строке).

Область ввода и соответствующая ей область вывода называются группой вычислений. На рабочем листе она отмечается квадратной скобкой слева. В группе вычислений может содержаться несколько областей ввода и вывода: все команды и операторы в областях ввода одной группы вычислений обрабатываются системой за одно обращение по нажатию клавиши < Enter>.

Maple имеет следующие основные виды команд:

1) оператор присваивания. Имеет следующий синтаксис (правило описания):

[ > имя_переменной: =значение[; \: ]

Например,

[ > x: =3; v: =vector([1, 2, 3]); f(y): =sin(ln(y));

2) вызов процедуры или функции. Имеет следующий синтаксис:

[> имя_процедуры(список параметров)[; \: ]

или

[> имя_переменной: =имя_функции(список параметров)[; \: ]

В следующих строках определены функция , дробно-рациональная функция , процедуры интегрирования функции , дифференцирования и функция упрощения производной от :

[ > restart; f(x): =tan(x); g(x): =int(f(x), x);

[ > h(x): =(x+2)/(x-2); diff(h(x), x); R: =simplify(diff(h(x), x));

Приведем описание некоторых встроенных функций элементарных преобразований, которые нам потребуются в дальнейшем:

restart – “обнуление” значений всех переменных, отмена подключенных пакетов и т.д. (рекомендуется использовать в качестве первой команды рабочего листа);

evalf – преобразования числа в число с плавающей точкой (перевод точного числа в приближенное). Имеет следующий синтаксис:

[> evalf(< выражение>, < кол_цифр>);

[> evalf[< кол_цифр> ](< выражение>);

Здесь параметры:

< выражение> – выражение, в котором все числа требуется привести к виду чисел с плавающей точкой;

< кол_цифр> – целое число, указывающее количество значащих цифр для вычислений (необязательный параметр);

Digits – глобальная переменная пакета Maple, значение которой (по умолчанию оно равно 10) показывает количество значащих цифр, выводимых на экран;

% (символ процента) – вывод результата выполнения предыдущей операции;

%% – вывод результата выполнения “предпредыдущей” операции;

# (символ решетка) – использование комментария в программе;

simplify – упростить выражение. Имеет следующий синтаксис:

[> simplify(< выражение>);

С полным списком функций, входящих в ядро Maple, и их обозначениями можно познакомиться, набрав команду inifcn, выделить ее мышкой и нажать кнопку < F1>;

3) подключение специальных пакетов Maple. Подключение пакета осуществляется следующим образом:

[> with(имя_пакета)[; \: ]

Например, с помощью следующих команд:

[> restart; with(LinearAlgebra):

[> with(simplex);

в оперативную память загружаются пакет LinearAlgebra, ориентированный на решение задач линейной алгебры, и пакет simplex, предназначенный для решения задач линейного программирования.

Напомним, что при начальном запуске системы в оперативную память загружено только ядро системы. Однако при решении огромного класса задач, требующих сложных расчетов, встроенных процедур и функций ядра не хватает. В состав Maple 12 входит около 80 пакетов. Дадим список наиболее часто используемых пакетов Maple (с полным списком пакетов можно ознакомиться, используя главное меню Help –> вкладка Introduction –> Mathematics… –> Packages…):

· DEtools – решение обыкновенных дифференциальных уравнений и систем в численном и аналитическом видах, представление результатов в виде фазовых портретов, полей направлений, интегральных кривых и т.д.;

· finance – пакет финансовой математики;

· geom3d, geometry – пакеты трехмерной и двумерной евклидовой геометрии;

· LinearAlgebra – линейная алгебра (основной и незаменимый пакет для решения задач линейной и матричной алгебры);

· linalg – линейная алгебра и структуры данных массивов (до версии 6.0 являлся основным пакетом для решения задач линейной алгебры);

· inttrans – интегральные преобразования и их обратные преобразования;

· networks – пакет для работы с графами;

· numapprox – численная аппроксимация;

· Optimization пакет для решения задач нелинейного программирования;

· plots – пакет для расширения графических возможностей;

· powseries – разложение функций в степенные ряды;

· simplex – пакет для решения задач линейного программирования;

· statistic – пакет для обработки статистических данных;

· sumtools — числовые ряды;

4) вызов справки (или примера) по определенному разделу, процедуре, функции, пакету. Вызов производится следующим образом:

[> help(имя)[; \: ]

[> example(имя)[; \: ]






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.