ВУЗ:
Составители:
Рубрика:
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
- …
- следующая ›
- последняя »