Главная | Обратная связь
МегаЛекции

Преобразование выражений





Еще одним мощным средством преобразования выражений является функция combine. Она обеспечивает объединение показателей степенных функций и преобразование тригонометрических и некоторых иных функций. Эта функция -может записываться в трех формах:

combine(f)

combinef(, n)

combine(f. n. optl. opt2. ...)

Здесь f — любое выражение, множество или список выражений; n — имя, список или множество имен; optl, opt2, ... — имена параметров. Во втором аргументе можно использовать следующие функции:

@@ abs arctan conjugate exp
In piecewise polylog power product
Ps radical range signum trig

Примеры применения функции combine представлены ниже:

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

 

Gif

Контроль за типами объектов

Контроль за типами объектов

Выражения и их части в Maple 7 рассматриваются как объекты. В ходе манипуляций с ними важное значение имеет контроль за типом объектов. Одной из основных функций, обеспечивающих такой контроль, является функция whattype(object), возвращающая тип объекта, например string, integer, float, fraction, function и т. д. Могут также возвращаться данные об операторах. Примеры применения этой функции даны ниже:

> whattype(2+3);

integer

> whattype(Pi):

symbol

> whattype(123./5)

float

> whattype(l/3i:

fraction

> whattype(sin(x));

function

> whattype([1.2.3,a,b,c])

;list

> whattype(a+b+c);

+

> whattype(a*b/c):

*

> whattype(a'b):

^

> whattype(H-2+3=4);

=

С помощью функции type(object.t) можно выяснить, относится ли указанный объект к соответствующему типу t, например:

> type(2+3,integer):

true

> type(s1n(x).function);

true

> typeChello,string);

false

> type("hello",string);

true

> typed/3.fraction):

true

При успешном соответствии типа объекта указанному (второй параметр) функция type возвращает логическое значение true, в противном случае — false.

Для более детального анализа объектов может использоваться функция hastype(expr. t), где ехрr — любое выражение и t — наименование типа подобъекта.



Эта функция возвращает логическое значение true, если подобъект указанного типа содержится в выражении ехрr. Примеры применения этой функции даны ниже:

> hastype(2+3,integer);

true

> hastype(2+3/4.integer):

false

> hastype(2*sin(x).function);

true

> hastype(a+b-c/d,'+'):

true

Еще одна функция — has(f.x) — возвращает логическое значение true, если подобъект х содержится в объекте f, и false в ином случае:

> has(2*sin(x),2);

true

> has(2*sin(x).V);

false

> has(2*sin(x),3-l);

true

Следует отметить, что соответствие подобъекта выражения указанному подобъекту понимается в математическом смысле. Так, в последнем примере подобъект «3 - 1», если понимать его буквально, в выражении 2*sin(r) не содержится, но Maple-язык учитывает соответствие 3 - 1 = 2, и потому функция has в последнем примере возвращает true.

Подстановки

Подстановки

Функциональные преобразования подвыражений

Нередко бывает необходимо заменить некоторое подвыражение в заданном выражении на функцию от этого подвыражения. Для этого можно воснользоваться функцией applyop:

  • applyop(f, i, е) — применяет функцию f к i-му подвыражению выражения е
  • applyop(f, i, е. ..., xk, ...) — применяет функцию f к i'-му подвыражении выражения е с передачей необязательных дополнительных аргументов xk.

Ниже даны примеры применения этой функции:

Gif

Функциональные преобразования элементов списков





Рекомендуемые страницы:

Воспользуйтесь поиском по сайту:
©2015- 2020 megalektsii.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.