ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 01.04.2021

Просмотров: 1352

Скачиваний: 16

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

Данные множественного типа

Неупорядоченные наборы — множества — создаются с помощью

фигурных скобок. Из множеств автоматически удаляются повторяющиеся
элементы.

> {a, b, g, a, a, c, c, f};

{

f, g, a, b, c

}

> {5, 7-4, pi, exp(ln(3)), sqrt(25), 3!};

{

3

,

5

,

6

, π

}

Упорядоченные наборы — списки — создаются с помощью квадрат-

ных скобок:

> s1 := [5, 7-4, pi, exp(ln(3)), sqrt(25), 3!];

s1

:= [5

,

3

, π,

3

,

5

,

6]

> s2 := [[a, b], [c, d]];

s3 := [[1, 2], [2, 5]];

s2

:= [[

a, b

]

,

[

c, d

]]

s3

:= [[1

,

2]

,

[2

,

5]]

Списки широко применяются для задания векторов и матриц:

> V := array(1..6, s1);

V

:= [5

,

3

, π,

3

,

5

,

6]

> M1 := array(1..2, 1..2, s2);

M2 := convert(s3, matrix);

M1

:=

a b

c d

M2

:=

1 2
2 5

Элементы векторов и матриц являются индексированными перемен-

ными. Допустимы операции вызова нужного элемента и присваивания
ему нового значения.

> V[1] := V[3]*V[6]/3:

evalm(V);

[2

π,

3

, π,

3

,

5

,

6]

21


background image

> evalm(M1-a*M2);

0

b

2

a

c

2

a d

5

a

> evalm(M1 &* M2);

a

+ 2

b

2

a

+ 5

b

c

+ 2

d

2

c

+ 5

d

> evalm(M2^(-1));

5

2

2 1

Подробнее овекторах и матрицах будет сказанов разделе 4.1.

Константы

Константы — это простейшие именованные объекты, несущие за-

ранее предопределенные значения. Их имена также заранее определены
и не могут меняться. Обычные числовые константы не имеют имени и
представлены просто числами.

> type(false, constant);

true

> type(exp(I*Pi), constant);

true

Именованные константы

Константа

Описание

Pi

Число

π

= 3

.

141592654

gamma

Константа Эйлера

γ

= lim

n

→∞

n

i

=1

1

i

ln

n

= 0

.

5772156649

Catalan

Константа Каталана

i

=1

(

1)

i

(2

i

+ 1)

2

= 0

.

9159655942

infinity

Бесконечность

true

Логическая константа «Истина»

false

Логическая константа «Ложь»

FAIL

Логическая константа «Неопределенность»

Подробную информацию оконстантах системы Maple можнополу-

чить, исполнив команду

?constants

.

22


background image

Переменные

Для явного указания типа переменных используется конструкция

name::type

. Для присваивания переменной значения используется опе-

ратор

:=

. Для отмены присваивания — одна из конструкций

x := ’x’

или

x := evaln(x)

.

Иногда расчеты предполагают, что переменные могут иметь опреде-

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

assume

и команда

assuming

. Действие функции

assume

рас-

пространяется на весь документ, а команды

assuming

— только на одну

операцию.

> sqrt(x^2);

ln(exp(2*y));

x

2

ln(e

2

y

)

> assume(x, positive):

sqrt(x^2);

about(x);

x

Originally x, renamed x~:

is assumed to be: RealRange(Open(0),infinity)

ln(exp(2*y)) assuming y>-infinity;

about(y);

2

y

y:

nothing known about this object

Функцию

assume

, как и ко манду

assuming

, можно использовать

не толькодля переменных, нои для целых выражений.

23


background image

2.2

Операторы и операнды

В Maple имеется три типа операторов: бинарные (

binary

), с одним

операндом (

unary

) и без о перандо в (

nullary

).

Некоторые операторы Maple в порядке их выполнения

Оператор

Тип

||

binary

::

binary

%

nullary

.

unary(prefix / postfix) / binary

!

unary(postfix)

^ @@

binary

* &* / @ intersect

binary

+ - union minus

binary

mod

binary

subset

binary

..

binary

< <= > >= = <> in

binary

$

unary(prefix) / binary

not

unary(prefix)

and

binary

or

binary

xor

binary

->

binary

,

binary

:=

binary

Подробную информацию об операторах можно получить, исполнив

команду

?operators

.

Для задания функций используется функциональный оператор

->

:

> f := x -> exp(-I*x)*sin(x):

f(Pi/2);

I

> g := (x, y) -> sqrt(x^2+y^2):

simplify(g(sin(x), cos(x)));

1

24


background image

Функция

define

служит для создания операторов, тогда как функ-

ция

definemore

позволяет добавить свойства к уже определенному

функцией

define

оператору.

> define(L, linear, L(1)=t):

L(x^2+2*x+2);

L

(

x

2

) + 2

L

(

x

) + 2

t

2.3

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

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

Основные тригонометрические функции

Функция

Описание

sin(x)

Синус

cos(x)

Косинус

tan(x)

Тангенс

cot(x)

Котангенс

sec(x)

Секанс

csc(x)

Косеканс

arcsin(x)

Арксинус

arccos(x)

Арккосинус

arctan(x)

Арктангенс

arccot(x)

Арккотангенс

arcsec(x)

Арксеканс

arccsc(x)

Арккосеканс

sinh(x)

Синус гиперболический

cosh(x)

Косинус гиперболический

tanh(x)

Тангенс гиперболический

coth(x)

Котангенс гиперболический

sech(x)

Секанс гиперболический

csch(x)

Косеканс гиперболический

arcsinh(x)

Арксинус гиперболический

arccosh(x)

Арккосинус гиперболический

arctanh(x)

Арктангенс гиперболический

arccoth(x)

Арккотангенс гиперболический

arcsech(x)

Арксеканс гиперболический

arccsch(x)

Арккосеканс гиперболический

25