ВУЗ:
Составители:
Рубрика:
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
Страницы
- « первая
- ‹ предыдущая
- …
- 8
- 9
- 10
- 11
- 12
- …
- следующая ›
- последняя »
