Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Описание пакета LinearAlgebra






В Maple имеется пакет LinearAlgebra, ориентированный на решение задач линейной (матричной) алгебры. Он загружается соответствующей командой:

[> with(LinearAlgebra);

После выполнения этих команд система выводит на экран список процедур и функций, которыми располагает пакет LinearAlgebra.

Пакет LinearAlgebra является более мощным и совершенным по сравнению с linalg (в ранних версиях программы). Он предназначен для работы с матрицами и векторами больших размеров. Самым простым образом матрицу размером в пакете LinearAlgebra можно сформировать при помощи команды

[> Matrix(m, n, [[a[1, 1], …, a[1, n]], …, [a[m, 1], …, a[m, n]]]);

Приведем в табл. 3.1 назначение наиболее часто применимых процедур и функций пакета LinearAlgebra. Более полную информацию о каждой процедуре или функции можно узнать в справке, или набрав команду

[> help(имя_процедуры);

Таблица 3.1.

Название процедуры, функции Назначение процедуры, функции
Basis Определяет базис для векторного пространства, заданного системой векторов
CharacteristicMatrix Создает для квадратной матрицы ее характеристическую матрицу
CharacteristicPolynomial Создает для квадратной матрицы ее характеристический многочлен
Determinant Вычисляет для квадратной матрицы ее определитель
DiagonalMatrix Создает диагональную матрицу
Eigenvalues Вычисляет для квадратной матрицы ее собственные значения (собственные числа)
Eigenvectors Вычисляет для квадратной матрицы ее собственные векторы (рекомендуется использовать вместе с процедурой Eigenvalues)
LinearSolve Решает систему линейных алгебраических уравнений (СЛАУ) в матричной форме
MatrixAdd Процедура сложения двух матриц
Matrixlnverse Процедура нахождения обратной матрицы
MatrixMatrixMultiply Процедура произведения двух матриц
MatrixNorm Функция вычисления нормы матрицы
MatrixScalarMultiply Процедура умножения матрицы на скаляр
MatrixVectorMultiply Процедура умножения матрицы на вектор
Minor Вычисляет минор матрицы
Normalize Нормализует вектор
NullSpace Возвращает нуль-пространство (ядро) матрицы
Rank Вычисляет ранг матрицы
SylvesterMatrix Конструирует матрицу Сильвестра из многочленов
Transpose Вычисляет матрицу, транспонированную к данной

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

Пример 3.1. Исследовать СЛАУ с параметром (СЛАУ задана своей расширенной матрицей) и решить в каждом случае:

.

Ниже приведен текст рабочего листа по решению данной задачи (с описаниями по ходу выполнения команд).

[> restart; with(LinearAlgebra): /задаем вектор-столбцы основной матрицы/ [> a1: =Vector([2, 1, 3]); a2: =Vector([lambda+1, lambda, -3]); a3: =Vector([lambda-2, -3, -7]); /задаем основную матрицу и вектор-столбец свободных коэффициентов системы/ [> A: =Matrix(3, 3, [a1, a2, a3]); B: =Vector([3, lambda+2, 3]); /выводим определитель основной матрицы системы, решение системы в матричном виде (при значениях, в которых определитель основной матрицы не равен нулю)/ [> Delta: =Determinant(A); X: =LinearSolve(A, B); /вычисляем значения параметра , при котором определитель обращается в нуль/ [> Korni: =solve(Determinant(A)=0); [> lambda: =Korni[1]; X: =LinearSolve(A, B); Error, (in LinearAlgebra: -LA_Main: -LinearSolve) inconsistent system /Maple предупреждает, что СЛАУ при данном значении параметра несовместна/ [> lambda: =Korni[2]; X: =LinearSolve(A, B); /СЛАУ имеет бесконечное множество решений при этом значении параметра /

Пример 3.2. Найти собственные числа и соответственные собственные векторы матрицы

.

Текст рабочего листа по решению задачи имеет вид:

 

 

[> restart; with(LinearAlgebra): [> A: =Matrix(3, 3, [[3, -6, 9], [1, -2, 3], [-3, 6, -9]]); /задание исходной матрицы/ [> Add(A, -lambda): p(lambda): =Determinant(Add(A, -lambda)); /составление характеристического многочлена матрицы/ [> solve(p(lambda)=0, {lambda}); /вычисление собственных чисел матрицы/ [> v: =Eigenvalues(A); F: =Eigenvectors(A); /вычисление собственных чисел и собственных векторов матрицы с помощью процедуры Eigenvectors: первый столбец v – собственные числа матрицы, вторая матрица F содержит соответствующие собственные векторы матрицы, они расположены по столбцам!)/

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.