на тему рефераты Информационно-образоательный портал
Рефераты, курсовые, дипломы, научные работы,
на тему рефераты
на тему рефераты
МЕНЮ|
на тему рефераты
поиск
Использование команд преобразования выражений Maple для математических вычислений

Использование команд преобразования выражений Maple для математических вычислений

Кафедра: Информационные Технологии

Лабораторная работа

На тему:

"Использование команд преобразования выражений Maple для математических вычислений"

Москва, 2008 г

Цели работы:

знать команды, наиболее часто используемые при выполнении аналитических вычислений;

уметь применять указанные команды для решения математических задач.

1. Команды преобразования выражений

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

Синтаксис вызова стандартной команды следующий:

команда (пар_1, пар_2,…, пар_n);

Здесь команда - это имя вызываемой функции, а пар_1, пар_2,… означают необходимые для выполнения команды параметры, которые могут быть переменными или даже выражениями, причем их тип должен соответствовать типу параметров используемой функции. Отметим, если команда завершается точкой с запятой, то результаты ее выполнения отображаются в области вывода, если команда завершается двоеточием, то она выполняется, но никакого вывода результатов не происходит.

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

Для некоторых команд существуют активная и пассивная формы. Активная форма команды (в случае ее вызова) немедленно выполняется, а ее имя начинается со строчной буквы. Пассивная форма команды не выполняется немедленно, а просто в области вывода отображается математическая запись того, что она может сделать. Ее имя начинается с прописной буквы. В дальнейшем, если в операторе присваивания для некоторой переменной в правой части задана пассивная форма команды, то командой value () ее можно вычислить. Основное предназначение пассивных форм команд - это использование их как средства документирования производимых действий в обычной математической нотации. Примерами команд с двумя формами являются команда дифференцирования (diff и Diff), интегрирования (int и Int) и др.

Пример 1. Пассивная и активная формы команд.

> k:=Int (cos(x)^3, x);

> k=int (cos(x)^3, x);

> value(k);

Если команды и функции являются частью ядра системы Maple, то они всегда доступны пользователю. А для вызова других команд и функций необходимо подключить библиотеку или пакет, в которых они расположены. Для этого служат команды readlib () и with (). Первая подключает библиотеку, вторая - пакет. Параметром этих команд является имя библиотеки или пакета, функции которых пользователь желает использовать.

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

2. Упрощение выражения: simplify ()

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

Эта команда имеет несколько форм вызова. Ее самый простой синтаксис имеет следующий вид: simplify (выражение).

В скобках указывается выражение, подлежащее упрощению. Команда simplify () ищет в выражении вызовы функций, квадратные корни, радикалы и степени и инициализирует подходящие процедуры упрощения. Реально команда simplify () реализована в виде набора процедур упрощения, хранящихся в основной библиотеке Maple. Перечислим некоторые из них, остальные можно найти в справке по этой команде (например, установив курсор в рабочем листе на ее имя и нажав клавишу <F1>): `simplify/exp` - для упрощения выражений с экспоненциальными функциями, `simрlifу/ln` - для упрощения выражений с логарифмами, `simplifу/sqrt` - для упрощения выражений, содержащих квадратные корни, `simplifу/trig` - для упрощения выражении с тригонометрическими функциями, `simplifу/radical` - для упрощения выражений с радикалами (дробные степени), `simplifу/power` - для упрощения выражений со степенями, экспонентами и логарифмами и т.д. По умолчанию Maple пытается использовать максимальный набор функций упрощения, подходящий к конкретному выражению.

В команде можно задать конкретные процедуры упрощения, и тогда только они будут использоваться для упрощения заданного выражения, а не весь возможный, установленный по умолчанию набор. Это обеспечивается следующим синтаксисом команды: simрlifу (выражение, nl, n2,…);

Здесь nl, n2 и т.д. являются именами процедур упрощения: Ei, GAMМА, RootOf, @, hypergeom, ln, polar, power, radical, sqrt, trig. Полную информацию о формулах упрощения при использовании перечисленных значений параметров можно получить с помощью команды? simplify [имя], где [имя] - одно из значений параметров функции упрощения.

Упрощения выражений можно проводить с различными видами чисел, например, положительными или принадлежащими некоторому отрезку действительных чисел. Это достигается с помощью параметра assume=свойство. Форма вызова команды при этом имеет вид: simplify (выражение, аssumе=свойство); где параметр свойство может принимать одно из следующих значений: complex - комплексная область, real - действительная область, positive - положительные действительные числа, integer - целые числа, RealRange (a, b) - интервал (а, b) действительных чисел.

