|
Примеры
матричных операций с применением пакета LinearAlgebra
Применение алгоритмов NAG особенно
эффективно в том случае, когда используется встроенная в современные микропроцессоры
арифметика чисел с плавающей запятой. С помощью специального флага такую арифметику
можно отключать или включать:
>
UseHardwareFloats := false; # use software floats
UseHardwareFloats
:=false
> UseHardwareFloats
:= true: # default behaviour
UseHardwareFloats
:=true
Матрицы в новом пакете линейной
алгебры могут задаваться в угловых скобках, как показано ниже:
После этого можно выполнять с ними
типовые матричные операции. Например, можно инвертировать (обращать) матрицы:
Обратите внимание, что Maple 7 теперь
выдает информационные сообщения о новых условиях реализации операции инвертирования
матриц с вещественными элементами, и в частности об использовании алгоритмов
NAG и арифметики, встроенной в сопроцессор. (
Следующий пример иллюстрирует создание
двух случайных матриц Ml и М2 и затем их умножение:
Параметр inplace
в функции умножения обеспечивает помещение результата умножения матриц на место
исходной матрицы Ml — излюбленный прием создателей быстрых матричных алгоритмов
NAG. Поскольку матрицы Ml и М2 за- -даны как случайные, то при повторении этого
примера результаты, естественно, будут иными, чем приведенные.
Следующий пример иллюстрирует проведение
хорошо известной операции/ LU-разложения над матрицей М, созданной функцией
Matrix:
Конечной целью большинства матричных
операций является решение систем линейных уравнений. Для этого пакет
LinearAlgebra предлагает великое множество методов и средств их реализации.
Мы ограничимся простым примером одновременного решения сразу трех систем уравнений.
Дабы не загромождать книгу массивными выражениями, ограничимся решением систем
из двух линейных уравнений, матрица коэффициентов у которых одна, а векторы
свободных членов разные. Ниже показан пример решения такой системы:
На этом, учитывая ограниченный объем
книги, мы завершаем обзор пакета LmearAlgebra. Читатель,
познающий или знающий методы линейной алгебры, может опробовать в работе любые
функции этого пакета самостоятельно или познакомиться со множеством примеров,
размещенных в справочной системе Maple 7. Возможности пакетов
linalg и LinearAlgebra удовлетворят самых требовательных
специалистов в этой области математики.
|