Прикладные математические пакеты: Maple. Часть 1. Син Л.И. - 10 стр.

UptoLike

Составители: 

Рубрика: 

10
шения задач по определенной теме. В этом пункте мы познакомимся с пакетом
расширения
linalg функций для решения задач линейной алгебры. Для того чтобы
можно было использовать функции расширения, нужно пакет присоединить с по-
мощью команды
with(linalg). Если после этой команды поставить знак ";", то на
экране монитора появится список всех функций пакета, а если поставить знак ":",
то этот список не выдается.
> with(linalg):присоединение пакета функций линейной алгебры.
3.2.
Распространенные функции для действий над матрицами
Задание матриц. Матрицы можно задать при помощи функции matrix.
> A1:=matrix([[5,4,2],[-2,1,-1],[1,6,3]]); – задает матрицу А1 размерности 3×3. Во
внутренних квадратных скобках задаются элементы строк.
Результат на экране:
=
361
112
245
:1A
> B1:=matrix([[a,b,c]]); – задает матрицу-строку (размерность 1×3).
Результат на экране: B1 := [a b c]
>
C1:=matrix([[d], [s], [t]]);задает матрицу-столбец (размерность 3×1).
Результат на экране:
=
t
s
d
С :1
Матрицу-столбец можно задать функцией
vector:
> C1:=vector([d,s,t]); Результат на экране: C1 := [d, s, t]
Матрицу размерности mхn можно задать, указав размерность как аргумент
функции matrix, в этом случае не нужны внутренние квадратные скобки:
matrix(m, n, [x, y, ... , z]) (в квадратных скобках перечисляются построчно все
элементы матрицы). Например,
>
A1:=matrix(3, 3, [5, 4, 2, -2, 1, -1, 1, 6, 3]); C1:=matrix(3, 1, [d, s, t]);
Результат на экране:
=
361
112
245
:1A
=
t
s
d
С :1
Умножение матрицы
А размерности m×k на матрицу В размерности k×n
можно выполнить двумя способами:
multiply(A,B); или evalm(A &* B); (здесь &*
знак умножения матриц).
Для примера умножим матрицы
А1 и С1.
> M1:=multiply(A1,C1)=evalm(A1 &* C1);
Результат на экране:
++
+
+
+
=
++
+
+
+
=
tsd
tsd
tsd
tsd
tsd
tsd
M
36
2
245
36
2
245
:1
Функция
det(A) вычисляет определитель квадратной матрицы.
>
det(A1);вычисляет определитель квадратной матрицы A1.
Результат на экране: 39
                                        10

шения задач по определенной теме. В этом пункте мы познакомимся с пакетом
расширения linalg функций для решения задач линейной алгебры. Для того чтобы
можно было использовать функции расширения, нужно пакет присоединить с по-
мощью команды with(linalg). Если после этой команды поставить знак ";", то на
экране монитора появится список всех функций пакета, а если поставить знак ":",
то этот список не выдается.
> with(linalg): – присоединение пакета функций линейной алгебры.
    3.2. Распространенные функции для действий над матрицами
    Задание матриц. Матрицы можно задать при помощи функции matrix.
> A1:=matrix([[5,4,2],[-2,1,-1],[1,6,3]]); – задает матрицу А1 размерности 3×3. Во
внутренних квадратных скобках задаются элементы строк.
                            ⎡ 5 4 2⎤
Результат на экране: A1 := ⎢− 2 1 − 1⎥
                            ⎢              ⎥
                            ⎢⎣ 1 6 3 ⎥⎦
> B1:=matrix([[a,b,c]]); – задает матрицу-строку (размерность 1×3).
Результат на экране: B1 := [a b c]
> C1:=matrix([[d], [s], [t]]); – задает матрицу-столбец (размерность 3×1).
                             ⎡d ⎤
Результат на экране: С1 := ⎢ s ⎥
                             ⎢ ⎥
                             ⎣⎢ t ⎦⎥
Матрицу-столбец можно задать функцией vector:
> C1:=vector([d,s,t]); Результат на экране: C1 := [d, s, t]
    Матрицу размерности mхn можно задать, указав размерность как аргумент
функции matrix, в этом случае не нужны внутренние квадратные скобки:
matrix(m, n, [x, y, ... , z]) (в квадратных скобках перечисляются построчно все
элементы матрицы). Например,
> A1:=matrix(3, 3, [5, 4, 2, -2, 1, -1, 1, 6, 3]); C1:=matrix(3, 1, [d, s, t]);
                                ⎡ 5 4 2⎤                    ⎡d ⎤
                                ⎢
Результат на экране: A1 := − 2 1 − 1         ⎥        С1 := ⎢ s ⎥
                                ⎢            ⎥              ⎢ ⎥
                                ⎢⎣ 1 6 3 ⎥⎦                 ⎢⎣ t ⎥⎦
     Умножение матрицы А размерности m×k на матрицу В размерности k×n
можно выполнить двумя способами: multiply(A,B); или evalm(A &* B); (здесь &*
– знак умножения матриц).
     Для примера умножим матрицы А1 и С1.
> M1:=multiply(A1,C1)=evalm(A1 &* C1);
                                ⎡5d + 4s + 2t ⎤ ⎡5d + 4 s + 2t ⎤
Результат на экране:     M 1 := ⎢ − 2d + s − t ⎥ = ⎢ − 2d + s − t ⎥
                                ⎢                ⎥ ⎢               ⎥
                                ⎢⎣ d + 6 s + 3t ⎥⎦ ⎢⎣ d + 6s + 3t ⎥⎦
     Функция det(A) вычисляет определитель квадратной матрицы.
> det(A1); – вычисляет определитель квадратной матрицы A1.
Результат на экране: 39