Чтение онлайн

на главную

Жанры

Maple 9.5/10 в математике, физике и образовании

Дьяконов Владимир Павлович

Шрифт:

Разложение Холецкого А=L∙LT применяется к симметричной матрице А, при этом L — треугольная матрица.

Сингулярное разложение матрицы А размера M×N (М×N) определяется выражением А=U∙s∙VT, где U и V — ортогональные матрицы размера N×N и М×M, соответственно, a s — диагональная матрица

с сингулярными числами матрицы А на диагонали.

6.1.4. Элементы векторов и матриц

Элементы векторов и матриц в Maple являются индексированными переменными, то есть место каждого элемента вектора определяется его индексом, а у матрицы — двумя индексами. Обычно их обобщенно обозначают как i (номер строки матрицы или порядковый номер элемента вектора) и j (номер столбца матрицы). Допустимы операции вызова нужного элемента и присваивания ему нового значения:

V[i] — вызов i-го элемента вектора V;

M[i,j] — вызов элемента матрицы М, расположенного на i– й строке в j-м столбце.

V[i]:=x — присваивание нового значения х i-му элементу вектора V;

M[i,j]:=x — присваивание нового значения х элементу матрицы М.

6.1.5. Преобразование списков в векторы и матрицы

Прежде всего, надо обратить внимание на то, что векторы и матрицы, хотя и похожи на списки, но не полностью отождествляются с ними. В этом можно убедиться с помощью следующих примеров (файл vmop), в которых функция type используется для контроля типов множественных объектов (векторов и матриц):

> М1:=[1,2,3,4];

M1 := [1, 2, 3, 4]

> type(M1,vector);

false

> V:=convert(M1,vector);

V := [1, 2, 3, 4]

> type(V,vector);

true

> М2:=[[1,2],[3,4]];

М2 := [[1,2], [3, 4]]

> type(М2,matrix);

false

> M:=convert(M2,matrix);

> type(M,matrix);

true

Таким образом, используя функцию преобразования данных convert, можно преобразовывать одномерные списки в векторы, а двумерные — в матрицы. Функция type используется в следующих формах:

type(V,vector) — тестирует аргумент V и возвращает true, если V — вектор, и false в ином случае;

type(M.matrix) — тестирует аргумент М и возвращает true, если М — матрица, и false в ином случае.

Здесь параметры vector и matrix используются для указания того, какой тип объекта проверяется. Обратите внимание на то, что матрицы отображаются иначе, чем двумерные списки — без двойных квадратных скобок. Отображение вектора подобно отображению одномерного списка, поэтому здесь особенно важен контроль типов данных.

6.1.6. Операции с векторами

Важное достоинство систем компьютерной алгебры, к которым относится и Maple, заключается в возможности выполнения аналитических (символьных) операций над векторами и матрицами. Перед проведением

символьных операций с векторами и матрицами рекомендуется очистить память от предшествующих определений с помощью команды restart. Если какие-то элементы векторов или матриц были ранее определены, это может привести к очень сильным искажениям вида конечных результатов. Очистка памяти устраняет возможность ошибок такого рода.

Приведем примеры операций над векторами (файл vectop):

> V:=array(1..4,[1,2,3,4]);

V:= [1, 2, 3, 4]

> [V[1], V[2], V[4]];

[1, 2, 4]

> V[1]:=a: V[3]:=b:

> evalm(V);

[a, 2, b, 4]

> evalm(V+2);

[a + 2, 4, b + 2, 6]

> evalm(2*V);

[2 a, 4, 2 b, 8]

> evalm(V**V);

[a, 2, b, 4]V

> evalm(a*V);

[a², 2 a, a b, 4 a]

В этих примерах используется функция evalm(M), осуществляющая вычисление матрицы или вектора М.

6.1.7. Операции над матрицами с численными элементами

Над матрицами с численными элементами в Maple можно выполнять разнообразные операции. Ниже приведены основные из них:

> М:=array(1..2,1..2,[[1,2],[3,4]]);

> evalm(2*М);

> evalm(2+М);

> evalm(M^2);

> evalm(М^(-1));

> evalm(М-М);

0

> evalm(М+М);

> evalm(М*М);

> evalm(M/M);

1

> evalm(M^0);

1

Рекомендуется внимательно изучить эти примеры и попробовать свои силы в реализации простых матричных операций.

6.1.8. Символьные операции с матрицами

Одной из привлекательных возможностей СКА является возможность проведения символьных операций с матрицами. Ниже представлены примеры символьных операций, осуществляемых над квадратными матрицами одного размера в системе Maple:

Поделиться:
Популярные книги

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор