Работа с массивами
Основная часть команд для решения задач линейной алгебры содержится в библиотеке linalg. Поэтому перед решением задач с матрицами и векторами следует загрузить эту библиотеку командой with(linalg).
Способы задания векторов
Для определения вектора в Maple используется команда vector([x1,x2,…,xn]), где в квадратных скобках через запятую указываются координаты вектора. Например:
> x:=vector([1,0,0]);
x:=[1, 0, 0]
Координату уже определенного вектора x можно получить в строке вывода, если ввести команду x[i] , где i номер координаты. Например, первую координату заданного в предыдущем примере вектора можно вывести так:
> x[1];
1
Сложение векторов
Сложить два вектора a и b можно с помощью двух команд:
1) evalm(a+b);
2) matadd(a,b).
Скалярное, векторное произведение векторов и угол между векторами
Скалярное произведение двух векторов вычисляется командой dotprod(a,b).
Векторное произведение двух векторов вычисляется командой crossprod(a,b).
Угол между двумя векторами a и b вычисляется с помощью команды angle(a,b).
Норма вектора
Норму (длину) вектора , которая равна , можно вычислить с помощью команды norm(а,2).
Можно нормировать вектор а с помощью команды normalize(a), в результате выполнения которой будет получен вектор единичной длины .
Примеры
1. Даны два вектора: и . Найти и угол между a и b. Для решения этой задачи наберите:
> with(linalg):
> a:=([2,1,3,2]); b:=([1,2,-2,1]);
a:=[2,1,3,2]
b:=[1,2,-2,1]
> dotprod(a,b);
0
> phi=angle(a,b);
2. Найти векторное произведение , а затем скалярное произведение , где , .
> restart; with(linalg):
> a:=([2,-2,1]); b:=([2,3,6]);
a:=[2, 2,1]
b:=[2,3,6]
> c:=crossprod(a,b);
c:=[ 15, 10,10]
> dotprod(a,c);
0
3. Найти норму вектора .
> restart; with(linalg):
> a:=vector([1,2,3,4,5,6]): norm(a,2);
Определение матрицы
Для определения матрицы в Maple можно использовать команду matrix(n, m, [[a11,a12,…,a1n], [a21,a22,…,a2m],…, [an1,an2,…,anm]]), где n число строк, m – число столбцов в матрице. Эти числа задавать необязательно, а достаточно перечислить элементы матрицы построчно в квадратных скобках через запятую. Например:
> A:=matrix([[1,2,3],[-3,-2,-1]]);
В Maple матрицы специального вида можно генерировать с помощью дополнительных команд. В частности диагональную матрицу можно получить командой diag. Например:
> J:=diag(1,2,3);
Генерировать матрицу можно с помощью функции f(i, j) от переменных i, j – индексов матрицы: matrix(n, m, f), где где n - число строк, m – число столбцов. Например:
> f:=(i, j)->x^i*y^j;
> A:=matrix(2,3,f);
Число строк в матрице А можно определить с помощью команды rowdim(A), а число столбцов – с помощью команды coldim(A).
Арифметические операции с матрицами
Сложение двух матриц одинаковой размерности осуществляется теми же командами, что и сложение векторов: evalm(A+B) или matadd(A,B). Произведение двух матриц может быть найдено с помощью двух команд:
evalm(A&*B);
multiply(A,B).
В качестве второго аргумента в командах, вычисляющих произведение, можно указывать вектор, например:
> A:=matrix([[1,0],[0,-1]]);
> B:=matrix([[-5,1], [7,4]]);
> v:=vector([2,4]);
> multiply(A,v);
> multiply(A,B);
> matadd(A,B);
Команда evalm позволяет также прибавлять к матрице число и умножать матрицу на число. Например:
> С:=matrix([[1,1],[2,3]]):
> evalm(2+3*С);
Определители, миноры и алгебраические дополнения. Ранг и след матрицы.
Определитель матрицы А вычисляется командой det(A). Команда minor(A,i,j) возвращает матрицу, полученную из исходной матрицы А вычеркиванием i-ой строки и j-ого столбца. Минор Mij элемента aij матрицы А можно вычислить командой minor(A,i,j). Ранг матрицы А вычисляется командой rank(A). След матрицы А, равный сумме ее диагональных элементов, вычисляется командой trace(A).
> A:=matrix([[4,0,5],[0,1,-6],[3,0,4]]);
> det(A);
1
> minor(А,3,2);
> det(%);
-24
> trace(A);
9
Обратная и транспонированная матрицы
Обратную матрицу А 1 , такую что А 1А=АА 1=Е, где Е единичная матрица, можно вычислить двумя способами:
evalm(1/A);
inverse(A).
Транспонирование матрицы А – это обмен местами строк и столбцов. Полученная в результате этого матрица называется транспонированной и обозначается А'. Транспонированную матрицу А' можно вычислить командой transpose(A).
Например, используя заданную в предыдущем пункте матрицу А, найдем обратную ей и транспонированную:
> inverse(A);
> multiply(A,%);
> transpose(A);
-
Содержание
- Содержание
- Введение
- Лекция 1. Введение в курс. Классификация компьютерных информационных технологий
- Предмет дисциплины. Понятие «компьютерные информационные технологии»
- Технологическая схема обработки информации
- Базовые и специальные информационные технологии
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 2. Информационные ресурсы автоматизированных систем обработки экономической информации
- Понятие «информационные ресурсы». Классификация
- Политика Республики Беларусь в области формирования информационных ресурсов
- Информационные услуги, режимы их предоставления
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 3. Техническое обеспечение компьютерных информационных технологий
- Классификация эвм
- Процессоры
- Устройства автоматизации ввода данных
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 4. Сетевые информационные технологии. Компьютерные сети: основные понятия и принципы построения
- Компьютерные сети: понятие, классификация
- Топология компьютерной сети
- Модель коммутационной сети
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 5. Локальные вычислительные сети
- 1. Оборудование лвс
- 2. Методы доступа к сети
- 3. Стандарты локальных сетей
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 6. Сетевые информационные технологии. Сетевые модели
- Эталонная модель osi
- Конвергенция компьютерных и телекоммуникационных сетей
- Корпоративные сети
- Преимущества, которые дает использование сетей
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 7. Глобальные компьютерные сети
- 1. Глобальная сеть Интернет, протоколы tcp/ip
- 2. Адресация компьютеров в сети
- 3. Услуги Интернет
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 8. Сетевые ит. Интернет и бизнес
- Задачи бизнеса в Интернете
- Классификация электронного бизнеса
- 3. Правовые аспекты электронного бизнеса
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 9. Сетевые информационные технологии. Электронные платежные системы
- Виды платежных систем
- Услуги платежных систем в Беларуси
- Формирование сетевой экономики
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 10. Технологии обеспечения безопасности информационных систем
- 1. Понятие безопасности информационных систем
- 2. Угрозы информационно безопасности
- 3. Методы и средства защиты информации
- Физические и юридические лица имеют право
- Особенности обеспечения безопасности в компьютерных сетях
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 11. Программное обеспечение компьютерных информационных технологий. Системное по
- Модели разработки и распространения по
- Виды лицензий на использование по
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 12. Программное обеспечение компьютерных информационных технологий. Прикладное по
- Технологии обработки информации. Офисные пакеты
- Технологии автоматизированного ввода документа (осr-системы)
- Технологии автоматизации перевода текстов
- Технологии организации рабочего места
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 13. Технологии искусственного интеллекта
- Понятие искусственного интеллекта
- 2. Области применения ии
- Понятие экспертной системы
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 14. Пакеты для математической обработки данных. Maple. Основы работы
- Компоненты экрана, справочная система Maple
- Вычисления в Maple
- Числа и константы
- Стандартные функции
- Преобразование математических выражений
- Решение уравнений
- Численное решение уравнений
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 15. Пакеты для математической обработки данных.Maple. Матрицы и графики
- Работа с массивами
- Графики и анимация
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция 16. Технологии и инструментальные средства программирования. Основы алгоритмизации
- 1. Понятие алгоритма
- 2. Типы алгоритмических процессов
- Повторять:
- 3. Способы записи алгоритмов
- Контрольные вопросы
- Литература
- Основные понятия
- Лекция №17. Технологии и инструментальные средства программирования. Языки программирования
- Технологии разработки программных комплексов
- Классификация языков программирования
- Инструментальные средства программирования
- Контрольные вопросы
- Литература
- Основные понятия