Примеры использования команды упрощения выражений simplify() представлены ниже:

Пример 2. Упрощение выражений.

> c:=ln (exp(x))+x*ln (exp(x));

> simplify(c);

> simplify (c, assume=real);

> d:=1/sqrt(8)*(((1+sqrt(8))/10)^5+((1_sqrt(8))/10)^5);

> simplify(d);

Как видно из примера 2, использование команды без параметров не упростило выражения ln (exp(x))+x?ln (exp(x)), тогда как второй оператор с предположением о действительной области изменения переменной х упростил заданное выражение. Maple по умолчанию работает с комплексными числами (т.е. при упрощении предполагается, что переменные изменяются в области комплексных чисел). При таком предположении упростить выражение с действительно невозможно.

Пример 3. Упрощение с предположением.

> f:=(sqrt (x^2));

> simplify(f);

> simplify (f, assume=real);

> simplify (f, assume=positive);

Команда simplify() позволяет задать правила упрощения в виде равенств. Эти правила задаются вторым параметром, который должен иметь следующий вид:

{равенствоl, равенство2,…}

Если какое-то выражение при упрощении должно равняться нулю, то такое правило можно задать, просто внеся выражение без знака равенства в список правил:

> k:=a+b^2+c^3+d+5;

> simplify (k, {c^3+d, a+b^2=1});

В этом примере предполагается, что выражение c^3+d равно 0.

Использование собственных правил для упрощения тригонометрических выражений позволяет получить именно тот его вид, который необходим для дальнейшей работы, так как третьим параметром можно определить, в какой последовательности должны отображаться неизвестные в упрощенном выражении. Этот параметр задается в двух формах: в виде множества и в виде списка. (Множество - последовательность выражений через запятую, заключенная в фигурные скобки, а список - это тоже объект Maple, который для данного частного случая можно охарактеризовать как последовательность выражений через запятую, заключенную в квадратные скобки.) Так вот, если параметр задан в виде множества, то алгоритм упрощения сортирует в выражении неизвестные по убыванию их степени в слагаемых выражения, учитывая степени всех неизвестных, а потом начинает упрощения в соответствии с заданными правилами. В случае со списком - сначала выражение сортируется по степеням первой неизвестной в списке, затем упрощается в соответствии с заданными правилами, затем полученное выражение сортируется по степеням второй неизвестной списка и упрощается и т.д.

Пример 4. Упрощение в соответствии с правилами пользователя.

> equ:={sin(x)^2+cos(x)^2=1};

e:=sin(x)^3-11*sin(x)^2*cos(x)+3*cos(x)^3_sin(x)*cos(x)+2;

> simplify (e, equ, [sin(x), cos(x)]);

> simplify (e, equ, [cos(x), sin(x)]);

> simplify (e, equ, {sin(x), cos(x)});

> simplify (e, equ, {cos(x), sin(x)});

3. Раскрытие скобок в выражении: expand ()

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

Эта команда имеет следующий синтаксис: ехраnd (выр, вырl, выр2,…, вырn); где выр является выражением, в котором необходимо раскрыть скобки, а необязательные параметры вырl, выр2, вырn указывают системе, что в данных выражениях в заданном преобразуемом выражении выр раскрывать скобки не надо.

Пример 5. Представление произведений в виде суммы.

> expand((x+3)*(x+4)^2);

> expand((x+3)^3/(x+4)^2);

> expand (cos(x-y));

> expand((x+3)*(x+4)^2, x+3);

> expand (x^((a+b)*(k+f)));

4. Разложение полинома на множители: factor ()

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

> factor (x^3*y_2*x^2*a*y+x*y*a^2_x^3*b^2+2*x^2*b^2*a-x*b^2*a^2+x^2*y^2-2*x*y^2*a+y^2*a^2_y*b^2*x^2+2*y*b^2*x*a-y*b^2*a^2);

Страницы: 1, 2



© 2003-2013
Рефераты бесплатно, курсовые, рефераты биология, большая бибилиотека рефератов, дипломы, научные работы, рефераты право, рефераты, рефераты скачать, рефераты литература, курсовые работы, реферат, доклады, рефераты медицина, рефераты на тему, сочинения, реферат бесплатно, рефераты авиация, рефераты психология, рефераты математика, рефераты кулинария, рефераты логистика, рефераты анатомия, рефераты маркетинг, рефераты релиния, рефераты социология, рефераты менеджемент.